Skip to content

v0.84 cold review round 2: five more false statements, four of them our own corrections - #1513

Merged
avrabe merged 1 commit into
mainfrom
lane/v0.84-r2-corrections
Oct 9, 2026
Merged

avrabe merged 1 commit into
mainfrom
lane/v0.84-r2-corrections

Conversation

@avrabe

@avrabe avrabe commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

Round 2 ran in a fresh detached worktree pinned to b0395b69, forbidden from reading the coordinator's checkout, its notes, and round 1's worktree. Its first task was to attack round 1's corrections and the numbers they introduce — worked from an 82-number frequency list its own extractor derived, not from reading for importance. It appended 285 lines and deleted zero; round 1's text and the header are untouched, verified by diff.

5 false statements. 4 of them introduced by round 1's corrections or my addendum.

That ratio is the entire reason for a second round.

R2-1 — the correction to a population error contained a population error. "blocked lands green on 294 of the 594" computed 594 − 300, subtracting all 300 release artifacts while the same sentence names the version gate that exempts most of them. Only 177 are R11-active, so the green set is 417. The additive clause "and on every pre-v0.67 release file" then double-counted — RQ-60-A64IMPORT is among the artifacts already subtracted away.

R2-2 (imprecise, not counted) — NON_DELIVERY_DISPOSITION's loader iterates 594, but its membership test is reached by 109: the contrast was mis-sized fivefold.

R2-3 — "nothing in the plan reads an issue's state" is false. RQ-84-ARCHMODEL3.yaml:16 at 0c84a3b9 says "check the upstream issue's STATE before its BODY. If it is CLOSED this is a DELIVERY lane" — the exact read instance 6 was credited with inventing. The five-of-seven boundary holds; the justification didn't.

R2-4 — the theme paragraph cited "instance 7's cluster brittleness" as genuinely new material 107 lines above the same commit retracting it.

R2-5 — not ours, and missed by round 1: a second site still asserted the field-identity premise and the cluster brittleness after F2 fixed only the first. Exactly two assertion sites existed; one pass corrected one. Sweep for the fact, not the cited site — in the brief, violated anyway.

R2-6 — the addendum's "This does not change any count above" changes the count it was written about.

The addendum was right but too weakly stated — fixed in both directions

With seven synthetic one-artifact external stubs, round 2 showed the guard silent with the cache present, firing with it absent, firing again once removed. So inertness needs one external artifact, not 3201 — "added ≥ 3201 unconditionally" was a property of this operator's cache content, not of the mechanism.

The tally now reads 6 potent environment-independently, 1 potent only absent .rivet/repos.

And the scoping settles which reading matters: no workflow invokes the generator — ci.yml:828 runs only its unit test — while rivet sync runs at ci.yml:1505 and compliance.yml:102. The generator's only real environment is the operator's synced checkout, so the gate is inert in the only environment where it ever runs, and the fresh-worktree potent reading describes an environment it is never used in.

Also fixed: a provenance a reader could not check

The notes trio was pinned to 4785e61c — the pre-squash lane head, which squash merging leaves out of main's history. Re-measured at b0395b69, an ancestor of main: generator 3215 added / 722 unchanged, symmetric 722 base / 736 head / 14 added / 0 removed / 722 unchanged. Same figures, checkable provenance.

Every number round 2 introduced was re-derived independently before being written: 300 across 245 files, 177 R11-active, 594 total, 417 green, 109 reached, and 4785e61c confirmed not an ancestor of origin/main.

Gates

verdict_prose rc=0 (109, 0 disagree) · status_evidence rc=0 · claim_check 75/75 · check_version_pins rc=0 · issue_closure rc=0 (0 authorised, 1 held open, 0 closed, 0 failures) · pretag conformance rc=0 CONFORMS (slots=7, derived=6, attested=1, failures=0).

Refs #1259, #1183, #1436, #1458, #1476, #1484

🤖 Generated with Claude Code

https://claude.ai/code/session_01YJK5LZZEkV5smCY1jKn18L

…ur own corrections

Round 2 ran in a FRESH detached worktree pinned to b0395b6, forbidden from
reading the coordinator's checkout, its notes, and round 1's worktree. Its first
task was to attack round 1's corrections and THE NUMBERS THEY INTRODUCE, worked
from an 82-number frequency list its own extractor derived — not from reading
for importance. It appended 285 lines and deleted ZERO; round 1's text and the
header are untouched, verified by diff.

FIVE false statements. FOUR were introduced by round 1's corrections or by the
coordinator's addendum. That ratio is the point of running a second round.

R2-1. THE CORRECTION TO A POPULATION ERROR CONTAINED A POPULATION ERROR.
"`blocked` lands green on 294 of the 594" computed `594 - 300`, subtracting ALL
300 release artifacts while the SAME SENTENCE names the version gate that
exempts most of them. Only 177 of the 300 are R11-active, so the green set is
417 — re-derived here by importing the gate's own predicate. The additive clause
"and on every pre-v0.67 release file" then DOUBLE-COUNTED: RQ-60-A64IMPORT is
among the artifacts already subtracted away.

R2-2, recorded as imprecise rather than false: `NON_DELIVERY_DISPOSITION`'s
loader iterates 594, but its membership test is REACHED by 109, so the contrast
was mis-sized fivefold.

R2-3. "nothing in the plan reads an issue's state" is FALSE —
RQ-84-ARCHMODEL3.yaml:16 at 0c84a3b says "check the upstream issue's STATE
before its BODY. If it is CLOSED this is a DELIVERY lane", the exact read
instance 6 was credited with inventing. The five-of-seven BOUNDARY still holds;
the justification did not.

R2-4. The theme paragraph cited "instance 7's cluster brittleness" as genuinely
new material 107 lines above the same commit RETRACTING it.

R2-5. NOT ours, and MISSED BY ROUND 1: a second site still asserted the
field-identity premise and the cluster brittleness after the F2 correction fixed
only the first. Exactly two assertion sites existed and one pass corrected one.
Sweep for the FACT, not the cited site — stated in the brief, violated anyway.

R2-6. The addendum's "This does not change any count above" changes the count it
was written about.

AND THE ADDENDUM WAS RIGHT BUT TOO WEAKLY STATED, which round 2 fixed in both
directions. With seven synthetic one-artifact external stubs it showed the guard
silent with the cache present, firing with it absent, firing again once removed:
INERTNESS NEEDS ONE EXTERNAL ARTIFACT, NOT 3201, so "added >= 3201
unconditionally" was a property of this operator's cache CONTENT, not of the
mechanism. The potency tally now reads 6 potent environment-independently, 1
potent ONLY absent `.rivet/repos`. And the scoping settles which reading
matters: no workflow invokes the generator — ci.yml:828 runs only its unit test
— while `rivet sync` runs at ci.yml:1505 and compliance.yml:102, so the
generator's only real environment is the operator's synced checkout. The gate is
inert in the only environment where it ever runs.

ALSO FIXED HERE, from round 2's uncounted observations: the notes trio was
pinned to 4785e61, the PRE-SQUASH lane head, which squash merging leaves OUT of
main's history — a reader on main could not check it. Re-measured at b0395b6,
an ancestor of main: generator 3215 added / 722 unchanged, symmetric 722 base /
736 head / 14 added / 0 removed / 722 unchanged. Same figures, checkable
provenance.

Every number round 2 introduced was re-derived independently before being
written here: 300 across 245 files, 177 R11-active, 594 total, 417 green, 109
reached, and 4785e61 confirmed NOT an ancestor of origin/main.

Gates, each read by its own exit code: verdict_prose rc=0 (109, 0 disagree),
status_evidence rc=0, claim_check 75/75, check_version_pins rc=0, issue_closure
rc=0 (0 authorised, 1 held open, 0 closed, 0 failures), and pretag conformance
rc=0 CONFORMS (slots=7, derived=6, attested=1, failures=0).

Refs #1259, #1183, #1436, #1458, #1476, #1484

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YJK5LZZEkV5smCY1jKn18L
@avrabe
avrabe merged commit 2597955 into main Oct 9, 2026
72 of 73 checks passed
@avrabe
avrabe deleted the lane/v0.84-r2-corrections branch October 9, 2026 17:42
@codecov

codecov Bot commented Oct 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant