2026-07-07 14:55:03 -04:00
---
kind: epic
slug: fleet-dashboard
title: Fleet dashboard — all connected repos and convoys
plan_slug: automation-foundation
status: draft
priority: P2
tenant_id: global
cursor_epic_id: null
2026-08-03 11:48:36 -04:00
updated_at: "2026-08-03"
2026-07-07 14:55:03 -04:00
---
# Epic objective
Top-level **fleet** view: all `convoys-<repo>` workspaces (or connected repos) in one screen. Roll up convoys by status, gate inbox count, active `agent_runs` , recent spend by model alias.
2026-08-03 11:48:36 -04:00
Live **activity feed** (SSE) from `convoy_events` — Autensa benchmark for operator situational awareness.
Answers: “What needs me across all projects?” and “What just happened?”
2026-07-07 14:55:03 -04:00
## In scope / out of scope
**In scope**
- Route `/fleet` or home dashboard for operator account.
- Cross-workspace tRPC (membership-scoped).
- Links into per-repo mission control (Epic 5).
2026-08-03 11:48:36 -04:00
- SSE activity stream (workspace + fleet scope).
2026-07-07 14:55:03 -04:00
**Out of scope**
- Multi-tenant fleet across unrelated customers (operator's own repos only for v1).
2026-08-03 11:48:36 -04:00
- Autopilot research/ideation feeds.
2026-07-07 14:55:03 -04:00
## Dependencies
- Epic 4 (queryable convoy status).
- Epic 5 (gate semantics).
## Acceptance criteria
- [ ] Operator with two connected repos sees combined “3 awaiting approval” badge.
2026-08-03 11:48:36 -04:00
- [ ] New convoy event appears in activity feed without page refresh.
2026-07-07 14:55:03 -04:00
## Tasks
2026-08-03 11:48:36 -04:00
| 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 |