Skip to content

Commit f23cafb

Browse files
authored
Merge pull request #1 from coreruleset/fix/linked-repos-plan-limit
Trim linked_repositories to 5, our plan's limit
2 parents dcaa7f0 + 2d5509b commit f23cafb

2 files changed

Lines changed: 17 additions & 38 deletions

File tree

‎.coderabbit.yaml‎

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1460,13 +1460,6 @@ knowledge_base:
14601460
`crs-plugin-test-action`, and by every plugin repo's tests. A change to
14611461
flags, output format, or exit codes breaks those callers, so treat
14621462
those as cross-repo breaking changes.
1463-
- repository: "coreruleset/ftw-tests-schema"
1464-
instructions: >
1465-
The authoritative YAML schema for go-ftw test files. Every file under
1466-
`tests/regression/tests/` in coreruleset and in the plugin repos must
1467-
conform to it. Use it to decide whether a field in a test file is
1468-
valid, required, or deprecated, rather than inferring the shape from
1469-
neighbouring tests.
14701463
- repository: "coreruleset/crs-toolchain"
14711464
instructions: >
14721465
Compiles `regex-assembly/*.ra` sources into the `@rx` patterns in
@@ -1486,25 +1479,6 @@ knowledge_base:
14861479
before claiming a metadata issue will or will not fail CI, and note
14871480
that a change to the linter itself can retroactively fail existing
14881481
rules in coreruleset.
1489-
- repository: "coreruleset/plugin-registry"
1490-
instructions: >
1491-
The registry of official and third-party CRS plugins, including the
1492-
rule ID range reserved for each plugin. This is the authority for
1493-
whether a plugin rule sits in its own range or is squatting on a core
1494-
CRS range or another plugin's. A new plugin, or a plugin claiming a
1495-
new range, must be reflected here.
1496-
- repository: "coreruleset/actions"
1497-
instructions: >
1498-
Reusable CRS composite GitHub Actions shared across the org's
1499-
workflows. When reviewing a workflow change, check whether an inline
1500-
step reimplements something this repo already provides, and whether a
1501-
change here affects the workflows that call it.
1502-
- repository: "coreruleset/renovate-config"
1503-
instructions: >
1504-
The shared Renovate preset that every repo's `renovate.json` extends
1505-
via `github>coreruleset/renovate-config`. Consult it to see what the
1506-
preset already handles before suggesting repo-local `packageRules`,
1507-
and treat a change here as affecting dependency updates org-wide.
15081482
# Renamed from coreruleset/coreruleset-documentation; GitHub redirects the
15091483
# old name, but use the canonical one here.
15101484
- repository: "coreruleset/documentation"

‎AGENTS.md‎

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)