--- kind: epic slug: fleet-dashboard title: Fleet dashboard — all connected repos and convoys plan_slug: automation-foundation status: draft priority: P1 tenant_id: global cursor_epic_id: null updated_at: "2026-08-12" --- # Epic objective Top-level **fleet** home: all workspaces / connected repos in one screen. Roll up gates needing attention, active convoys and `agent_runs`, recent releases, and (when Epic 11 lands) completion thumbnails. This is Phase B of the owner cockpit vision — “what’s happening across my projects since I was last here?” Live **activity feed** (SSE) from `convoy_events`. ## In scope / out of scope **In scope** - Route `/fleet` or authenticated landing dashboard. - Cross-workspace tRPC (membership-scoped). - Cards per workspace/repo: gate count, running convoys, recent `released` / merged. - Links into per-repo mission control and (later) Plans. - SSE activity stream (workspace + fleet scope). - Placeholder slots for completion summaries (Epic 11) without blocking v1. **Out of scope** - Multi-tenant fleet across unrelated customers (operator's own repos only for v1). - Autopilot research/ideation feeds. - Full Plans tree (Epic 10). ## Dependencies - Epic 4 (queryable convoy status). - Epic 5 (gate semantics). - Epic 7 live dogfood preferred so “running” is meaningful. ## Acceptance criteria - [ ] Operator with two connected repos sees combined “N awaiting approval” badge. - [ ] New convoy event appears in activity feed without page refresh. - [ ] Card links into correct workspace mission control. ## Tasks | Task | Link | Status | |------|------|--------| | Fleet rollup dashboard | [Task-fleet-rollup-dashboard](./Task-fleet-rollup-dashboard.md) | ready | | Live activity feed (SSE) | [Task-convoy-activity-feed-sse](./Task-convoy-activity-feed-sse.md) | draft |