fix(landing): stop reporting unverified services as green on /health - #195
fix(landing): stop reporting unverified services as green on /health#195Rumblingb wants to merge 1 commit into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
/health returned a hard-coded `green` for database, agentrank, escrow, kya and behavioral_oracle. None of those are verifiable from this edge worker, and per #167 no payment rail is provably live at all. Verified against production today: the live endpoint still serves all five as green. This is the specific overclaim #165 was filed to remove. It is also the most damaging one, because /health is exactly what a technical evaluator checks first — the landing copy is marketing, but a status endpoint reads as an assertion of fact. Changes: - Declare service states in EDGE_SERVICE_STATUS with honest values: landing green (this worker does serve it), agentrank demo_only, database not_probed, escrow / kya / behavioral_oracle not_implemented. - Add `scope: "edge"` and a note so the payload states its own limits. - Stop handling /api/health here. It was shadowing the origin's real health check, which now receives the request via the existing /api/ passthrough. - Cache-Control: no-store, so a status response is never served stale. Tests assert no service other than `landing` may report green, and that /api/health reaches the origin. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
20816ef to
07c1599
Compare
|
Two follow-ups after review: Base corrected. Originally opened against
So removing the edge stub hands Unused export dropped. |
Deployed to production — 2026-07-27Worker Ships both this PR and #193 (which it stacks on). BeforeAfter — verified live
Routing verificationThe first pass appeared to show
Unknown paths carry Deploy notes
|
|
Not merged — blocked by failing checks, and blocked behind #193. Commit
Same pattern as #193 — this PR only touches Generated by Claude Code |
Closes the
/healthhalf of #165. Stacks on #193, which fixes the routing half.What was live
Verified against production on 2026-07-27:
Five services, all hard-coded
green, none verifiable. This is an edge worker — it has nobackend probe and never had one. Per #167, no payment rail is provably live at all, so
escrowandkyawere not merely unverified, they were unimplemented.This is the most damaging item in #165. The landing copy is marketing and reads as such;
a status endpoint reads as an assertion of fact, and it is the first thing a technical
evaluator checks.
Separately, the old condition matched
/api/healthtoo, so the stub shadowed the origin'sreal health check — the one endpoint that could have told the truth was unreachable.
What it returns now
{ "status": "ok", "scope": "edge", "services": { "landing": "green", "agentrank": "demo_only", "database": "not_probed", "escrow": "not_implemented", "kya": "not_implemented", "behavioral_oracle": "not_implemented" }, "note": "Edge worker status only. Backend health is served by the origin at /api/health.", "timestamp": "2026-07-27T16:34:32.115Z" }landingisgreenbecause this worker genuinely does serve it. Nothing else may claim green.Changes
EDGE_SERVICE_STATUSconstant holds the declared states, with a comment stating the rule:green requires a deployed, tested implementation on this worker; anything else is
not_implemented. One place to audit, and the next person cannot re-add a green by reflex.scope: "edge"+noteso the payload declares its own limits rather than implyingsystem-wide coverage.
/api/healthno longer handled here — falls through to the existing/api/originpassthrough, so real backend health is reachable.
Cache-Control: no-store. A status response should never be served stale.Verification
node --check worker.js→ cleannode --test worker.test.mjs→ 1/1 passTests added:
landingis asserted notgreen, by loop — so a futureregression fails even for a service name that does not exist yet
/api/healthreaches the origin (status 299 from the stubbed fetch,fetchCalledtrue)no-storepresentBase branch
Targets
codex/founder-orchestration-2026-07-11for the same reason as #193: the landingworker does not exist on
main. Branched from #193's head so the two apply in order andtouch disjoint code — #193 owns routing, this owns the health payload.
Not in scope
Making
databasea real probe. That needs an origin health contract that does not existyet and belongs with #167/#168.
not_probedis the honest placeholder until then — thepoint of this PR is that an unknown must not be reported as a green.
🤖 Generated with Claude Code