--- kind: epic slug: mission-control-gates-ui title: Mission control — convoy kanban, gate inbox, co-pilot plan_slug: automation-foundation status: draft priority: P1 tenant_id: global cursor_epic_id: null updated_at: "2026-07-03" --- # Epic objective Echodo UI for human gates and convoy visibility: - **Convoy kanban** — columns map to state machine statuses (Planning, Awaiting plan approval, Building, …). - **Gate inbox** — “needs you” queue for `convoy_review`, `pr_review`, pre-`released`. - **Approve / deny / request changes** — calls `transition_convoy_status` with correct `human-gate-*` actor. - **Gate co-pilot** — AI panel using `gate-copilot` role route (`resolveModel`) to summarize plan/diff and suggest action. ## In scope / out of scope **In scope** - Routes under `/{workspaceSlug}/convoys/` or `/mission-control/`. - Conductor-style chat to seed convoys (can call `create_convoy` MCP or web tRPC wrapper). **Out of scope** - Fleet cross-repo view (Epic 9). - Unattended orchestration (Epic 6). ## Dependencies - Epic 4 (lifecycle transitions and queryable convoy state). ## Blocks - Epic 6 (orchestrator pauses until gate UI exists for dogfood). ## Acceptance criteria - [ ] Operator sees pending Gate 1 convoy and approves → status `ready`. - [ ] Co-pilot uses `claude-planning` alias when configured. ## Tasks _To be decomposed when epic graduates to `ready`._