From 63449a8c26ae10240aa12b515d3964905b87874e Mon Sep 17 00:00:00 2001 From: Hare Date: Fri, 19 Jun 2026 00:40:49 +0900 Subject: [PATCH] ticket: close panel workspace pod filter --- .yoi/tickets/00001KVDH2E06/item.md | 4 +- .yoi/tickets/00001KVDH2E06/resolution.md | 40 +++++++ .yoi/tickets/00001KVDH2E06/thread.md | 137 +++++++++++++++++++++++ 3 files changed, 179 insertions(+), 2 deletions(-) create mode 100644 .yoi/tickets/00001KVDH2E06/resolution.md diff --git a/.yoi/tickets/00001KVDH2E06/item.md b/.yoi/tickets/00001KVDH2E06/item.md index dfcd7c39..65700645 100644 --- a/.yoi/tickets/00001KVDH2E06/item.md +++ b/.yoi/tickets/00001KVDH2E06/item.md @@ -1,8 +1,8 @@ --- title: 'Panel 表示を現在 workspace の Pod に限定する' -state: 'inprogress' +state: 'closed' created_at: '2026-06-18T14:09:59Z' -updated_at: '2026-06-18T15:37:52Z' +updated_at: '2026-06-18T15:40:38Z' assignee: null readiness: 'ready' risk_flags: ['panel', 'pod-metadata', 'workspace-boundary', 'runtime-observation'] diff --git a/.yoi/tickets/00001KVDH2E06/resolution.md b/.yoi/tickets/00001KVDH2E06/resolution.md new file mode 100644 index 00000000..ec2a12da --- /dev/null +++ b/.yoi/tickets/00001KVDH2E06/resolution.md @@ -0,0 +1,40 @@ +Ticket `00001KVDH2E06` is complete. + +Completed implementation: +- Normal `yoi panel` Pod rows and Pod action targets are filtered to the current runtime workspace using persisted Pod metadata / runtime workspace ownership. +- Added optional persisted `workspace_root` to `PodMetadata` and ensured normal metadata write-through persists it. +- Added `PodMetadataStore::set_active_with_workspace_root(...)` while keeping compatibility `set_active(...)` preserving existing workspace ownership. +- Workspace-external Pods are excluded from normal Panel rows/action targets. +- Unknown/corrupt/live-only metadata fail closed and are not treated as current workspace Pods. +- Current-workspace role-like Pods remain visible when persisted runtime workspace matches, independent of cwd/worktree differences. + +Reviewed / merged: +- Initial implementation: `3b634d66` (`tui: filter panel pods by workspace`) +- Persistence-boundary fix: `160c96ad` (`pod: persist metadata workspace root`) +- First review requested changes for missing persistence of `workspace_root` through the normal store writer path. +- Re-review approved with no remaining blockers. +- Orchestrator merge commit: `0ef36b4e` (`merge: panel workspace pod filter`) + +Validation in Orchestrator worktree: +- `cargo fmt --check` — passed +- `cargo check -p tui -p pod -p pod-store` — passed +- `cargo test -p pod metadata_writer_persists_workspace_root_through_store_update -- --nocapture` — passed +- `cargo test -p pod pod_metadata -- --nocapture` — passed +- `cargo test -p pod-store` — passed; 6 passed, 0 failed +- `cargo test -p tui workspace_panel -- --nocapture` — passed; 23 passed, 0 failed +- `cargo test -p tui pod_list -- --nocapture` — passed; 19 passed, 0 failed +- `git diff --check` — passed + +Known validation debt: +- Full `cargo test -p tui` still has three pre-existing/unrelated failures reproduced on the Orchestrator branch before this implementation was merged: + - `multi_pod::tests::orchestrator_launch_context_uses_orchestration_root_for_runtime_workspace` + - `spawn::tests::profile_choices_use_project_registry_default` + - `spawn::tests::profile_choices_include_builtin_and_project_default_marker` + +Cleanup: +- Stopped Coder Pod `yoi-coder-00001KVDH2E06`. +- Stopped Reviewer Pod `yoi-reviewer-00001KVDH2E06-r2`. +- Removed child worktree `/home/hare/Projects/yoi/.worktree/00001KVDH2E06-panel-current-workspace-pods`. +- Deleted merged branch `impl/00001KVDH2E06-panel-current-workspace-pods`. + +Root/original workspace was not read/written/merged/validated for this Ticket, per Panel Queue instruction. The completed work is integrated on the Orchestrator branch. \ No newline at end of file diff --git a/.yoi/tickets/00001KVDH2E06/thread.md b/.yoi/tickets/00001KVDH2E06/thread.md index f7e9b041..9fe79725 100644 --- a/.yoi/tickets/00001KVDH2E06/thread.md +++ b/.yoi/tickets/00001KVDH2E06/thread.md @@ -430,3 +430,140 @@ Conclusion: - Implementation satisfies the recorded Ticket acceptance criteria and is ready for merge/validation in the Orchestrator worktree. --- + + + +## Implementation report + +Merge / validation report: + +Implementation branch `impl/00001KVDH2E06-panel-current-workspace-pods` を Orchestrator worktree の `orchestration` branch に merge した。 + +Merge: +- merge commit: `0ef36b4e` — `merge: panel workspace pod filter` +- implementation commits: + - `3b634d66` — `tui: filter panel pods by workspace` + - `160c96ad` — `pod: persist metadata workspace root` +- changed files: + - `crates/pod-store/src/lib.rs` + - `crates/pod/src/discovery.rs` + - `crates/pod/src/pod.rs` + - `crates/pod/src/ticket_event_notify.rs` + - `crates/tui/src/multi_pod.rs` + - `crates/tui/src/pod_list.rs` + - `crates/tui/src/workspace_panel.rs` + +Validation in Orchestrator worktree: +- `cargo fmt --check` — passed +- `cargo check -p tui -p pod -p pod-store` — passed +- `cargo test -p pod metadata_writer_persists_workspace_root_through_store_update -- --nocapture` — passed +- `cargo test -p pod pod_metadata -- --nocapture` — passed +- `cargo test -p pod-store` — passed; 6 passed, 0 failed +- `cargo test -p tui workspace_panel -- --nocapture` — passed; 23 passed, 0 failed +- `cargo test -p tui pod_list -- --nocapture` — passed; 19 passed, 0 failed +- `git diff --check` — passed + +Review: +- First review returned `request_changes` for missing persistence of `workspace_root` in the normal metadata write-through path. +- Coder fixed the persistence boundary and added a targeted `pod_metadata_writer_for_store` + `FsPodStore` test. +- Re-review `yoi-reviewer-00001KVDH2E06-r2` returned `approve` with no blockers. + +Known validation debt: +- Full `cargo test -p tui` has three failures that were reproduced on the Orchestrator branch before this branch was merged and are treated as pre-existing/unrelated for this Ticket: + - `multi_pod::tests::orchestrator_launch_context_uses_orchestration_root_for_runtime_workspace` + - `spawn::tests::profile_choices_use_project_registry_default` + - `spawn::tests::profile_choices_include_builtin_and_project_default_marker` + +Outcome: +- Normal Panel Pod rows/action targets are filtered to current workspace Pods using persisted runtime workspace metadata. +- External workspace Pods and unknown/corrupt/live-only metadata fail closed for normal rows. +- Current workspace role-like Pods remain visible when persisted runtime workspace matches, independent of cwd/worktree differences. +- Root/original workspace was not read/written/merged/validated for this Ticket, per Panel Queue instruction. + +--- + + + +## Implementation report + +Cleanup report: + +Panel current-workspace Pod filter Ticket の implementation/review Pods と child worktree を cleanup した。 + +Stopped Pods: +- `yoi-coder-00001KVDH2E06` +- `yoi-reviewer-00001KVDH2E06-r2` + +Removed child implementation worktree: +- `/home/hare/Projects/yoi/.worktree/00001KVDH2E06-panel-current-workspace-pods` + +Deleted merged implementation branch: +- `impl/00001KVDH2E06-panel-current-workspace-pods` at `160c96ad` + +Orchestrator branch remains the integration authority for this completed work. Root/original workspace was not touched for this Ticket, per Panel Queue instruction. + +--- + + + +## State changed + +Implementation commits `3b634d66` and `160c96ad` were reviewed after blocker resolution, approved, merged into the Orchestrator branch as `0ef36b4e`, validated in the Orchestrator worktree, and child implementation resources were cleaned up. Requirements and acceptance criteria are satisfied for this Ticket. Root/original workspace was not operated on for this Ticket per Panel Queue instruction. + +--- + + + +## State changed + +Ticket を closed にしました。 + + +--- + + + +## 完了 + +Ticket `00001KVDH2E06` is complete. + +Completed implementation: +- Normal `yoi panel` Pod rows and Pod action targets are filtered to the current runtime workspace using persisted Pod metadata / runtime workspace ownership. +- Added optional persisted `workspace_root` to `PodMetadata` and ensured normal metadata write-through persists it. +- Added `PodMetadataStore::set_active_with_workspace_root(...)` while keeping compatibility `set_active(...)` preserving existing workspace ownership. +- Workspace-external Pods are excluded from normal Panel rows/action targets. +- Unknown/corrupt/live-only metadata fail closed and are not treated as current workspace Pods. +- Current-workspace role-like Pods remain visible when persisted runtime workspace matches, independent of cwd/worktree differences. + +Reviewed / merged: +- Initial implementation: `3b634d66` (`tui: filter panel pods by workspace`) +- Persistence-boundary fix: `160c96ad` (`pod: persist metadata workspace root`) +- First review requested changes for missing persistence of `workspace_root` through the normal store writer path. +- Re-review approved with no remaining blockers. +- Orchestrator merge commit: `0ef36b4e` (`merge: panel workspace pod filter`) + +Validation in Orchestrator worktree: +- `cargo fmt --check` — passed +- `cargo check -p tui -p pod -p pod-store` — passed +- `cargo test -p pod metadata_writer_persists_workspace_root_through_store_update -- --nocapture` — passed +- `cargo test -p pod pod_metadata -- --nocapture` — passed +- `cargo test -p pod-store` — passed; 6 passed, 0 failed +- `cargo test -p tui workspace_panel -- --nocapture` — passed; 23 passed, 0 failed +- `cargo test -p tui pod_list -- --nocapture` — passed; 19 passed, 0 failed +- `git diff --check` — passed + +Known validation debt: +- Full `cargo test -p tui` still has three pre-existing/unrelated failures reproduced on the Orchestrator branch before this implementation was merged: + - `multi_pod::tests::orchestrator_launch_context_uses_orchestration_root_for_runtime_workspace` + - `spawn::tests::profile_choices_use_project_registry_default` + - `spawn::tests::profile_choices_include_builtin_and_project_default_marker` + +Cleanup: +- Stopped Coder Pod `yoi-coder-00001KVDH2E06`. +- Stopped Reviewer Pod `yoi-reviewer-00001KVDH2E06-r2`. +- Removed child worktree `/home/hare/Projects/yoi/.worktree/00001KVDH2E06-panel-current-workspace-pods`. +- Deleted merged branch `impl/00001KVDH2E06-panel-current-workspace-pods`. + +Root/original workspace was not read/written/merged/validated for this Ticket, per Panel Queue instruction. The completed work is integrated on the Orchestrator branch. + +---