ticket: close companion pod lifecycle
This commit is contained in:
parent
f7c5b56eb0
commit
d17b44596e
|
|
@ -2,13 +2,13 @@
|
||||||
id: 20260607-001651-workspace-panel-companion-pod-lifecycle
|
id: 20260607-001651-workspace-panel-companion-pod-lifecycle
|
||||||
slug: workspace-panel-companion-pod-lifecycle
|
slug: workspace-panel-companion-pod-lifecycle
|
||||||
title: Workspace panel Companion Pod lifecycle
|
title: Workspace panel Companion Pod lifecycle
|
||||||
status: open
|
status: closed
|
||||||
kind: task
|
kind: task
|
||||||
priority: P2
|
priority: P2
|
||||||
labels: [tui, panel, companion, pod]
|
labels: [tui, panel, companion, pod]
|
||||||
workflow_state: ready
|
workflow_state: done
|
||||||
created_at: 2026-06-07T00:16:51Z
|
created_at: 2026-06-07T00:16:51Z
|
||||||
updated_at: 2026-06-07T20:45:05Z
|
updated_at: 2026-06-07T20:45:36Z
|
||||||
assignee: null
|
assignee: null
|
||||||
legacy_ticket: null
|
legacy_ticket: null
|
||||||
---
|
---
|
||||||
|
|
@ -0,0 +1,31 @@
|
||||||
|
Implemented, reviewed, merged, and validated.
|
||||||
|
|
||||||
|
Summary:
|
||||||
|
- Added a real workspace Companion Pod lifecycle for `yoi panel`.
|
||||||
|
- Companion Pod id/name is resolved from the workspace directory basename; for this repository it is exactly `yoi`.
|
||||||
|
- No `-companion` suffix or separate companion-specific id was introduced for the normal workspace Companion.
|
||||||
|
- The panel reuses live Companion Pods and restores restorable Companion Pods before spawning a missing Companion.
|
||||||
|
- The workspace Orchestrator remains a separate identity such as `yoi-orchestrator`.
|
||||||
|
- Panel close does not stop the Companion.
|
||||||
|
- The `Companion` composer target now sends user text to the workspace Companion Pod through `Method::Run`, not to arbitrary selected Pods.
|
||||||
|
- Empty composer behavior still preserves selected-Pod open/attach behavior.
|
||||||
|
- Busy/unavailable Companion states preserve the draft and surface bounded diagnostics.
|
||||||
|
- Ticket Intake remains separate and does not append Intake text to Companion history.
|
||||||
|
- Companion is not modeled as a Ticket role and does not use `.yoi/ticket.config.toml` role slots.
|
||||||
|
- No selected-Pod direct send, `--multi`, or `:ticket` surface was reintroduced.
|
||||||
|
|
||||||
|
Implementation:
|
||||||
|
- Child commit: `ba0c9d5 feat: wire panel companion lifecycle`
|
||||||
|
- Merge commit: `merge: companion pod lifecycle`
|
||||||
|
|
||||||
|
Review:
|
||||||
|
- External reviewer `companion-lifecycle-reviewer-20260607` approved with no blockers.
|
||||||
|
|
||||||
|
Validation after merge:
|
||||||
|
- `cargo test -p tui companion --lib`
|
||||||
|
- `cargo test -p tui multi_pod --lib`
|
||||||
|
- `cargo test -p tui workspace_panel --lib`
|
||||||
|
- `cargo test -p tui --lib`
|
||||||
|
- `cargo fmt --check`
|
||||||
|
- `git diff --check`
|
||||||
|
- `target/debug/yoi ticket doctor`
|
||||||
|
|
@ -195,4 +195,52 @@ Reviewer validation:
|
||||||
Worktree status was clean after validation, and the diff is limited to `crates/tui/src/multi_pod.rs` and `crates/tui/src/workspace_panel.rs`.
|
Worktree status was clean after validation, and the diff is limited to `crates/tui/src/multi_pod.rs` and `crates/tui/src/workspace_panel.rs`.
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<!-- event: state_changed author: hare at: 2026-06-07T20:45:36Z from: ready to: done reason: closed field: workflow_state -->
|
||||||
|
|
||||||
|
## State changed
|
||||||
|
|
||||||
|
Ticket closed; workflow_state set to done.
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<!-- event: close author: hare at: 2026-06-07T20:45:36Z status: closed -->
|
||||||
|
|
||||||
|
## Closed
|
||||||
|
|
||||||
|
Implemented, reviewed, merged, and validated.
|
||||||
|
|
||||||
|
Summary:
|
||||||
|
- Added a real workspace Companion Pod lifecycle for `yoi panel`.
|
||||||
|
- Companion Pod id/name is resolved from the workspace directory basename; for this repository it is exactly `yoi`.
|
||||||
|
- No `-companion` suffix or separate companion-specific id was introduced for the normal workspace Companion.
|
||||||
|
- The panel reuses live Companion Pods and restores restorable Companion Pods before spawning a missing Companion.
|
||||||
|
- The workspace Orchestrator remains a separate identity such as `yoi-orchestrator`.
|
||||||
|
- Panel close does not stop the Companion.
|
||||||
|
- The `Companion` composer target now sends user text to the workspace Companion Pod through `Method::Run`, not to arbitrary selected Pods.
|
||||||
|
- Empty composer behavior still preserves selected-Pod open/attach behavior.
|
||||||
|
- Busy/unavailable Companion states preserve the draft and surface bounded diagnostics.
|
||||||
|
- Ticket Intake remains separate and does not append Intake text to Companion history.
|
||||||
|
- Companion is not modeled as a Ticket role and does not use `.yoi/ticket.config.toml` role slots.
|
||||||
|
- No selected-Pod direct send, `--multi`, or `:ticket` surface was reintroduced.
|
||||||
|
|
||||||
|
Implementation:
|
||||||
|
- Child commit: `ba0c9d5 feat: wire panel companion lifecycle`
|
||||||
|
- Merge commit: `merge: companion pod lifecycle`
|
||||||
|
|
||||||
|
Review:
|
||||||
|
- External reviewer `companion-lifecycle-reviewer-20260607` approved with no blockers.
|
||||||
|
|
||||||
|
Validation after merge:
|
||||||
|
- `cargo test -p tui companion --lib`
|
||||||
|
- `cargo test -p tui multi_pod --lib`
|
||||||
|
- `cargo test -p tui workspace_panel --lib`
|
||||||
|
- `cargo test -p tui --lib`
|
||||||
|
- `cargo fmt --check`
|
||||||
|
- `git diff --check`
|
||||||
|
- `target/debug/yoi ticket doctor`
|
||||||
|
|
||||||
|
|
||||||
---
|
---
|
||||||
Loading…
Reference in New Issue
Block a user