test(hydra-gates): planted/clean acceptance bundle for gate 94 - #549
Merged
Conversation
Gate 94 landed in #546 without a fixture bundle, and main's "Package invariants" job is red because of it: the coverage ratchet in test_gate_acceptance_matrix.sh is a hard failure for a gate declared in the runner with neither a bundle nor an UNCOVERED.md row — deliberately, so a gate cannot land untested in silence. This is that bundle. The two arms differ ONLY in the host the shipped URLs point at, and planted/ reproduces the fleet's actual 2026-08-22 state: <bugs>, <website>, <repository> and <screenshot> all still on codeberg.org a month after the last codeberg remote was removed. Two shapes are pinned on purpose: - Both arms carry a prose mention of "codeberg" in <description>. Gate 94 is scoped to URL-bearing FIELDS, never to the file's prose — a scanner that grepped the whole file would fail the clean/ arm on that line, and a gate that flagged every historical mention would be noisy enough to switch off. - Both arms carry an identical <screenshot> PATH, so a checker keyed on the path rather than the host would misgrade the pair. The subject substring is `codeberg.org`, not a field name: the finding is "this URL points at a retired host" and the URL is what a human needs to see. A gate reporting only a count would satisfy a nonzero-exit check for free while naming nothing. Verified locally: acceptance matrix 181 passed / 0 failed, gate 94 now in the covered set (67 of 74 gates fixtured).
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.
Why
Gate 94 landed in #546 without an acceptance fixture, and
main's Package invariants job is red because of it:That ratchet is a hard failure for a gate declared in the runner with neither a planted/clean bundle nor an
UNCOVERED.mdrow — deliberately, so "a gate cannot be added to the runner and left untested in silence." The ratchet did exactly its job; #546 merged over it. This PR is the missing bundle.What it pins
The two arms differ only in the host the shipped URLs point at.
planted/reproduces the fleet's actual 2026-08-22 state:<bugs>,<website>,<repository>and<screenshot>all still oncodeberg.orga month after the last codeberg remote was removed.Two shapes are deliberate, and both would catch a plausible wrong repair:
<description>clean/arm — and a gate that flagged every historical mention would be noisy enough to switch off<screenshot>pathThe subject substring is
codeberg.org, not a field name: the finding is "this URL points at a retired host" and the URL is what a human needs to see. A gate reporting only a count would satisfy a nonzero-exit check for free while naming nothing — the failure shape this whole suite exists to catch.Verification
Direct checker run over the two arms:
planted/→ 4 findings naming each URL;clean/→checked 1 shipped metadata file(s) [full tree]: 0 failure(s), rc 0.