You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(proof): actually wire the per-repo opt-out the routes only claimed to honor (#9569)
Review caught the real defect: both handlers called
isProofPageEnabledForRepo(c.env) with no second argument, so the
ProofPageRepoOverride documented at length in proof-summary.ts and in the
PR body was never loaded or passed. Every repo was effectively
opt-out-less once the fleet flag was on -- a gate that is described,
typed, and unit-tested as a pure function, but never reachable from the
surface it governs. That is the registered-but-unreachable class, and the
long comment made it worse rather than better by making it look done.
- Adds a real `publicProof:` focus-manifest block (engine parser + toJson
+ loader snapshot), mirroring `publicStats:`/`ops:`. Precedence is
deliberately the opposite of those two: read from the TARGET repo's
manifest rather than the operator's self-repo, because the thing being
opted out of is that repo's own page.
- loadProofPageRepoOverride resolves it, degrading a failed manifest load
to "no override" -- a broken manifest never takes a page DOWN, which is
the failure direction worth accepting here and is now stated in the
doc comment rather than left implicit.
- Both routes load the override BEFORE anything else, so a repo that
turned its page off does not have its decision records queried to build
a summary that will be discarded.
- Documents the block in .loopover.yml.example, including the precedence
and the opt-out default.
Tests that would have caught it: a repo opting out in its manifest now
gets 404 from BOTH routes with the fleet flag on, while a different repo
in the same fleet still serves 200 (the opt-out is per repo, not a kill
switch); explicit opt-in and no-block-at-all both serve; and the resolver
is covered across absent/explicit/failing loads.
0 commit comments