Repository navigation
feat(ops): the panel render gate — dead-widgets-zero wired into deploy-gate.sh (#1804) - #1805
Merged
aarontrowbridge merged 1 commit intoOct 17, 2026
Conversation
…y-gate.sh (#1804) After any dist swap, the headless probe boots the REAL panel through the frontdoor and asserts the composer renders, zero stuck loading states past the settle window, no per-URL poll loop above 1 req/s, and every 4xx/5xx carries a documented honest-absence reason. The module is repo-owned and shipped to the harness at gate time — no machine-owned gate code. Acceptance is what the panel renders, not what the tree contains. The standing constraint (no surface ships without live data) becomes mechanical: dead-widgets-zero or the dist does not ship. Detectors exercised on constructed bad signatures (spinner, poll loop, unexplained 404 — all three fail closed) and passing against the live lane build (99 requests, 0 4xx/5xx).
Contributor
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #1804.
The binding of product judgment to execution: acceptance measured in what the panel renders, not what the tree contains.
ops/hub/panel-gate.mjs— the repo-owned probe: boots the real panel through the frontdoor, settles, asserts (1) composer renders, (2) zero stuck loading states past settle, (3) no per-URL poll loop above 1 req/s in any sliding second, (4) every 4xx/5xx carries a documented honest-absence reason (reason-checked — the no-fleet-peers fallback passes, a bare 404 from a shipped surface fails).deploy-gate.sh --panel-gate— runs it as part of the battery, shipping the module to the harness at gate time (no machine-owned gate code drifts from the discipline). Fails closed: exit 1 = the dist does not ship.Verified both ways: PASS against the live lane build (99 requests, 0 4xx/5xx, composer rendered, zero spinners, no loops); FAIL on constructed bad signatures — all three detectors exercised (stuck animate-spin past settle; 53-requests-in-8s poll loop named with the sliding-second evidence; unexplained 404 from a shipped surface, body-checked).
Per the directive: this gate runs as part of every deploy ritual until it is wired into the script — now it is. The lockstep surfaces return when #1803's ports wire their feeds, by port work, never by deploy decision.