fix(status): four of six services reported health nobody measured #5483
ccantynzAI Reviewcommented 21d ago
AI Triage
(no summary)
Priority: medium Risk area: mixed
Suggested labels: (no label suggestions) Suggested reviewers: (no reviewer suggestions)
Suggestions only — nothing has been applied. The PR author stays in control.
gluecron[bot]🤖 botAI Reviewcommented 21d ago
AI review unavailable
The platform's AI balance is exhausted, so AI generation is temporarily unavailable. Nothing was lost. You can queue this as a repair for the internal agent from the repository's Health page, or try again once the balance is restored. The PR is otherwise unchanged.
Cross-repo impact
See what breaks downstream if this PR merges.
⮌ Merged
This pull request was merged into main.
c comment · e edit title · m merge · a approve · r request changes · ? shortcuts
The problem
The public
/statustable is headed "Real-time status of every platform surface" with a "30-DAY UPTIME" column. Four of its six rows were literally this:{ name: "AI Review", state: "ok", label: "Operational", uptimePct: "100.0%" }Constants. Nothing behind them. Only Database and Autopilot carried a real signal.
What it cost
Found 2026-08-11: GitHub→Gluecron mirroring had been dead for weeks — vapron 522 commits behind, davenroe 65, alecrae.com 17, zoobicon.com and jarvis-platform 5 each — and this page read "All systems operational · 100.0% · 6/6 services up" the entire time. The drift was eventually found by comparing
git ls-remotebetween hosts by hand, not by any signal on this page.A page that cannot go red is not a status page.
The rule now
A row may claim Operational only when something on this request actually established it.
ok/100.0%dbOk, uptime from the incidents table (same source as the hero)ok— serving this page proves the process. Narrow, but trueok— same process as the APIThe hero counter now reads monitored-up / monitored-total. Counting the unprobed rows as down would read as an outage; counting them as up was the lie. The honest denominator is what we can actually see.
"Not monitored" is styled deliberately grey, never green — an unmeasured surface must not read as a healthy one at a glance.
Also fixed
The Database subtitle said "Neon PostgreSQL". Production runs
pgvector/pgvector:pg16in Docker on the master box. Crediting a vendor we don't use is the same class of untruth as the constants.Verification
tsc --noEmitcleanstatus-uptime.test.ts+status-seo.test.ts— 19 pass, 0 failFollow-up worth doing
AI Review and CI Runner now say "Not monitored" honestly, but the better end state is a real probe for each. This change makes their absence visible instead of papering over it — which is the prerequisite for anyone bothering to build them.
Found during the fleet dead-surface sweep. Related: PR #5482 (mirror-sync could never report failure). Context:
FINDINGS.mdF20/F27 inccantynz/platform-contracts.🤖 Generated with Claude Code