LTsite
ホーム
作成
著者一覧
ログイン
検索
論理削除(ゴミ箱)機能 要件定義
LOGA Protocol
30-仕様書
Public
最終更新: 2025/08/13
バージョン履歴 (2)
Ver. 最新 (25/08/13 12:22)
Ver. 2 (25/08/08 13:11)
×
Ver. 1 (25/08/08 13:02)
×
選択した2つを比較
項番を表示
表示形式:
オーガニックツリー
ロジックツリー
アイデアボード
アウトライン ※開発中
SUMMARY
×
--- title: '論理削除(ゴミ箱)機能 要件定義' slug: feature-requirements-trash status: public category: specification author: loga-protocol purpose: ユーザーが誤ってstxtを削除してしまった場合に、自力で復元できる安全装置を提供し、サービスの信頼性とユーザー体験を向上させる。 summary: 削除は、終わりじゃない。これは、ユーザーの「しまった!」を救うための「ゴミ箱」機能の完全設計図。stxtコンテンツにセカンドチャンスを与え、安心して思考を続けられる環境を構築する。 id: 20250807190445-68947a3dd4cf53.27696882 created_at: '2025-08-07 19:04:45' updated_at: '2025-08-13 12:22:47' image: /syntext-assets/images/cards/20250807190445-68947a3dd4cf53.27696882.jpg --- 0. (idea) **論理削除(ゴミ箱)機能 要件定義** 🗑️ 1. (s) (why) 1. 目的とゴール 11. (g) データ損失の防止: ユーザーによる偶発的な完全削除を防ぐ。 12. (g) ユーザーの安心感向上: いつでも元に戻せるという安心感を提供し、より積極的なコンテンツ作成を促す。 13. (g) セルフサービスでの復元: 管理者の手を煩わせることなく、ユーザー自身でデータを復元できる仕組みを構築する。 2. (s) (what) 2. 機能要件 21. (s) DBスキーマの変更 211. (action) `stxt_contents`テーブルに、`status`カラムのenum値として `'trashed'` を追加する。 212. (action) `stxt_contents`テーブルに、`trashed_at` (DATETIME型, NULL許容) カラムを追加する。 22. (s) 削除プロセスの変更 221. (s) ユーザーがUIから「削除」を実行した際、レコードを物理削除(`DELETE`)するのではなく、`status`を`'trashed'`に、`trashed_at`を現在日時に更新(`UPDATE`)する。 23. (s) ゴミ箱UIの実装 231. (s) ダッシュボードなどに「ゴミ箱」へのリンクを設置する。 232. (s) 「ゴミ箱」ページでは、`status`が`'trashed'`のstxtコンテンツ一覧を表示する。 233. (s) 各stxtコンテンツに対して、「復元」と「完全に削除」の2つのアクションを用意する。 2331. (v) 復元: `status`を`'private'`に戻し、`trashed_at`を`NULL`にする。 2332. (x) 完全に削除: レコードを物理削除し、関連するstxtファイルもサーバーから削除する。 24. (s) 自動クリーンアップ機能 241. (s) サーバーのcronジョブとして、1日に1回実行されるPHPスクリプトを作成する。 242. (s) そのスクリプトは、`trashed_at`が10日以上前のレコードを自動で「完全に削除」する。 3. (s) (scope) 3. スコープ外 31. (x) 削除されたバージョンの復元機能。 32. (x) 複数アイテムの一括復元・削除機能。
×
×
詳細ページを開く