# GOLIVE — Overdeck

## The one journey that pays for it
Open one screen → know within 10 seconds what's broken, what needs my answer, and how done each project is → act on it (kill/re-run/answer) without opening any other tool.

## Side-quest budget (P0.4)
- **Cost cap:** 1 week of agent work (waves 0–7 of `docs/plans/2026-07-17-overdeck-v1.md`), then stop regardless of polish level.
- **The ONE metric:** daily-driver adoption — I stop opening systray/gh/journals/grafana separately; Overdeck is the first tab of the day.
- **Kill threshold:** not my daily driver within 2 weeks after wave 2 lands → freeze the repo with a FROZEN.md, no further investment.

## Acceptance criteria (finite, testable, user-visible)
- [x] AC-01: Overview loads < 2s locally, dark theme default, no console errors
- [x] AC-02: Theme toggle light/dark persists across reload; both themes fully styled
- [ ] AC-03: Scoreboard strip shows real works/total for multideal, zync.is, press.zone from their GOLIVE.md, with 7-day trend
- [ ] AC-04: Churn flag fires when a project's commits rise while its scoreboard is flat (verified on zync fixture)
- [ ] AC-05: A pending Factory decision appears within one poll interval; answering it through the Factory decision flow unblocks the current phase
- [x] AC-06: Decision row expands in place showing full question + data + journal ref
- [x] AC-07: Rate-limit panel shows every account from systray-ai with % and cap-ETA forecast; ≥75% raises an Inbox item
- [ ] AC-08: A failed GitHub Actions run appears in Inbox with a working Re-run action; exactly one item per failed attempt
- [ ] AC-09: An orphan agent (etime>30m, cpu>80%, agent class) appears with a Reap action; reap kills it and journals the action
- [x] AC-10: Run-forensics widgets (KPI tiles, phase bars, run lanes, run table) render for the latest engine run with bucket sums matching the journal
- [ ] AC-11: Map shows laptop/debian1/GitHub/Cloudflare with live status chips; node click opens inspector with actions
- [x] AC-12: Bots panel shows every Botmaster bot with status/msgs/errors/cost; bot-down raises an Inbox item that auto-resolves
- [x] AC-13: Gates panel shows prevent-band open count + per-repo slopgate debt with 7-day delta
- [x] AC-14: Collector survives any single source being down — stale badge shown, no crash, no false alerts
- [ ] AC-15: Every mutating action is journaled to actions.jsonl and confirmed in UI; non-allowlisted verbs rejected
- [ ] AC-16: deck-tui reaches Overview/Inbox/Decisions over the collector with the deck theme and executes one action via palette
- [ ] AC-17: Morning digest renders the overnight summary on first visit of the day
- [ ] AC-18: Project colors are pairwise distinct (12-hue rule) and editable in Settings; edits propagate to all pages

## Explicitly NOT in v1 (the cut list)
- Public/remote hosting, multi-user, auth beyond the local token (tailnet bind stays config-off)
- LLM-generated digests or “AI insights” panels — template digest only
- Historical metrics warehouse (Prometheus stays the TSDB; Overdeck reads live + short ring buffers)
- Mobile app / push notifications (desktop notify only; push = post-v1 candidate)
- Editing plans/GOLIVE files from the UI (read-only scoreboard; answers/steers only)
- Replacing systray-ai tray icon, netdata/grafana dashboards, or harness web/ — they keep working untouched
- New charts library; custom SVG/div components only until a task proves need
