Replaces #2903, whose README fix is already on #2899's checklist. This waits for #2899: the code it touches (src/tui/screens/dashboard.ts's KPI lines, added by pull #2878) is not on main until then.
Done looks like:
[ ] In src/tui/screens/dashboard.ts, dashboardScreen calls running() from src/kernel/version.ts once, binds the result, and drops the non-null assertion: when nothing is running, the live line is left out rather than thrown on.
[ ] ago sits in alphabetical order with the other names imported from ./common.ts, after the upper-case constants, the way the list is already sorted.
[ ] A test in test/home-kpis.test.ts (or the dashboard's own test) renders the admin dashboard with no running version and gets the KPI lines without a throw. It fails if the assertion comes back.
[ ] Unchanged: only an admin sees the figures on the terminal dashboard.
[ ] Before pushing: bun x tsc --noEmit and bun test test/home-kpis.test.ts.
Files: src/tui/screens/dashboard.ts, test/home-kpis.test.ts.
Risks: none beyond the admin gate; keep the row read on load (keeping it fresh is #2676's work).
Brief: scout.
Replaces #2903, whose README fix is already on #2899's checklist. This waits for #2899: the code it touches (
src/tui/screens/dashboard.ts's KPI lines, added by pull #2878) is not on main until then.Done looks like:
src/tui/screens/dashboard.ts,dashboardScreencallsrunning()fromsrc/kernel/version.tsonce, binds the result, and drops the non-null assertion: when nothing is running, the live line is left out rather than thrown on.agosits in alphabetical order with the other names imported from./common.ts, after the upper-case constants, the way the list is already sorted.test/home-kpis.test.ts(or the dashboard's own test) renders the admin dashboard with no running version and gets the KPI lines without a throw. It fails if the assertion comes back.bun x tsc --noEmitandbun test test/home-kpis.test.ts.Files: src/tui/screens/dashboard.ts, test/home-kpis.test.ts. Risks: none beyond the admin gate; keep the row read on load (keeping it fresh is #2676's work). Brief: scout.