From 221b1edd928c8f2c38d03123478a242bc6992557 Mon Sep 17 00:00:00 2001 From: Hare Date: Sat, 23 May 2026 09:13:57 +0900 Subject: [PATCH] chore: complete tui-pod-restore-picker ticket --- TODO.md | 1 - tickets/tui-pod-restore-picker.md | 73 ------------------------------- 2 files changed, 74 deletions(-) delete mode 100644 tickets/tui-pod-restore-picker.md diff --git a/TODO.md b/TODO.md index c0eab89b..121a1aa0 100644 --- a/TODO.md +++ b/TODO.md @@ -15,7 +15,6 @@ - E2E テストハーネス(`tests/e2e/`、opt-in) → [tickets/e2e-harness.md](tickets/e2e-harness.md) - TUI 拡充 - TUI から任意タイミングで Compact を発火する system command → [tickets/tui-system-command-compact.md](tickets/tui-system-command-compact.md) - - Session 直接 resume を廃止し Pod 単位の attach / restore に寄せる → [tickets/tui-pod-restore-picker.md](tickets/tui-pod-restore-picker.md) - user manifest env override 時の spawn scope overlay 前提ズレ → [tickets/tui-user-manifest-env-overlay.md](tickets/tui-user-manifest-env-overlay.md) - Run 中の入力キューイング → [tickets/tui-input-queue.md](tickets/tui-input-queue.md) - ユーザーマニフェストのモデル設定 wizard → [tickets/tui-user-model-setup.md](tickets/tui-user-model-setup.md) diff --git a/tickets/tui-pod-restore-picker.md b/tickets/tui-pod-restore-picker.md deleted file mode 100644 index e70e6bb8..00000000 --- a/tickets/tui-pod-restore-picker.md +++ /dev/null @@ -1,73 +0,0 @@ -# TUI: Session 直接 resume を廃止し Pod 単位の attach / restore に寄せる - -## 背景 - -Pod state 永続化と `--pod ` resume が入ったことで、TUI が `SessionId` / `SegmentId` を直接選んで復元する必要は薄くなった。現行の `tui -r` は session picker を開き、選択した `SegmentId` から `pod --session ` 相当の resume を行うが、これは Pod 単位の運用とズレる。 - -今後の TUI は、通常操作では Session を直接触らず、Pod 名 / Pod state を入口にする。 - -## 方針 - -- `tui ` を Pod 名指定の主導線にする。 - - 既に同名 Pod が live なら attach する。 - - live でなければ、Pod state があれば restore する。 - - Pod state がなければ、新規 Pod として作成する。 -- `tui -r` / `tui --resume` は Session picker ではなく Pod picker にする。 - - 稼働中 Pod と停止済み Pod state を一覧表示する。 - - live Pod は attach、停止済み Pod は restore する。 - - 最終アクティブ時刻の降順で sort する。 -- `tui` 引数なしの場合のみ、現行の「Pod 名を入力して新規 spawn」導線を残す。 - - 既存 name dialog は新規作成用として維持する。 -- `--session ` は互換用に残すか、非推奨扱いにする。 - - 少なくとも TUI の通常導線からは外す。 - - 完全削除する場合は別途明示判断する。 - -## Pod picker の表示要件 - -各 row には最低限以下を表示する。 - -- Pod name -- live / stopped / corrupt などの状態 -- 最終アクティブ時刻 -- active `SessionId` / `SegmentId` の短縮表示(debug 用。主表示は Pod 名) -- preview text(取得できる場合のみ) - -最終アクティブ時刻は、Pod state に持つか、active segment log の最新 timestamp から算出する。実装時に既存 metadata との整合を確認して決める。 - -## 要件 - -- `tui ` が以下を満たす。 - - live socket reachable なら attach。 - - socket が無い / 到達不能で Pod state があるなら `pod --pod ` 経路で restore。 - - Pod state が無ければ同名の新規 Pod を spawn。 -- `tui -r` が Pod picker を表示し、選択した Pod に attach / restore できる。 -- `tui -r` は Session 一覧ではなく Pod 一覧を表示する。 -- `tui` 引数なしは新規 Pod 名入力 dialog のままにする。 -- TUI の通常導線では Session / Segment を直接選ばせない。 -- 既存 `--pod ` / `--session ` の CLI 互換を壊さない。 - -## 完了条件 - -- live Pod を `tui ` で attach できる。 -- stopped Pod state を `tui ` で restore できる。 -- unknown Pod name を `tui ` で新規作成できる。 -- `tui -r` で live / stopped Pod が最終アクティブ時刻順に出る。 -- `tui -r` で選択した live Pod に attach できる。 -- `tui -r` で選択した stopped Pod を restore できる。 -- TUI の picker / spawn tests を更新する。 -- `cargo fmt --check` -- `cargo check --workspace` -- `cargo test -p tui -p pod -p session-store` - -## 範囲外 - -- LLM tool としての任意 Pod 管理 API。 -- Pod state の可視性 / capability 制御。 -- fork tree 可視化。 -- session / segment 単位の新しい TUI UX。 -- transcript 全文検索。 - -## 関連 - -- `tickets/pod-discovery-restore-tools.md` -- Pod state backend / lifecycle write-through / Pod 名 resume