ticket: close workspace orchestration panel

This commit is contained in:
Keisuke Hirata 2026-06-06 15:05:38 +09:00
parent 6aeef2d76e
commit 1c49ea3451
No known key found for this signature in database
4 changed files with 76 additions and 2 deletions

View File

@ -2,12 +2,12 @@
id: 20260605-210703-workspace-orchestration-panel id: 20260605-210703-workspace-orchestration-panel
slug: workspace-orchestration-panel slug: workspace-orchestration-panel
title: Workspace orchestration panel title: Workspace orchestration panel
status: open status: closed
kind: task kind: task
priority: P1 priority: P1
labels: [tui, ticket, orchestration, panel] labels: [tui, ticket, orchestration, panel]
created_at: 2026-06-05T21:07:03Z created_at: 2026-06-05T21:07:03Z
updated_at: 2026-06-05T23:13:39Z updated_at: 2026-06-06T06:05:38Z
assignee: null assignee: null
legacy_ticket: null legacy_ticket: null
--- ---

View File

@ -0,0 +1,33 @@
Completed the first-pass workspace orchestration panel implementation.
Delivered child/follow-up tickets:
- `workspace-orchestration-panel-design`: approved design; panel is a unified `yoi panel` workspace view, not a `--multi`/single-Pod split.
- `workspace-panel-action-model`: added thin local-file-first workspace panel ViewModel, Ticket/action rows, no-Ticket Pod-centric fallback, `yoi panel`, and removed `--multi`.
- `workspace-panel-orchestrator-lifecycle`: Ticket-enabled panels ensure/restore/spawn a background workspace Orchestrator and skip Orchestrator lifecycle in no-Ticket workspaces.
- `workspace-panel-composer-targets`: added Companion vs Ticket Intake composer targets and Intake launch through the role launcher.
- `ticket-intake-orchestrator-handoff`: added auditable Intake -> Orchestrator handoff and pre-run peer registration.
- `workspace-panel-ticket-action-dispatch`: added safe dispatch for Go/Defer and safe diagnostics for Review/Close.
Final first-pass behavior:
- `yoi panel` opens the workspace panel for cwd/workspace.
- `--multi` is removed as a user-facing route.
- If `.yoi/ticket.config.toml` is absent, the panel suppresses Ticket UI and behaves as a Pod-centric dashboard.
- If Ticket config is usable, the panel shows Ticket/action rows, background Pod rows, Orchestrator lifecycle state, and composer target selection.
- Ticket Intake composer target launches Intake with the typed message as Intake input, not Companion/current Pod history.
- Intake receives Orchestrator handoff in committed launch input/history and pre-run peer registration is attempted.
- Go records a Ticket decision for Orchestrator routing/preflight and optionally notifies Orchestrator, without starting implementation.
- Defer records a decision and moves open Tickets to pending where applicable.
- Review/Close remain safe explicit-flow diagnostics rather than silent approval/closure.
- Layout/display polish is intentionally deferred to the next pass.
Validation across final slices included:
- `cargo test -p tui workspace_panel`
- `cargo test -p tui multi_pod`
- `cargo test -p client ticket_role`
- `cargo test -p ticket`
- `cargo test -p yoi panel`
- `cargo check --workspace --all-targets`
- `cargo fmt --check`
- `cargo build -p yoi`
- `target/debug/yoi ticket doctor`
- `nix build .#yoi --no-link`

View File

@ -94,4 +94,45 @@ Target launch model:
This keeps one panel implementation while avoiding a permanent `--multi` surface or confusing Ticket UI in workspaces that have not opted into Ticket config. This keeps one panel implementation while avoiding a permanent `--multi` surface or confusing Ticket UI in workspaces that have not opted into Ticket config.
---
<!-- event: close author: hare at: 2026-06-06T06:05:38Z status: closed -->
## Closed
Completed the first-pass workspace orchestration panel implementation.
Delivered child/follow-up tickets:
- `workspace-orchestration-panel-design`: approved design; panel is a unified `yoi panel` workspace view, not a `--multi`/single-Pod split.
- `workspace-panel-action-model`: added thin local-file-first workspace panel ViewModel, Ticket/action rows, no-Ticket Pod-centric fallback, `yoi panel`, and removed `--multi`.
- `workspace-panel-orchestrator-lifecycle`: Ticket-enabled panels ensure/restore/spawn a background workspace Orchestrator and skip Orchestrator lifecycle in no-Ticket workspaces.
- `workspace-panel-composer-targets`: added Companion vs Ticket Intake composer targets and Intake launch through the role launcher.
- `ticket-intake-orchestrator-handoff`: added auditable Intake -> Orchestrator handoff and pre-run peer registration.
- `workspace-panel-ticket-action-dispatch`: added safe dispatch for Go/Defer and safe diagnostics for Review/Close.
Final first-pass behavior:
- `yoi panel` opens the workspace panel for cwd/workspace.
- `--multi` is removed as a user-facing route.
- If `.yoi/ticket.config.toml` is absent, the panel suppresses Ticket UI and behaves as a Pod-centric dashboard.
- If Ticket config is usable, the panel shows Ticket/action rows, background Pod rows, Orchestrator lifecycle state, and composer target selection.
- Ticket Intake composer target launches Intake with the typed message as Intake input, not Companion/current Pod history.
- Intake receives Orchestrator handoff in committed launch input/history and pre-run peer registration is attempted.
- Go records a Ticket decision for Orchestrator routing/preflight and optionally notifies Orchestrator, without starting implementation.
- Defer records a decision and moves open Tickets to pending where applicable.
- Review/Close remain safe explicit-flow diagnostics rather than silent approval/closure.
- Layout/display polish is intentionally deferred to the next pass.
Validation across final slices included:
- `cargo test -p tui workspace_panel`
- `cargo test -p tui multi_pod`
- `cargo test -p client ticket_role`
- `cargo test -p ticket`
- `cargo test -p yoi panel`
- `cargo check --workspace --all-targets`
- `cargo fmt --check`
- `cargo build -p yoi`
- `target/debug/yoi ticket doctor`
- `nix build .#yoi --no-link`
--- ---