Commit 2be4a67
Hold the isSystem census page to the code: committed AST census, population gate, converted anchors (#13051)
* wip: isystem census + gate scripts
* docs+gate: census-derived enforcement for the isSystem page
* ci: fold the isSystem census gate into the docs-anchors step
* docs(system-context): reword the reserved word out of the census prose
* docs(system-context): re-derive the census figures on the merged tree
`main` moved under the open PR and the page's live numbers went stale:
* +5 line rot in `plugin-security/src/security-plugin.ts` (the import block
#13065 added at :66 pushed every anchored read down five lines), plus the
`field.zod.ts` `readonly` citation `--fix` re-anchored mechanically.
* Six decomposition-table counts re-measured against the merged tree:
lines 1804->1810, in tests 1010->1012, in sources 794->798, identifier
appearances 809->813, keys 308->310, comments/strings 356->358.
The census population itself did NOT move: 109 elevation read sites in 20
packages across 45 files, before and after. The gate, its criterion and its
self-test are untouched -- the page's numbers were made true, not the check
made lenient.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CPrUz21stTFhJRUirdc4yw
* fix(scripts): stop enforcing whole-corpus text counts on the isSystem census page
The six raw text counts (lines carrying the identifier, the test/source split,
identifier appearances, object-literal keys, the prose remainder) are properties
of the whole corpus, not of the elevation population the page certifies. They
move whenever any file under packages/ or examples/ gains or loses a line
mentioning isSystem -- a test, a seed object, a comment -- and because CI scores
a PR's MERGE with main and the merge queue re-derives that merge against a newer
main on every attempt, a page carrying them races a moving target.
Measured on this branch: three unrelated merges to main moved those six numbers
eight times in one night, while every census-derived figure held flat across the
same refs -- 109 sites, 20 packages, 45 files, 6 ledger subtractions, 21/115/9
role counts, at db39dfc, 8a483b3, ca1965f and the merged tree.
So they move out of DECLARED_COUNTS into UNENFORCED_TEXT_COUNTS: still required
to be PRESENT on the page and to carry a dated measurement marker, never
compared. The POPULATION, RESOLUTION and CLASSIFICATION checks and every
census-derived count are untouched, and an empty census still refuses.
Seven self-test cases pin the new criterion, two of them over the real lists:
every entry of DECLARED_COUNTS must hold still under a whole-corpus text drift,
and all six UNENFORCED_TEXT_COUNTS must move under it -- so re-adding a text
count to the enforced list fails the self-test by name.
Also re-anchors permission-set-projection.ts:987 to :1009 (pure line rot from
today's main, repaired by --fix).
* docs(permissions): repair 31 rotted isSystem anchors against today's main
* docs(permissions): re-anchor the field.zod.ts readonly citation after today's drift
---------
Co-authored-by: Claude <noreply@anthropic.com>1 parent 35202f1 commit 2be4a67
5 files changed
Lines changed: 2075 additions & 73 deletions
File tree
- .github/workflows
- content/docs/permissions
- scripts
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1330 | 1330 | | |
1331 | 1331 | | |
1332 | 1332 | | |
| 1333 | + | |
| 1334 | + | |
| 1335 | + | |
| 1336 | + | |
| 1337 | + | |
| 1338 | + | |
| 1339 | + | |
| 1340 | + | |
| 1341 | + | |
| 1342 | + | |
| 1343 | + | |
| 1344 | + | |
| 1345 | + | |
| 1346 | + | |
| 1347 | + | |
| 1348 | + | |
| 1349 | + | |
| 1350 | + | |
| 1351 | + | |
| 1352 | + | |
| 1353 | + | |
| 1354 | + | |
| 1355 | + | |
| 1356 | + | |
| 1357 | + | |
| 1358 | + | |
| 1359 | + | |
| 1360 | + | |
1333 | 1361 | | |
1334 | | - | |
| 1362 | + | |
| 1363 | + | |
| 1364 | + | |
| 1365 | + | |
1335 | 1366 | | |
1336 | 1367 | | |
1337 | 1368 | | |
| |||
0 commit comments