1.6 KiB
1.6 KiB
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
-companionsuffix 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
Companioncomposer target now sends user text to the workspace Companion Pod throughMethod::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.tomlrole slots. - No selected-Pod direct send,
--multi, or:ticketsurface was reintroduced.
Implementation:
- Child commit:
ba0c9d5 feat: wire panel companion lifecycle - Merge commit:
merge: companion pod lifecycle
Review:
- External reviewer
companion-lifecycle-reviewer-20260607approved with no blockers.
Validation after merge:
cargo test -p tui companion --libcargo test -p tui multi_pod --libcargo test -p tui workspace_panel --libcargo test -p tui --libcargo fmt --checkgit diff --checktarget/debug/yoi ticket doctor