From 71a39002fbd61d7b18bf92a90afa79663fe3456c Mon Sep 17 00:00:00 2001 From: Hare Date: Tue, 23 Jun 2026 16:24:24 +0900 Subject: [PATCH] ticket: close dashboard selection --- .yoi/tickets/00001KVSKJ0EA/item.md | 4 +- .yoi/tickets/00001KVSKJ0EA/resolution.md | 26 ++++++++ .yoi/tickets/00001KVSKJ0EA/thread.md | 77 ++++++++++++++++++++++++ 3 files changed, 105 insertions(+), 2 deletions(-) create mode 100644 .yoi/tickets/00001KVSKJ0EA/resolution.md diff --git a/.yoi/tickets/00001KVSKJ0EA/item.md b/.yoi/tickets/00001KVSKJ0EA/item.md index 79581b22..1ba50f39 100644 --- a/.yoi/tickets/00001KVSKJ0EA/item.md +++ b/.yoi/tickets/00001KVSKJ0EA/item.md @@ -1,8 +1,8 @@ --- title: 'Dashboard reload と初期表示で row を自動選択しない' -state: 'inprogress' +state: 'closed' created_at: '2026-06-23T06:44:20Z' -updated_at: '2026-06-23T07:23:02Z' +updated_at: '2026-06-23T07:24:20Z' assignee: null readiness: 'implementation_ready' risk_flags: ['tui-ux', 'panel-selection', 'reload-state'] diff --git a/.yoi/tickets/00001KVSKJ0EA/resolution.md b/.yoi/tickets/00001KVSKJ0EA/resolution.md new file mode 100644 index 00000000..b7a3b8b7 --- /dev/null +++ b/.yoi/tickets/00001KVSKJ0EA/resolution.md @@ -0,0 +1,26 @@ +Dashboard の row selection を明示的 user action の結果として扱うように修正した。 + +完了内容: +- 初期表示で visible row があっても自動選択しない。 +- reload / snapshot reconciliation で `selected_row = None` を勝手に selection へ戻さない。 +- `Esc` による no-selection が reload を跨いで維持される。 +- 選択中 row が消えた場合は `None` へ安全に落とす。 +- keyboard navigation では no-selection から明示的に selection を作成できる。 +- `list.selected_name` は実際の Pod row selection と同期し、no-selection / non-Pod selection では clear する。 +- no-selection + `TicketIntake` composer submit が既存 Ticket refinement ではなく global/new Intake route へ進むことを focused test で確認した。 + +統合: +- Implementation: `5c242d96 fix: keep dashboard row selection explicit` +- Merge: `58904c44 merge: dashboard no auto selection` + +検証: +- Reviewer approval: `yoi-reviewer-00001KVSKJ0EA-r1` +- `cargo fmt --check`: passed +- `git diff --check HEAD^1..HEAD`: passed +- `cargo test -q -p tui workspace_panel`: passed (`27 passed`) +- `cargo test -q -p tui dashboard`: passed (`111 passed`) +- reviewer 側追加確認 `cargo test -q -p tui`: passed (`372 passed`) +- `cargo run -q -p yoi -- ticket doctor`: passed (`doctor: ok`) + +残作業: +- なし。 \ No newline at end of file diff --git a/.yoi/tickets/00001KVSKJ0EA/thread.md b/.yoi/tickets/00001KVSKJ0EA/thread.md index d9115721..71c44bc6 100644 --- a/.yoi/tickets/00001KVSKJ0EA/thread.md +++ b/.yoi/tickets/00001KVSKJ0EA/thread.md @@ -234,3 +234,80 @@ Worktree status: - clean at `5c242d96`。 --- + + + +## Implementation report + +Merge and validation completed. + +Merged implementation: +- Merge commit: `58904c44 merge: dashboard no auto selection` +- Implementation commit: `5c242d96 fix: keep dashboard row selection explicit` + +Post-merge validation in orchestration worktree: +- `cargo fmt --check`: passed +- `git diff --check HEAD^1..HEAD`: passed +- `cargo test -q -p tui workspace_panel`: passed (`27 passed`) +- `cargo test -q -p tui dashboard`: passed (`111 passed`) +- `cargo run -q -p yoi -- ticket doctor`: passed (`doctor: ok`) + +Outcome: +- 初期表示と reload/snapshot reconciliation が row selection を自動生成しなくなった。 +- `Esc` 後の no-selection は reload を跨いで維持される。 +- 明示的 keyboard navigation による selection 作成は維持された。 +- `TicketIntake` composer の no-selection submit は global/new Intake route になる。 +- stale selection は安全に `None` へ落ちる。 +- Ticket lifecycle / row action semantics は変更していない。 + +--- + + + +## State changed + +実装は reviewer approval 後に orchestration worktree へ merge され、post-merge validation も通過したため done とする。 + +--- + + + +## State changed + +Ticket を closed にしました。 + + +--- + + + +## 完了 + +Dashboard の row selection を明示的 user action の結果として扱うように修正した。 + +完了内容: +- 初期表示で visible row があっても自動選択しない。 +- reload / snapshot reconciliation で `selected_row = None` を勝手に selection へ戻さない。 +- `Esc` による no-selection が reload を跨いで維持される。 +- 選択中 row が消えた場合は `None` へ安全に落とす。 +- keyboard navigation では no-selection から明示的に selection を作成できる。 +- `list.selected_name` は実際の Pod row selection と同期し、no-selection / non-Pod selection では clear する。 +- no-selection + `TicketIntake` composer submit が既存 Ticket refinement ではなく global/new Intake route へ進むことを focused test で確認した。 + +統合: +- Implementation: `5c242d96 fix: keep dashboard row selection explicit` +- Merge: `58904c44 merge: dashboard no auto selection` + +検証: +- Reviewer approval: `yoi-reviewer-00001KVSKJ0EA-r1` +- `cargo fmt --check`: passed +- `git diff --check HEAD^1..HEAD`: passed +- `cargo test -q -p tui workspace_panel`: passed (`27 passed`) +- `cargo test -q -p tui dashboard`: passed (`111 passed`) +- reviewer 側追加確認 `cargo test -q -p tui`: passed (`372 passed`) +- `cargo run -q -p yoi -- ticket doctor`: passed (`doctor: ok`) + +残作業: +- なし。 + +---