diff --git a/.yoi/tickets/open/20260608-032200-panel-close-done-tickets/artifacts/.gitkeep b/.yoi/tickets/closed/20260608-032200-panel-close-done-tickets/artifacts/.gitkeep similarity index 100% rename from .yoi/tickets/open/20260608-032200-panel-close-done-tickets/artifacts/.gitkeep rename to .yoi/tickets/closed/20260608-032200-panel-close-done-tickets/artifacts/.gitkeep diff --git a/.yoi/tickets/open/20260608-032200-panel-close-done-tickets/item.md b/.yoi/tickets/closed/20260608-032200-panel-close-done-tickets/item.md similarity index 97% rename from .yoi/tickets/open/20260608-032200-panel-close-done-tickets/item.md rename to .yoi/tickets/closed/20260608-032200-panel-close-done-tickets/item.md index 64aa7cb6..1d701128 100644 --- a/.yoi/tickets/open/20260608-032200-panel-close-done-tickets/item.md +++ b/.yoi/tickets/closed/20260608-032200-panel-close-done-tickets/item.md @@ -2,13 +2,13 @@ id: '20260608-032200-panel-close-done-tickets' slug: 'panel-close-done-tickets' title: 'Close done Tickets from workspace panel' -status: 'open' +status: 'closed' kind: 'task' priority: 'P2' labels: ['tui', 'panel', 'ticket', 'close', 'workflow-state'] -workflow_state: 'inprogress' +workflow_state: 'done' created_at: '2026-06-08T03:22:00Z' -updated_at: '2026-06-08T06:09:31Z' +updated_at: '2026-06-08T06:10:59Z' assignee: null legacy_ticket: null queued_by: 'workspace-panel' diff --git a/.yoi/tickets/closed/20260608-032200-panel-close-done-tickets/resolution.md b/.yoi/tickets/closed/20260608-032200-panel-close-done-tickets/resolution.md new file mode 100644 index 00000000..1ebbb07d --- /dev/null +++ b/.yoi/tickets/closed/20260608-032200-panel-close-done-tickets/resolution.md @@ -0,0 +1,30 @@ +Merged and completed the workspace Panel close-done-Tickets action. + +Summary: +- Panel `Close` action now closes safe already-done open Tickets through `LocalTicketBackend::close(...)`. +- Safe-close guard requires local status open, `workflow_state: done`, no non-empty `attention_required`, no non-empty `action_required`, and no existing `resolution.md`. +- Unsafe close attempts return bounded diagnostics before mutation. +- Generated resolution text is deterministic/non-LLM and states that the Ticket was already done and the close action did not start implementation, workflow-state changes, Orchestrator/Companion launch, or worker invocation. +- Panel refresh is scheduled after the action path so closed rows leave the open list. + +Merged branch/worktree: +- Branch: `panel-close-done-tickets` +- Commit: `6d41ed3 tui: close done tickets from panel` +- Merge commit on `develop`: `2415956 merge: close done tickets from panel` + +Validation passed after merge: +- `cargo test -p tui multi_pod --lib` +- `cargo test -p tui workspace_panel --lib` +- `cargo check -q` +- `cargo fmt --check` +- `git diff --check` +- `cargo run -q -p yoi -- ticket doctor` +- `nix build .#yoi` + +Cleanup completed: +- Stopped coder/reviewer Pods and reclaimed scope. +- Removed `.worktree/panel-close-done-tickets`. +- Deleted branch `panel-close-done-tickets`. + +Residual note: +- Non-open local status blocker has an explicit implementation guard but no dedicated focused test; reviewer accepted this as non-blocking because success and other unsafe cases are covered. \ No newline at end of file diff --git a/.yoi/tickets/open/20260608-032200-panel-close-done-tickets/thread.md b/.yoi/tickets/closed/20260608-032200-panel-close-done-tickets/thread.md similarity index 82% rename from .yoi/tickets/open/20260608-032200-panel-close-done-tickets/thread.md rename to .yoi/tickets/closed/20260608-032200-panel-close-done-tickets/thread.md index ae126d0b..6676e00c 100644 --- a/.yoi/tickets/open/20260608-032200-panel-close-done-tickets/thread.md +++ b/.yoi/tickets/closed/20260608-032200-panel-close-done-tickets/thread.md @@ -241,3 +241,65 @@ Parent/human decision needs: - User has authorized merge-completion and cleanup after approved work. Proceeding to merge-completion unless post-merge validation fails. --- + + + +## Review: approve + +Final merge-completion approval after merge to `develop` and post-merge validation. + +Evidence: +- Merged branch `panel-close-done-tickets` with `--no-ff`. +- Reviewer `reviewer-panel-close-done` approved the branch-local implementation. +- Post-merge validation passed: `cargo test -p tui multi_pod --lib`, `cargo test -p tui workspace_panel --lib`, `cargo check -q`, `cargo fmt --check`, `git diff --check`, `cargo run -q -p yoi -- ticket doctor`, and `nix build .#yoi`. +- Coder/reviewer Pods stopped and delegated scope reclaimed. +- Merged worktree removed and branch deleted. + +This approval is for the merged main-branch result, not merely the branch-local reviewer verdict. + +--- + + + +## State changed + +Merged to `develop`, post-merge validation passed, final merge-completion approval recorded, and panel-close branch/worktree/Pods cleaned up. + +--- + + + +## Closed + +Merged and completed the workspace Panel close-done-Tickets action. + +Summary: +- Panel `Close` action now closes safe already-done open Tickets through `LocalTicketBackend::close(...)`. +- Safe-close guard requires local status open, `workflow_state: done`, no non-empty `attention_required`, no non-empty `action_required`, and no existing `resolution.md`. +- Unsafe close attempts return bounded diagnostics before mutation. +- Generated resolution text is deterministic/non-LLM and states that the Ticket was already done and the close action did not start implementation, workflow-state changes, Orchestrator/Companion launch, or worker invocation. +- Panel refresh is scheduled after the action path so closed rows leave the open list. + +Merged branch/worktree: +- Branch: `panel-close-done-tickets` +- Commit: `6d41ed3 tui: close done tickets from panel` +- Merge commit on `develop`: `2415956 merge: close done tickets from panel` + +Validation passed after merge: +- `cargo test -p tui multi_pod --lib` +- `cargo test -p tui workspace_panel --lib` +- `cargo check -q` +- `cargo fmt --check` +- `git diff --check` +- `cargo run -q -p yoi -- ticket doctor` +- `nix build .#yoi` + +Cleanup completed: +- Stopped coder/reviewer Pods and reclaimed scope. +- Removed `.worktree/panel-close-done-tickets`. +- Deleted branch `panel-close-done-tickets`. + +Residual note: +- Non-open local status blocker has an explicit implementation guard but no dedicated focused test; reviewer accepted this as non-blocking because success and other unsafe cases are covered. + +---