docs: correct four factual defects in the README, and fix the hero SVG - #643
docs: correct four factual defects in the README, and fix the hero SVG#643MongLong0214 wants to merge 2 commits into
Conversation
CommitLore — record lintTrailers: clean — 2 commits in Trailer violations fail this check. Active constraints are informational — they are what the repository already decided, not a verdict on this PR. |
grok adversarial review → six fixes (ffc8f1e)The SVG was built by grok against the handoff spec, then reviewed adversarially by a fresh grok pass against the same acceptance criteria. It failed two of them. Both are invisible at desktop width, which is why the review was worth running.
Passing unchanged: one art direction, no terminal chrome, no gradient, 5 colours, no marketing headline inside the drawing, fully static, no external font/image/JS/ Defects 3 and 4 are the ones worth noting beyond this PR: both were the drawing claiming more than the product contract allows, which is the same class of error |
Conformance restored, and the vocabulary drift closed with it (f70127a)The first push failed
Restoring the table also closed P0-README-04. It listed Scope confirmed with the CommitLore CTOThe three translated READMEs are #590's, not this PR's. Hand-syncing them would route around the very drift #590 exists to fix. The boundary agreed:
The vocabulary correction is already in the #590 branch for all four languages. Merge order this PR → #590 rebase closes it without duplicate work, at the cost of a short mismatch on Neither the generated block nor the vocabulary table is leaving the README. #590's goal is widening the set of facts the checker owns, not relocating them — the block stays where this PR placed it and #590 fills it, reusing the existing marker names and format. No follow-up PR to strip markers is needed. Verification606 → 352 lines. Filed separately
|
a1f033b to
ff33333
Compare
CI will not go green — two failures on
|
ff33333 to
99d6259
Compare
99d6259 to
5a20638
Compare
New failure after the scope reduction — the record you added collides with an unrelated proposalGuard now treats "document the exit codes in the README" as an attempt to revive a ruled-out approach, at 0.625. WhyThe alternative you recorded is broad enough to swallow any README proposal: The reason is precise — four-file consistency, translations owned by #590. The alternative is not: as written it reads as "restructuring the README", so anything about the README scores against it. That test is a precision floor for guard. Guard is an experimental advisory with measured precision well below a gate (ADR-0020), and this case exists so it does not drift further. Relaxing it to make the PR pass would spend the floor to keep a record's wording. The fix belongs in the record, not the testName what was actually rejected. It was not "restructuring the README" in general — it was restructuring only the English file while section order is a four-file contract. Something closer to: That records the same decision, is more useful to the next person — it says what would be acceptable, a four-file change — and stops scoring against proposals that merely mention the README. Worth noting the record did its job here in an unexpected way: it is the first time in this session that a recorded decision has actively pushed back on a later proposal. The pushback was wrong, and the reason it was wrong is that the alternative was written as a category rather than as the thing that was tried. Reproduce with |
5a20638 to
5826f5c
Compare
Two of them survived my acceptance. The agent appeared nowhere in the image, so "delivered to the next agent" was asserted rather than shown, and 19px text rendered at 5.9px at mobile width. viewBox 1200x340, a 22px floor with 24px for required elements, aria-labelledby and aria-describedby, no strikethrough, and the superseded entry is now a genuinely different record rather than the same one crossed out. Five colours, no gradient, no external asset. Limit: this renders in the README's first screen, so required wording must stay legible at mobile width Record-Id: r-herosvg643 Blast: local Undo: easy Certainty: firm X-Claude-Session: https://claude.ai/code/session_01Go54NtZpaoNMRtmYtPLX6R
1. The headline denominators contradicted the generated block. The prose claimed 16/580 and 109/579, while the checker-owned block in the same file reports 585 and 584 runs per arm with 110 in the off arm. The prose drifted because nothing owned it, which is the gap #590 is widening. 2. The Capture column's "Yes" read as deterministic autocapture. What is installed is the prepare, verify and stage path. That every eligible commit reaches a terminal assessment on its own is certified nowhere. 3. The Provenance vocabulary listed three of its five values. SPEC section 3 carries drafted and unknown as well, and drafted is what unattended capture writes, so the omitted value was the likeliest one to meet. 4. "Every route uses the same trust grading" stated an intention as an observation. A record has been observed grading directive through the CLI and claim through MCP with more than one runtime installed. The structure is untouched. Section order and the demo asset are bound across all four language files, so the English file cannot move alone. Limit: section order, demo asset and exposure table are cross-file contracts over four language files Ruled-out: Restructure the English product entry page alone | T-1015 and T-1016 enforce four-file consistency and the translations belong to #590 Record-Id: r-readmefact643 Blast: module Undo: easy Certainty: firm X-Claude-Session: https://claude.ai/code/session_01Go54NtZpaoNMRtmYtPLX6R
5826f5c to
5993aa2
Compare
What this PR became, and why it is smaller than it started
It began as the A–Z review's README restructure. The restructure cannot be done in this PR, and the reason is a contract, not a preference.
test/readme-order.test.ts:141,174binds section order across all four language files:T-1016requires the same demo asset in all four;T-1015requires the exposure table, the delivery/capture naming for every host class, and the clone-carried vs notes-backed distinction in every file. Restructuring English alone failed 18 tests across 5 files. Restructuring all four would take over the translated READMEs, which belong to #590.So the restructure is inherently a coordinated four-file change and belongs with #590, not ahead of it. What survives here is every factual correction the review found — those needed no structural change, and they are the part that was actually wrong.
The four corrections
1 — the headline denominators contradicted the generated block. The prose claimed
16/580and109/579; the checker-owned block in the same file reports585and584runs per arm, with110in the off arm. Two different denominators for one study, in one file.The prose drifted because nothing owned it — which is exactly the gap #590 is widening.
2 — the Capture column's "Yes" read as deterministic autocapture. What is installed is the prepare → verify → stage path. That every eligible commit reaches a terminal assessment on its own is a stronger property, certified on no host. The caption now separates available from guaranteed.
3 — the
Provenance:vocabulary was missing two of its five values. SPEC §3 carriesauthored | drafted | inherited | reconstructed | unknown; the table listed three.draftedis what unattended capture writes, so the omitted value was the one a reader is likeliest to meet.4 — "Every route uses the same trust grading" stated an intention as an observation. A record has been observed grading
directivethrough the CLI andclaimthrough MCP with more than one runtime installed (#631, #635). Users meet the result, not the design.The hero SVG
grok's adversarial review found six defects in a version I had already accepted. Two I had missed: the agent appeared nowhere in the image, so "delivered to the next agent" was asserted rather than shown; and 19px text rendered at 5.9px at mobile width. Now: 22px floor (24px for required elements),
aria-labelledby+aria-describedby, no strikethrough, and the superseded record is a genuinely different record rather than the same one crossed out.Verification
Filed separately
Gstatus only, while Bind a directive to an authorised signer, not to a signature #642 also requires the%GFfingerprint incommitlore.trustedSigner. Every other surface picked that up; the normative text did not.notes mirror (origin) failed: spawnSync git ETIMEDOUTreproduced on every push here.