test(gateway): require URI path-segment route boundaries - #181
test(gateway): require URI path-segment route boundaries#181seonghobae wants to merge 10 commits into
Conversation
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks 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 |
|
Writer repair note (exact-head evidence): two attempted causal GREEN writes ( |
|
@coderabbitai review |
|
chore(restack): adopt protected auth baseline into route-boundary repair
|
Fresh exact-current execution has settled on unchanged
Exact consumer evidence is now handed to canonical |
Security finding
Refs #180. The pre-repair route selector used raw lexical prefix matching, so
/apicould capture/apixand/api/admincould capture/api/administrator, binding a request to the wrong Wardnet route/enforcement/upstream authority before later controls executed.Hostile RED and minimum causal repair
Exact RED
93d097626d96f9adaffc267f47be162c397355f3changed onlycrates/waf-ids-core/tests/route_path_segment_boundary.rs; hosted CI34129793580/ rust101766902311failed because lexical siblings were selected as routes while root/trailing-slash controls passed. The production repair remains limited tocrates/waf-ids-core/src/lib.rs::select_route: an enabled route matches only an exact configured path or slash-delimited descendant; root catch-all, disabled-route handling and longest-valid-match semantics remain unchanged.RouteConfigwire shape and EgressWeave transport authority are untouched.Protected-base adoption — refreshed 2026-09-11 KST
Protected/default
mainis exactf8260f1e03836039ff9463dd99fa982e4e270c4b. Reverse-direction restack #309 adopted protected #155 normally, without force or destructive rebase, producing current exact headabbaff14a452671238c83c1325da22e15f9ee2acon that protected base.Exact-current gates
All predecessor results are historical after #309. Current exact execution is terminal for the principal lanes:
34569413771: SUCCESS;34569413780: SUCCESS;34569413792: SUCCESS;34569413795: SUCCESS;34569413791: FAILURE at the delegated current-head terminal-verdict settlement boundary.The earlier queued snapshot is superseded. Do not churn source or rerun already-successful lanes.
.github#1929owns the reproduced central CodeQL settlement defect;.github#712remains runner/materialization owner only for genuine pre-checkout failures. A failed required workflow is non-passing and not eligible for routine or guarded bypass.Live ruleset
18156473still carries the generic one-approval solo-maintainer mismatch tracked by.github#772; self/model approval and routine administrator bypass are not substitutes.Keep Draft until the unchanged exact head has terminal-valid required CodeQL, zero valid unresolved review findings/threads, current hostile route-boundary and coverage evidence, fresh protected-base compatibility and every then-live package/SBOM/provenance/governance gate. No force push/destructive rebase, gate weakening, mutable foreign dependency, source copy, cross-service SQL or predecessor-evidence reuse.