Commit graph

1 commit

Author SHA1 Message Date
3e91072a7c test(loadbearing): bind a rule phrase to every section the shape guard cannot see
The spec guard anchored SHAPE only: the `## 1.`-`## 12.` headings, `### Step 1`-`8`,
and the bare literal `MUST` — the last checked against the WHOLE document. So a
commons pull could empty a section of its normative content and stay green as long
as the heading survived and `MUST` appeared anywhere else. §5 was the sharpest case:
it carries no `MUST` at all, so nothing in the old guard ever touched it.

One verbatim normative phrase is now bound to the section that OWNS it, matched
whitespace- and emphasis-normalized so a reflow or a bolding change does not
false-red — with a control that a changed WORD still does. Two properties make the
binding real: the phrase must sit in its own section body (moving it elsewhere
leaves the owner unanchored, proven), and it must be unique in the document (a
phrase occurring twice could be satisfied from a section other than its owner).

The selection is ours, not mirrored. Each phrase names a seam this implementation
actually carries, owning module cited per row — a phrase anchoring a seam we do NOT
implement would be a green-but-dead guard of the opposite kind.

Value-proven against the REAL spec, not a copy: gutting each section (heading kept)
reds this guard 11/11, and the OLD guard stayed GREEN for 10 of them. §3 is the
single overlap — it owns the `### Step N` headings — so there this is defence in
depth, not new coverage. That distinction is recorded in the file rather than left
to sound like eleven. Restore sha256-verified; `git status` clean before and after.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JYWMfPKmJtv7JvYnpomkdV
2026-08-09 10:25:55 +02:00