@@ -96,15 +96,20 @@ PR conventions). Keep the two in sync when either changes.
9696 be reviewed.
9797- ` allow_non_org_members: true ` and ` enable_free_tier: true ` are deliberate: CRS takes drive-by
9898 community contributions.
99- - ** ` linked_repositories ` is capped at 20** and is selected by dependency edge, not by
100- relevance — a repo earns a slot when something can break across the boundary. The nine here:
101- ` coreruleset ` (rule IDs, approved tags, PL policy), ` go-ftw ` + ` ftw-tests-schema ` (test runner
102- and its YAML schema), ` crs-toolchain ` (` .ra ` directive semantics), ` crs-linter ` (what actually
103- fails CI), ` plugin-registry ` (reserved plugin ID ranges), ` actions ` , ` renovate-config ` ,
104- ` documentation ` . ` documentation ` carries the longest entry on purpose: it is the source of
105- truth for everything operators are told (configuration, PL guidance, exclusion recipes,
106- upgrade notes), so it outranks anything inferred from the rules when the question is what a
107- user is supposed to do — and it is the counterpart obligation for any user-visible change.
108- Note it was renamed from ` coreruleset-documentation ` ; GitHub redirects, but the config uses
109- the canonical name. Deliberately excluded: ` template-plugin ` and ` modsecurity-crs-docker ` —
110- they consume the rule set but nothing breaks across the edge.
99+ - ** ` linked_repositories ` is capped at 5 by our CodeRabbit plan** (the schema itself allows up
100+ to 20). The five kept, chosen for the checks that fire across the whole org rather than one
101+ repo: ` coreruleset ` (rule IDs, approved tags, PL policy — everything else is downstream of
102+ it), ` crs-toolchain ` (` .ra ` directive semantics, backing the regex-assembly source-of-truth
103+ check), ` crs-linter ` (what actually fails CI), ` go-ftw ` (the test runner every repo's tests
104+ depend on), and ` documentation ` (the counterpart-obligation check: flag a PR that changes
105+ documented behavior without a matching docs change). ` documentation ` carries the longest
106+ entry on purpose: it is the source of truth for everything operators are told (configuration,
107+ PL guidance, exclusion recipes, upgrade notes), so it outranks anything inferred from the
108+ rules when the question is what a user is supposed to do. Note it was renamed from
109+ ` coreruleset-documentation ` ; GitHub redirects, but the config uses the canonical name.
110+ Dropped to fit the cap: ` ftw-tests-schema ` (overlaps ` go-ftw ` ), ` plugin-registry ` (only backs
111+ the plugin ID-range check, scoped to plugin repos), ` actions ` and ` renovate-config ` (only
112+ relevant to workflow/dependency-policy discussions). Revisit if plugin repos start seeing
113+ frequent drive-by PRs — ` plugin-registry ` backs the one blocker-severity check among the four
114+ that were cut. Deliberately excluded regardless of the cap: ` template-plugin ` and
115+ ` modsecurity-crs-docker ` — they consume the rule set but nothing breaks across the edge.
0 commit comments