Repository navigation
test(security): the ungated-router list may only shrink, so a new entry fails (#16375) - #16955
Merged
mrveiss merged 2 commits intoSep 18, 2026
Merged
Conversation
…ry fails (#16375) KNOWN_UNGATED said "the list may only SHRINK" in a comment. The equality tests stop an ungated router that is not listed, but not one added to the list alongside it. Two assertions now back the comment: - every entry must be in _EVER_UNGATED, the 36 modules of #16370's first run, so a new module cannot be parked in the list; - len(KNOWN_UNGATED) must equal _MAX_KNOWN_UNGATED (27), so growth fails and each removal must lower the ceiling as a deliberate edit. That also catches an entry removed once and later put back, which the superset cannot.
Contributor
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. 🗂️ Base branches to auto review (2)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
1 of 3 tasks
This was referenced Sep 18, 2026
fix(security): match injection patterns against what a model reads, not the raw text (#16354)
#16937
Merged
Closed
Closed
Contributor
This was referenced Sep 18, 2026
This was referenced Sep 18, 2026
Merged
This was referenced Sep 18, 2026
This was referenced Sep 18, 2026
Merged
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.
Refs #16375
Stacked on #16896 (base
issue-16375-gate-three-routers). Merge #16896 first, then retarget this PR tomain. It is stacked because both PRs edit adjacent lines ofKNOWN_UNGATED.Thinking Path
#16375 asks that
KNOWN_UNGATEDshrink to empty, and that the baseline only shrink. The file said so in a comment ("The list may only SHRINK"), but no test enforced it:test_no_new_config_router_is_ungated_and_undocumentedfails for an ungated router that is not listed.test_the_known_ungated_list_has_not_gone_stalefails for a listed router that is now gated.Together they force the list to equal the live ungated set. Neither stops a PR that adds an ungated router and its list entry together, which is the one move the comment forbids.
I followed the repo's existing pattern for a comment that must fail (
comment_line_number_citations_test.py's_MAX_BASELINE: "raising this number is the deliberate act"). A count alone misses a swap (one entry fixed, a new one added), so a frozen superset backs it up. No git-history comparison: CI's checkouts are shallow.What Changed
repo_tests/config_router_auth_coverage_test.pyonly:_EVER_UNGATED: the 36 modules of fix(security): authenticate every skills route, and require admin to change, fetch or execute (#16368) #16370's first run, recovered from the commit that added the file (afccf73b4).test_the_known_ungated_list_only_ever_shrinksfails ifKNOWN_UNGATEDholds anything outside it, so a new module cannot be parked._MAX_KNOWN_UNGATED = 27:test_the_ceiling_is_pinned_to_the_listrequireslen(KNOWN_UNGATED) == 27.No router is gated here. The router-by-router triage and the next steps are on #16375.
Acceptance criteria
This PR delivers part of #16375: the "may only shrink" rule the coordinator asked for, which the issue's AC2 ("shrinks to empty, under its equality rule") depends on. AC1 to AC3 stay open, so this is
Refs, notCloses.Verification
KNOWN_UNGATEDon the base branch (after security(api): gate captcha, metrics and diagnostics routers (#16375) #16896) has 27 entries._EVER_UNGATED's 36, and the 9 missing are the ones already gated: 6 by9179f9305(it gated 7, butknowledge_extractwas never listed) and 3 by security(api): gate captcha, metrics and diagnostics routers (#16375) #16896.repo_tests/config_router_auth_coverage_test.pyand reported it passing. CI is the evidence.Single-issue rationale
This delivers one part of #16375 (the ungated-router list may only shrink) and closes nothing: #16375's other criteria stay open, with the router-by-router triage handed off on the issue. It is stacked on #16896 because both edit adjacent lines of the same list, and it is kept separate so the guard can land ahead of the gating work.
Model Used
Claude Opus 5 (
claude-opus-5)