The same lock, on the front page, tighter
MAX_README_CHARS = 30000 in
scripts/check-readme-structure.py:47
is a budget on a whole shared file. README.md measures 29,965 characters:
35 free.
AGENTS.md, Records: "Cap the entry, never the file" -- a budget on a shared
file turns every addition into evicting someone else's content, and merging two
such edits cleanly is worse than conflicting, because it applies both evictions.
Measured, over the last 20 commits that touched README.md
Free characters against the 30,000 cap:
| commit |
free |
subject |
031410e8 |
-52 |
docs(readme): News carries MXFP4 vLLM parity and the Vulkan... |
5e0e83bf |
2 |
feat(muse-glimmer): port the ATEM reasoning + tool parsers |
1078355d |
3 |
docs: align public backend and H3 coverage (#261) |
c75a5f7e |
8 |
build(BUILD-TRITON-DEFAULT-ON) |
882ed8fa |
9 |
fix(policy): repair main's two blocking gates |
4d148122 |
12 |
feat(tenstorrent): BACKEND-TENSTORRENT W0 |
f64f2b71 |
35 |
docs: align release, ABI, and architecture claims (#372) |
Thirteen of the last twenty sat under 60 characters free. 031410e8 landed the
file 52 characters over the cap. And there is a whole merged row whose
entire purpose was paying rent: row/DOCS-README-BUDGET (#161), plus
44206e47 "restore the landing-page budget after the MANIFESTO link".
That is the same shape as the three budgets already retired for this exact
reason:
README.md is tighter than any of them were.
Repair
Relocate the obligation the way #364 and #460 did, rather than deleting it or
adding slack:
- Cap the entry. README's real quality defect is a section growing into an
essay, not the file reaching a byte count. A per-section or per-paragraph
budget bounds what an author writes and never charges them for what someone
else wrote.
- Keep the shape rules.
check-readme-structure.py already enforces
required sections and ordering; those count defects, not length, so two
concurrent PRs do not collide on them.
Per AGENTS.md this changes a checker's semantics, so it needs its own spec, a
red-before test or mutation, and green-after evidence, with the mutation in
tests/scripts/test_check_readme_structure.py. Deliberately not fixed inside
#494, which is scoped to the two benchmark-surface checkers.
Found while doing #460.
The same lock, on the front page, tighter
MAX_README_CHARS = 30000inscripts/check-readme-structure.py:47is a budget on a whole shared file.
README.mdmeasures 29,965 characters:35 free.
AGENTS.md, Records: "Cap the entry, never the file" -- a budget on a shared
file turns every addition into evicting someone else's content, and merging two
such edits cleanly is worse than conflicting, because it applies both evictions.
Measured, over the last 20 commits that touched README.md
Free characters against the 30,000 cap:
031410e85e0e83bf1078355dc75a5f7e882ed8fa4d148122f64f2b71Thirteen of the last twenty sat under 60 characters free.
031410e8landed thefile 52 characters over the cap. And there is a whole merged row whose
entire purpose was paying rent:
row/DOCS-README-BUDGET(#161), plus44206e47"restore the landing-page budget after the MANIFESTO link".That is the same shape as the three budgets already retired for this exact
reason:
MAX_CHARSinscripts/check-now-current.pyand thecharskey ofSTATUS_RATCHET, both removed by87308deaunder Shared record surfaces are a lock: 16/29 open PRs conflict, 13 of them in bookkeeping only #364;max_charsonPageRulesinscripts/check-public-doc-tables.py, removedunder docs/BENCHMARKS.md cannot be compacted: check_links validates links inside fenced blocks, so no row with a docs/-relative link can be archived byte-for-byte #460 (PR fix(record): cap the benchmark ENTRY, never the file -- docs/BENCHMARKS.md had 205 chars of headroom (#460) #494), where
docs/BENCHMARKS.mdhad 205 characters free and aclean automatic merge had already landed it over the cap.
README.mdis tighter than any of them were.Repair
Relocate the obligation the way #364 and #460 did, rather than deleting it or
adding slack:
essay, not the file reaching a byte count. A per-section or per-paragraph
budget bounds what an author writes and never charges them for what someone
else wrote.
check-readme-structure.pyalready enforcesrequired sections and ordering; those count defects, not length, so two
concurrent PRs do not collide on them.
Per AGENTS.md this changes a checker's semantics, so it needs its own spec, a
red-before test or mutation, and green-after evidence, with the mutation in
tests/scripts/test_check_readme_structure.py. Deliberately not fixed inside#494, which is scoped to the two benchmark-surface checkers.
Found while doing #460.