Skip to content

Integrate accepted RMQ extensions and repair Linux verification - #2

Merged
patternscientist merged 124 commits into
mainfrom
codex/ci-publication-repair
Sep 23, 2026
Merged

patternscientist merged 124 commits into
mainfrom
codex/ci-publication-repair

Conversation

@patternscientist

Copy link
Copy Markdown
Owner

Promote the accepted post-PQ1 integration checkpoint after its required Linux checks pass. This brings the reviewed PRE, native execution, lower-bound, bitvector and compiler work already on claude/integrate-post-pq1-extensions onto main. The separate, unaccepted lifecycle campaign is excluded.

The integration at bf31f98 failed Linux compilation of Construction.Proof.Constants. A clean Ubuntu 24.04 reproduction on pinned Lean 4.22.0 identified a worker-thread stack overflow even with the existing 1 GiB OS stack setup. The new repair commit c9e26d2 sets Lake's worker stack to 64 MiB and retains the full bounded PRE warm-up output on failure. Theorem sources, trust settings, mutation registries and acceptance predicates are unchanged.

Validation so far: all 121 incoming non-merge commits and the new repair commit pass strict per-commit design certification; TOML parsing, PowerShell syntax and whitespace checks pass. The earlier accepted checkpoint has a recorded Windows aggregate pass. The new candidate's Linux Lean gate and Reproduce artifact checks remain required and pending; this PR must not bypass protection. The local focused stack experiment is queued behind the shared native build slot. No new Linux success is claimed before those results.

patternscientist and others added 30 commits August 9, 2026 00:42
The 2026-08-09 fresh-blind audit returned NOT_ACCEPTABLE. Every blocking finding
was reproduced here before being fixed.

210 is an upper budget, not exact cost: the theorem is _cost_le_, and a guarded
invalid query is Costed.pure none with cost 0. Corrected on
PAPER_CLAIM_CORRESPONDENCE.md:7 - which said cost 210 while citing an alias
named ...Le210 - and on artifact/CLAIMS.md:82, which the audit did not cite.

The defect originated in this project's own commissioning prompt, whose section
2 stated exact cost and handed that to the auditor as the target. Corrected, and
it now names the _cost_le_ theorem and the zero-cost invalid query.

Four gates had demonstrated false negatives, two of them gates this project
wrote and claimed to have injection-verified. Both failed the same way: the
injection tested the shape the author imagined, not the space of failures.
hub_closure_lint parsed ^import only, so an indented import was invisible;
constant_sync_check asked only whether the numeral appeared anywhere, so
corrupting one of five 427s passed; claim_drift_scan exited 0 on a missing scan
root; check_paper missed conventional-RAM phrasings. gate.ps1 also never invoked
check_paper at all.

Each fix is verified against the auditor's own mutation. Extending the paper
patterns initially broke on RELATED_WORK_LEDGER describing Fischer and Heun
correctly; the fix taught the attribution allowance that markdown ledgers cite
with a bib key in backticks, matched against keys parsed from references.bib.

RC-02 is not discharged as commissioned, so WDD-20260807-014 is void by its own
terms; the corrected wording restores it without any Lean change.
DD-20260809-095, WDD-20260809-028.

Co-Authored-By: Claude Fable 5 <[email protected]>
The audit's P1-2/RC-10 finding, reproduced before fixing. rmq.tex said in the
abstract that Stage A has been accepted and later that it is under a feasibility
gate and neither accepted nor rejected. Three passages asserted the result is
stated nowhere else than Section 9, while the allocated-bits entry of Section 3
states the capacity bound outright.

Now one status throughout - accepted in the repository, not yet absorbed into a
theorem environment - and a containment claim that is accurate rather than
aspirational: stated in exactly two places, the allocated-bits entry and Section
9, with all three assertions corrected to match.

THEOREM_LEDGER called the packed 210 logical fuel (charged trace events), which
describes the other quantity. It now names the packed one as a structural
countdown and records that independence holds at declaration and proof-term
level, not module-closure level.

EVIDENCE_MATRIX's frozen requirement asserts the invariant Section 3 falsifies.
The text is frozen so an appended entry records that it does not hold, and why:
the violation was created by the same commit that retracted the earlier false
denial. Repairing one claim contradicted another.

check_paper -SelfTest PASS; latexmk exit 0, zero undefined refs, 15 pages;
git diff --check clean; strict claim-drift unchanged.

Edits made through exact-string replacement, not Python str.replace - writing
\ref in a Python replacement emits a carriage return and silently corrupts LaTeX
cross-references. DD-20260809-096.

Co-Authored-By: Claude Fable 5 <[email protected]>
The remaining item - promoting the packed result into RMQPaper - changes the
Lean import graph and needs a full build. Starting it at the end of a long
stretch is how the union-find cordon was corrupted and reverted earlier today.

RC1_CORRECTION_HANDOFF.md records what a resumer would otherwise rediscover:
which auditor items are closed and how each was verified; that WDD-20260807-014
is currently void by its own terms; that RMQPaper's closure contains zero
PackedCellProbe modules; the import chain making module-level 210-independence
false while declaration-level holds; that the base repin goes last; and that the
next tag must not begin with v.

Two items are left explicitly unresolved rather than papered over: promoting the
packed result grows the reviewer surface the owner wants reduced, which needs a
design decision rather than a silent mid-edit choice; and one claim in the
parallel review is wrong - it reports no print axioms for the packed capstone,
which exists at scripts/axiom_check.lean:1232. WDD-20260809-029.

Co-Authored-By: Claude Fable 5 <[email protected]>
RMQPaper's closure was 153 files with zero PackedCellProbe modules, so the paper
artifact root exported the charged-trace 210 story while the claim map named the
packed theorem as the accepted claim. A reviewer asking which import yields the
paper's theorem got two answers.

Adds two aliases to RMQ/Headlines/RMQ.lean following its existing convention,
and points the claim map at the public alias so the documented and importable
identities are the same string. The alias is added to headline_axiom_check too -
it was already audited from axiom_check.lean:1232, but it is the paper's
headline claim and now paper-exported, so its trust story belongs in the
inventory a reviewer runs. It depends on propext, Classical.choice, Quot.sound
and nothing else.

The docstring carries the three rules this result is repeatedly over-read
without: 427 bounds attempted probes and is an upper bound; the result is
cell-probe, not word-RAM time; and its 210 is the controller's structural
countdown, not the charged-trace 210 exported a few lines above.

Escalated rather than absorbed: this grows the closure 153 -> 204 files and
139,054 -> 190,529 lines, a 37% increase in the reviewer surface the owner wants
reduced. Correctness first - a paper root advertising the wrong theorem is a
defect, a large closure is a cost - but the resolution is likely a separate
minimal paper root, which is an owner decision. DD-20260809-097.

Co-Authored-By: Claude Fable 5 <[email protected]>
Touching a gate script requires a workflow-log entry; the promotion commit
added a #print axioms line to headline_axiom_check.lean without one.

Records why the duplicate audit is deliberate: axiom_check.lean is the
exhaustive inventory, headline_axiom_check.lean is the short one covering the
claims the paper actually makes. The packed capstone became a paper-exported
headline claim in DD-20260809-097, so its absence there was a gap of the same
class as the RMQPaper closure defect. Also records that the parallel review's
claim that no #print axioms existed for it was wrong.

Co-Authored-By: Claude Fable 5 <[email protected]>
Marks 4.1 done with the measured closure growth (+51 files, +51,475 lines,
+37%) and states plainly that the separate-minimal-root resolution is an owner
decision that was not settled in the promotion commit.

Co-Authored-By: Claude Fable 5 <[email protected]>
The ledger's claim that the packed 210 references neither queryCost nor
nonSyntheticWeight was prose about a proof term. scripts/independence_check.lean
now walks the transitive constant closure of the countdown theorem's type and
value and fails if either appears: 1855 constants, neither present. Wired as
gate step 3b.

Scope matches the ledger deliberately - the property is declaration- and
proof-term-level, not module-closure-level, since the packed module's
compilation closure does reach the charged declaration.

Three vacuity guards, two of which exist because injection broke the first
version. Skipping proof terms left the type-reachable control green while the
target closure collapsed 1855 -> 16 and still passed; making the walk
non-transitive left both controls green because both are shallow, and only the
closure floor caught it at 74 < 500. WDD-20260809-017.

Co-Authored-By: Claude Fable 5 <[email protected]>
Notes the two things a future script needs: RMQ modules shadow Lean.Name so
metaprogramming identifiers must be fully qualified, and import Lean is safe in
scripts/ but must not enter a library module. Also records that the walker is
reusable for any future 'X does not depend on Y' claim.

Co-Authored-By: Claude Fable 5 <[email protected]>
P3-1a: bpChunkedCrossBlockCloseCostedWithRankSeed_cost_le_principled accepted an
unused close-position premise. Removing it exposed that the identical premise on
canonicalLcaCloseCostedWithRankSeed_cost_le and _cost_le_principled existed only
to feed it - one decorative hypothesis chain across three theorems, now stated
without it. Strengthening: conclusions and quantifiers untouched, so every frozen
row citing them still discharges. Disclosed in each docstring the way B6 REQ-B6-09
disclosed its hsameBlock addition. Checked that B6_SAMEBLOCK_ACCEPTANCE_MATRIX and
PAPER_MODEL_ADEQUACY cite the conclusion rather than the hypothesis list.

Also corrects a docstring the audit did not catch: the cap was said to require
'the genuine close-position bounds', plural. It requires exactly one.

P3-1b: the cost-algebra comment called the component caps 'tight'. They are <=
bounds, and the aggregate 210 has no attainment witness - only the interior 33
does. The comment now says so and says not to reintroduce 'tight' without a
theorem exhibiting an attaining execution.

Also strips a trailing blank line at EOF in DESIGN_DECISIONS.md that failed the
Artifact Reproducibility whitespace check on c140d68. That run reached GATE PASS,
including the new independence check, and failed only on this. DD-20260809-099.

Co-Authored-By: Claude Fable 5 <[email protected]>
68 is cited across three result documents and the manuscript as 'the fixture run
issues 68 attempted probes', but lived only as a local have inside one proof -
nothing outside it would have broken had it drifted. Now egcpFixtureTraceLength,
derived from egcpFixtureTraceAddresses so the length cannot disagree with the
literal address list, with the former local have routed through it. Added to
axiom_check; propext and Quot.sound only.

Both the docstring and the inventory comment state what the number is not: it is
= for one pinned fixture and is NOT an attainment witness for 427, which remains
an upper bound with no execution known to attain it.

Field 32 is an eta equation closed by rfl, whose content is entirely in the
elaboration - it pins the controller's arity and argument types, so the
controller cannot take xs, a shape, or an oracle. The audit's point was that it
reads like the semantic no-hidden-input theorem. The field is sound; the way it
invited being cited was not. Its docstring now says what it does not establish
and points at fields 33 and 34, which carry the semantic content.

Proof note: simpa exhausts the isDefEq heartbeat budget by trying to evaluate
the run term; raising maxRecDepth misdiagnoses it. DD-20260809-100.

Co-Authored-By: Claude Fable 5 <[email protected]>
Follows the B6 REQ-B6-08 precedent of making trust evidence durable in the
inventories. Kept out of headline_axiom_check deliberately: that list is the
claims the paper makes, and diluting it would cost the one-screenful property
that makes it worth running. WDD-20260809-018.

Co-Authored-By: Claude Fable 5 <[email protected]>
All nine :NNN citations in THEOREM_LEDGER.md resolved against the tree. Seven
correct. L-PACK-01's producer :702 drifted to :723 from this round's field-32
docstring. L-UB-06's :9349 was already wrong at the pinned base commit e3362d4,
where the theorem sat at :8261 - about 1,090 lines off, not introduced by any
recent change and not caught by the fresh-blind audit.

Recorded in EVIDENCE_MATRIX rather than quietly fixed, because the second case
shows a pinned base commit does not make a citation right: a reviewer following
:9349 at the exact commit the ledger names lands in unrelated code. Nothing
checks these; they are prose shaped like references.

Also rewrites the handoff's base-repin section, which understated the task. The
pin has two roles - a substrate statement that must move, and 31 per-row
ACCEPTED_BASE records that assert verification against a tree. Restamping the
latter without re-verifying is this project's recurring defect class.

Co-Authored-By: Claude Fable 5 <[email protected]>
RC1_CORRECTION_HANDOFF.md is workflow-classified, so every commit touching it
must also update WORKFLOW_DESIGN_DECISIONS.md. Commits 2bd03d8 and 9389655 did
not, and CI failed on both.

Local verification missed it because it used -Base HEAD~2/HEAD~3, spanning the
whole batch just committed - and some commit in that range did update the file,
so the range looked compliant. CI uses -Base HEAD~1: each commit against its own
parent. A range that is collectively compliant can contain commits that are not.

Same shape as the gate defects the audit found: a verification that resembles the
real check closely enough to feel conclusive while testing something weaker.
WDD-20260809-019.

Co-Authored-By: Claude Fable 5 <[email protected]>
The first sweep matched :NNN only on lines also naming a .lean path, but the
File: line comes after Declaration: in every row, so 18 of 27 citations were
invisible. A second sweep attributed citations to the nearest preceding .lean
mention and manufactured three past-EOF defects that did not exist. The third
parses rows and resolves each citation against every file named in the row.

24 resolve. Three were wrong: L-PACK-01 and L-ARCH-01 both cite the capstone
producer at :702, displaced to :723 by this round's field-32 docstring, and
L-UB-06's :9349 was already wrong at the pinned base commit by ~1,090 lines.
L-ARCH-01 was missed by both earlier sweeps.

Records the rule: a grep over a structured document is sampling with an unknown
miss rate, not verification. Fine for locating things, not as the basis for a
universal claim, because the miss rate is invisible in a clean result.
WDD-20260809-020.

Co-Authored-By: Claude Fable 5 <[email protected]>
DD-20260809-101. Companion to WDD-20260809-020: that entry records how the audit
method failed twice, this one records what changed on the paper surfaces.

Three citations corrected, 24 unchanged. No proposition, declaration name, or
status changed. Notes the consequence for the pending repin: ACCEPTED_BASE is
defined as 'kernel-checked declaration present on the base commit', so repinning
does require moving the per-row Commit: fields - but the basis is a green build
plus axiom inventories confirming each named declaration still exists, not a
licence to trust line numbers, which no build checks.

Co-Authored-By: Claude Fable 5 <[email protected]>
Moves the substrate from e3362d4 to 688c54a, the last commit of the RC-1
correction round with both CI workflows green.

Reading the ledger header settled a question this round had got wrong:
ACCEPTED_BASE is defined as 'kernel-checked declaration present on the base
commit' - a claim about the pinned tree, not a historical acceptance date. So
the 29 per-row Commit: fields move with the substrate pin, and each move
restates a claim. Restating a claim is not done on faith, so at 688c54a: lake
build RMQ exit 0; axiom_check exit 0 with no sorryAx or ofReduceBool; the new
ledger_decl_check confirms all 53 cited declaration names are present; all 27
line citations resolve after three corrections.

Deliberately not moved: three mentions of the old base in EVIDENCE_MATRIX and
one in THEOREM_LEDGER, which state what was true at the previous pin. A blanket
replace would have rewritten history to say the old audit happened at a commit
that did not exist yet. All 38 occurrences were classified individually.

L-ARCH-01 gains an Amended line rather than a silent restamp: this round
retracted its 'logical fuel' gloss on the packed 210. The proposition was not
re-audited and the row now says so.

Adds scripts/ledger_decl_check.lean as gate step 3c with a count floor, a
negative control, and deliberately wide imports - the last because its first run
reported two phantom absences that were really RMQ/Headlines.lean being outside
every artifact root's closure. DD-20260809-102, WDD-20260809-021.

Co-Authored-By: Claude Fable 5 <[email protected]>
Nine tag references retargeted. Adds RC-11, artifact-root correspondence: take
the theorem PAPER_CLAIM_CORRESPONDENCE names as the accepted claim and check
that importing the paper artifact root actually gives you it. That is the defect
this round fixed - RMQPaper's closure held zero PackedCellProbe modules while the
claim map named the packed theorem - and no existing row would have caught it,
since RC-10 compares the manuscript to the theorems rather than asking which
import yields them.

Report section updated to RC-01..RC-11.

Co-Authored-By: Claude Fable 5 <[email protected]>
Writes the 2026-08-09 round-log entry, which was owed by the standing default
that every audit round is logged. Records the three findings worth carrying: the
exact-cost defect originated in this project's own commissioning prompt; two of
the four broken gates were ones this project wrote and claimed to have
injection-verified; and the sharpest finding came from the non-blind review
rather than the blind audit, which is why RC-11 now exists.

Also records the round's own recurring defect - three verifications that stood
in for weaker properties than claimed, all after an audit whose subject was
exactly that - and the L-UB-06 citation that was wrong at the pinned base commit
itself by ~1,090 lines.

Rewrites the handoff as a short resume card: the RC-2 audit is uncommissioned,
WDD-20260807-014 stays void until RC-02 discharges in its corrected form, and
the minimal-paper-root question is an open owner decision.

Co-Authored-By: Claude Fable 5 <[email protected]>
Every finding independently reproduced first; none were wrong.

P1-01 claim honesty: PAPER_THEOREM_MAP said the charged-trace cost 'is exactly
210' while the same file disclaimed attainment; RELATED_WORK_AND_LIMITATIONS and
paper/THEOREM_LEDGER claimed a 'tight component-wise cap' when only the interior
33 has an attainment witness. This was our own incomplete fix - DD-20260809-099
retracted exactly this in the source comment three days earlier and never synced
the surfaces repeating it, including a file edited in that same commit.

P1-02: README and PUBLICATION_STRATEGY said payload construction 'is accounted
separately', asserting an accounting that does not exist. Now stated as unproved
and excluded from the bound, matching ledger row L-OPEN-01.

P1-03: the Windows ownership path closed the kill-on-close job and waited on the
root alone, while POSIX waits for the whole group - so a grandchild could outlive
the assertion that the tree was dead. Adds a real descendant barrier that
enumerates job members before closing and waits for them. Every CI job ran
ubuntu, so this path had no coverage at all; two standalone ownership jobs now
run on windows-2022 and ubuntu-24.04 without needing a Lean build. An
inconclusive barrier run exits nonzero rather than reporting a pass.

P1-04: applied the novelty log's repairs, which documented each defect with an
exact replacement and had never been applied - the Tanaka conflation, the
priority overreach, Fischer-Heun mislabelled systematic, the cell-probe
convention mis-sourced to a self-declared word-RAM paper, and the invented /HOL
title fragment. Four load-bearing bib entries added; ledger rows corrected. One
deviation: the log's priority paraphrase trips our own priority-claim detector,
correctly, so the sentence reports their belief instead of restating 'the first'.

P2-01: the independence forbidden set held the two names the ledger sentence
uses; a proof could reach the charged cost through the algebra or its equalities
and pass. All eight now listed. The three original injections tested the
collector, never whether the set was the right set.

P2-02/P3-01: field 27's 'never a stored numeral' is not entailed by its
extensional equalities - scoped to what it proves; field 15 said 'both decoded
header fields' when the header stores one.

Prevention: a claim-drift term for exact/tight formulations of 210 and 427,
injection-verified against the audited wording rather than an imagined one.

DD-20260812-103, WDD-20260812-024/025/026.

Co-Authored-By: Claude Fable 5 <[email protected]>
The first Windows barrier introduced a second defect. Stop-RMQWindowsOwnedJob
closes the handle then throws on survivors; the callers zeroed their handle
AFTER the call, so a throw left a non-zero handle and finally invoked the
barrier again, failing CloseHandle on an already-closed handle. The surfaced
error became 'The handle is invalid', replacing the true survived-cleanup
diagnosis. The first full-gate run failed exactly this way, at
CLEAN-BASELINE/PORTABILITY rather than the deadline control.

Callers now zero their own copy before invoking the barrier, so a throw cannot
cause a second close and the real error survives. WDD-20260812-027.

Co-Authored-By: Claude Fable 5 <[email protected]>
The second gate run failed with "The property 'Count' cannot be found on this
object". A PowerShell pipeline matching nothing yields $null, not an empty
array, and $null.Count throws - so the wait loop failed whenever NO member
survived, i.e. on the healthy path. A barrier written to detect survivors
crashed precisely when there were none.

Adds Get-RMQAliveProcessIds, wrapped in @(...) at every call site, and pins the
edge cases in Invoke-RMQOwnedProcessCollectionSelfTest: null, empty, all-dead,
one-live, mixed, zero-handle barrier, and a live job with no survivors. The
standalone -SelfTest entry runs them, so the new Windows and POSIX CI jobs cover
them in about a minute.

Three defects in this one function across two days - the missing wait, the
handle released after the throw, and this. All three found by running it, two of
them only by a 90-minute aggregate gate. WDD-20260813-028.

Co-Authored-By: Claude Fable 5 <[email protected]>
Pre-existing defect, newly visible. With the M1 deadline control repaired the
gate reached the topology regression for the first time and failed with 'sleeper
child PID receipt was not written'. That harness bounded its sleeper at 5s while
the identical M1 control uses 20s; the sleeper must complete two sequential
PowerShell startups - its own, then the grandchild it spawns - before writing the
receipt the assertion requires.

git log shows no commit from this round touched that file. It was hidden because
M1 failed first and aborted the gate, so nothing downstream of M1 had ever run to
completion on Windows.

Two divergent implementations of the same control with a 4x budget difference and
no comment is the shape that hides this. WDD-20260813-029.

Co-Authored-By: Claude Fable 5 <[email protected]>
Writes the 2026-08-12/13 round-log entry and RC2_CORRECTION_HANDOFF.md.

Corrects a claim committed earlier in this round: WDD-20260813-029 said the
aggregate gate had never run to completion on Windows. The repository's own
records contradict it - a Windows deadline-control PASS at 98.3s, and a full
gate exit 0 in 3101.473s across all 16 topology cases. The claim was inferred
from two consecutive failures, which does not license 'never'.

The accurate account: the missing barrier made the control a race that usually
wins, since closing a kill-on-close job kills the tree almost at once and the
assertion ran after WaitForExit on the root. So Windows receipts mostly said
PASS and a real defect looked like a flake. What made that survivable is the CI
gap, which is separately verifiable - every job ran ubuntu-24.04.

WDD-20260813-030.

Co-Authored-By: Claude Fable 5 <[email protected]>
Nine tag references. Adds owned_process_tree.ps1 -SelfTest to the gate table -
it was unlisted, so an auditor enumerating gates would not have found the layer
whose defect produced P1-03 - and a note that gate.ps1 must be run to completion
with the platform named, that its ownership layer has two implementations of
which only one runs per host, and that an INCONCLUSIVE self-test is uncovered
rather than passing.

Discloses the sequencing: the Windows GATE PASS was captured on 60c81ae and this
commit changes one docs/internal markdown file, so the tagged tree differs from
the gate-verified tree by that file. CI re-runs the full gate and both ownership
jobs on the tagged commit. WDD-20260813-031.

Co-Authored-By: Claude Fable 5 <[email protected]>
Answers P1-2, P1-3, P2-1, P2-3, P2-4, P3-1 of the 2026-08-15 fresh-blind audit.
Every finding reproduced before repair.

P1-2: gate.ps1 ran the M1 registry and NEITHER EG-CP replay, so the required
gate's mutation coverage excluded the release headline. Both now run from the
aggregate with propagated exit codes. This survived two prior audits because
every individual piece was green - nobody asked whether the gate contained the
suites.

P1-3: six topology fixtures timed out at 300s on the auditor's runner, with a
measured slow path of 298.145s. The topology pair moves to 900s with the
derivation recorded beside it; M1 stays at 300s and now states why. Second
deadline defect in that file - fixing the sleeper bound without asking what else
was chosen rather than derived is what left this one.

P2-1: the independence checker targeted the structural equality while the
published derived_cap_le_427 is fed by packedReviewerRunAgainstMemory_trace_
length_le_427. Now checks all three cap suppliers. Third defect in that file:
collector, then forbidden set, now target.

P2-3: RunAxiomCheck is a whitelist, not a two-name blacklist.
P2-4: the strict scanner suppresses allowed hits - it leaked ~1,579 lines of
prior audit reports to a blind auditor after being identified last round.
P3-1: ledger counts corrected and now derived by check_paper, which also stopped
REQUIRING the pending marker it should have been catching.

WDD-20260816-032.

Co-Authored-By: Claude Opus 5 <[email protected]>
Answers P1-1, the finding that drove the NOT_ACCEPTABLE verdict. At the release
tag, import RMQPaper gave a kernel-exported 427-probe capstone while rmq.tex
pinned to an ancestor, titled Section 9 provisional, stated an unspecified
constant C, and carried an ARCHITECTURE_RESULT_PENDING marker.

Section 9 is now 'A packed cell-probe architecture' with a theorem environment
stating the result at 427, replacing the targetstmt. Four further assertions
that the result was unabsorbed - header comment, abstract, contributions,
conclusion - became false once the theorem landed and are fixed.

The theorem carries its three non-licensed readings inline: 427 bounds
ATTEMPTED probes and is an upper bound (fixture issues 68); cell-probe, so not
word-RAM or preprocessing time; and its 210 is the structural countdown,
independent of the charged budget.

This was on the coordinator's known-open list rated as editorial. That was
wrong - at a release candidate it is a release-blocking mismatch.
DD-20260816-105.

Co-Authored-By: Claude Opus 5 <[email protected]>
The 2026-08-15 fresh-blind audit failed RC-10 because this substrate was
pinned to an ancestor of the release tag: at the release commit `import
RMQPaper` supplied the 427-probe capstone while the manuscript still called
it a future editorial insertion. The paper and the artifact did not identify
the same claim.

The theorem absorption landed in the previous commit. This moves all 38
full-SHA pins across the substrate from `688c54a3...` to `0665b494...` so
the 29 ACCEPTED_BASE rows -- whose status is DEFINED as "kernel-checked
declaration present on the base commit" -- restate their claim about the
tree that actually carries it.

Mentions of `688c54a3` and `e3362d4` that survive are deliberate: they
record what was true at earlier pins.

Co-Authored-By: Claude Opus 5 <[email protected]>
…816-033)

The P2-4 entry claiming this leak was closed was false when written. Two
attempts had failed, both exiting 0:

1. Suppressing `allowed` output -- the leaking hits are labelled `review`, so
   104 lines of prior audit reports still printed.
2. A `Get-ScanFiles` filter using `-like "*\audit_reports\*"` -- backslash is
   not an escape character in a -like pattern so it matched nothing, and that
   function feeds only the required-attribution pass, never the term scan that
   produces the leak.

The measurement after attempt two was byte-identical to before it. A filter
that matches nothing is indistinguishable from one that works, except by count.

Fixed in both enumerations: rg globs for the term scan, the PowerShell
predicate for the attribution pass. 1,579 -> 1,160 hits; 339 -> 0
process-record citations; -IncludeProcessRecords reproduces 1,579 exactly.

`-SelfTest` now asserts both that no emitted line's PATH FIELD cites a process
record, and that the exclusion removes a nonzero number of hits -- the second
being the only signal that would have caught attempt two. Verified by
injection. gate.ps1 runs it before the strict scan, since this gate's output is
the contamination channel and blind auditors are required to run it.

Co-Authored-By: Claude Opus 5 <[email protected]>
patternscientist and others added 29 commits September 11, 2026 13:35
Reproduced the aggregate-gate claim-scan failure on the unchanged
NATIVE-1 candidate 4edb1e1 with the unchanged scanner and policy: the
strict default-root scan exits 1 with 17 unapproved matches (14 in
commands/final-static-command.json, 3 in commands/final-claims-public.json)
and the self-test exits 1 because it cannot read a hit count from both runs.

Freeze the repair matrix before any receipt, manifest, verifier or
attribute change: the four repair rows and the three restated replay rows
are copied verbatim from the governing prompt (byte-checked), the 31
inherited rows and 4 continuation obligations are referenced by their
frozen sources with preservation checks, and the verification ledger is
fixed. Record the decision to archive scanner-output receipts as exact
gzip blobs in WDD-20260913-NATIVE1-R1-001.

Co-Authored-By: Claude Opus 5 <[email protected]>
…ip blobs

Replace the twelve receipts under docs/internal/extensions/native1/commands/
whose base blobs contain claim-scanner result lines with single-member gzip
archives at the same path plus .gz. Each archive decompresses to the exact
Git blob bytes at 4edb1e1 (8,785,885 bytes, 4,571 result lines, 1,206,228
archive bytes). The scanner, claim policy, globs, allowlists and exclusions
are unchanged; ripgrep skips the binary archives while traversing the scan
roots, so the historical output leaves the scanned text corpus.

Add repair-r1/RECEIPT_ARCHIVES.json (per-file original path, base blob id,
blob SHA-256 and length, result-line count, archive path, archive SHA-256 and
length, decompressed length, referring files), verify_receipt_archives.py
(recomputes every value from the archives and git cat-file on the base and
rejects missing, duplicate, extra and mismatching entries), and the
versioned 19-case control runner with its mutation/hold helper. Mark each
archive binary with an exact .gitattributes line. Existing references to
the original names are not rewritten; the manifest resolves them.

Co-Authored-By: Claude Opus 5 <[email protected]>
On the repaired commit d0b4cef the unchanged strict default-root claim
scan exits 0 (1907 hits, 0 strict failures) and the scanner self-test
exits 0 (exclusion removed 431 hits), after the same mutex session
reproduced the base failure. The 19-case receipt-archive control runner
passes under Windows PowerShell 5.1 with restoration digests equal; the
preservation checks, diff checks, strict design checks and trust hygiene
scans pass.

Add the worker report (Status: INCOMPLETE, awaiting coordinator
certification), the committed controls receipt, an evidence appendix after
the byte-preserved frozen matrix, and a WDD verification note. No gate
result or acceptance is claimed.

Co-Authored-By: Claude Opus 5 <[email protected]>
Merge of 3832502 (codex/bv-1-fully-charged-rank-select), accepted at the lane rung by the coordinator.

Acceptance record: extension-coordination-20260911/claude-coordinator-20260912/BV1_COORDINATOR_ACCEPTANCE.md
Aggregate gate on the exact lane tip: bv1-gate (PASS, 13,568.9 s).
Audit: BV-1-A1 fresh blind audit (63,613 B, SHA-256 BBA6ED82...).

Conflicts in the append-only ledgers (docs/DIGESTION_LOG.md, docs/FAMILY_SUMMARY.md,
docs/internal/DESIGN_DECISIONS.md, docs/internal/WORKFLOW_DESIGN_DECISIONS.md) and lakefile.toml
are resolved as the current bytes followed by this lane's appended bytes, in lane order; each lane's
change to those files is a pure append to the base blob (checked before resolution). The BV-1
lakefile bytes stay as the prefix; the line-ending decision INT-D1 is left to the owner.

Integration candidate composed under owner approval of 2026-09-18 (step 1 of INTEGRATION_PLAN_DRAFT.md),
with LB-1 and OPT-1 squashed instead of merged for the per-commit design check;
not merged to main, not pushed.

Co-Authored-By: Claude Opus 5 <[email protected]>
…(squash of 7f21dc8)

Squash of 7f21dc8fa843a0f63025624fb3ad05a3bef234ae (codex/lb-1-variable-payload), accepted at the lane rung by the coordinator.
Lane history (kept on the lane branches): codex/lb-1-variable-payload (0bbbe8c matrix freeze, d6dabbe, 5033ce5, 7f21dc8).
Squash-merged, following the PRE-1 precedent (ruling R-S7-3), because lane commits 5033ce5 and 7f21dc8
fail the per-commit design check on their own under the checker main will carry, and main certifies
every non-merge commit (WDD-20260817-079; the retrospective record is pinned to eight pre-policy
commits). The squashed change carries every ledger entry of the lane and passes the check.

Acceptance record: extension-coordination-20260911/claude-coordinator-20260912/LB1_COORDINATOR_ACCEPTANCE.md
Aggregate gate on the exact lane tip: lb1-gate (PASS, 12,037.7 s).
Audit: LB-1-A1 fresh blind audit (80,118 B, SHA-256 F08544F2...).

Conflicts in the append-only ledgers (docs/DIGESTION_LOG.md, docs/FAMILY_SUMMARY.md,
docs/internal/DESIGN_DECISIONS.md, docs/internal/WORKFLOW_DESIGN_DECISIONS.md) and lakefile.toml
are resolved as the current bytes followed by this lane's appended bytes, in lane order; each lane's
change to those files is a pure append to the base blob (checked before resolution). The BV-1
lakefile bytes stay as the prefix; the line-ending decision INT-D1 is left to the owner.

Integration candidate composed under owner approval of 2026-09-18 (step 1 of INTEGRATION_PLAN_DRAFT.md),
with LB-1 and OPT-1 squashed instead of merged for the per-commit design check;
not merged to main, not pushed.

Co-Authored-By: Claude Opus 5 <[email protected]>
Merge of e80da1a (codex/native-1-r1-claim-receipts), accepted at the lane rung by the coordinator.

Acceptance record: extension-coordination-20260911/claude-coordinator-20260912/NATIVE1_COORDINATOR_ACCEPTANCE.md
Aggregate gate on the exact lane tip: native1-gate-r1 (PASS, 16,568.3 s).
Audit: NATIVE-1-A1 fresh blind audit (91,524 B, SHA-256 5CF155B5...) on 4edb1e1, carried by the evidence-only repair NATIVE-1-R1.

Conflicts in the append-only ledgers (docs/DIGESTION_LOG.md, docs/FAMILY_SUMMARY.md,
docs/internal/DESIGN_DECISIONS.md, docs/internal/WORKFLOW_DESIGN_DECISIONS.md) and lakefile.toml
are resolved as the current bytes followed by this lane's appended bytes, in lane order; each lane's
change to those files is a pure append to the base blob (checked before resolution). The BV-1
lakefile bytes stay as the prefix; the line-ending decision INT-D1 is left to the owner.

Integration candidate composed under owner approval of 2026-09-18 (step 1 of INTEGRATION_PLAN_DRAFT.md),
with LB-1 and OPT-1 squashed instead of merged for the per-commit design check;
not merged to main, not pushed.

Co-Authored-By: Claude Opus 5 <[email protected]>
…f183dba)

Squash of f183dbafb5afd66cdfd855eb2a025613e59e48ae (codex/opt-1-r2-claim-receipts), accepted at the lane rung by the coordinator.
Lane history (kept on the lane branches): codex/opt-1-packed-compiler (aecf4a5) -> codex/opt-1-r1-replay-certification (4cc9501) -> codex/opt-1-r2-claim-receipts (f183dba).
Squash-merged, following the PRE-1 precedent (ruling R-S7-3), because lane commits 3b82967 and f183dba
fail the per-commit design check on their own under the checker main will carry, and main certifies
every non-merge commit (WDD-20260817-079; the retrospective record is pinned to eight pre-policy
commits). The squashed change carries every ledger entry of the lane and passes the check.

Acceptance record: extension-coordination-20260911/claude-coordinator-20260912/OPT1_COORDINATOR_ACCEPTANCE.md
Aggregate gate on the exact lane tip: opt1-gate-r2 (PASS, 11,016.1 s).
Audit: OPT-1-A2 fresh blind audit (85,760 B, SHA-256 0B783074...) on 4cc9501, carried by the evidence-only repair OPT-1-R2.

Conflicts in the append-only ledgers (docs/DIGESTION_LOG.md, docs/FAMILY_SUMMARY.md,
docs/internal/DESIGN_DECISIONS.md, docs/internal/WORKFLOW_DESIGN_DECISIONS.md) and lakefile.toml
are resolved as the current bytes followed by this lane's appended bytes, in lane order; each lane's
change to those files is a pure append to the base blob (checked before resolution). The BV-1
lakefile bytes stay as the prefix; the line-ending decision INT-D1 is left to the owner.

Integration candidate composed under owner approval of 2026-09-18 (step 1 of INTEGRATION_PLAN_DRAFT.md),
with LB-1 and OPT-1 squashed instead of merged for the per-commit design check;
not merged to main, not pushed.

Co-Authored-By: Claude Opus 5 <[email protected]>
…544cd)

Squash of 74544cd24b476f72765caebdff6ea155514e5bb4 (codex/pre-1-r2-consumer-markers), accepted at the lane rung by the coordinator.
Lane history: codex/pre-1-packed-preprocessing (contract phase, builder stages S1-S8, final
candidate 84ae12f) -> codex/pre-1-r1-claim-receipts (a0c93e9, claim-scan evidence archives) ->
codex/pre-1-r2-consumer-markers (74544cd, fail-closed consumer markers, halts and Run.Safe controls).
Squash-merged per coordinator ruling R-S7-3 because single lane commits (75a6301, 6ccfb5c, fa8e34e,
02aa945, 3ce9b89) fail the per-commit design check on their own; the squashed change passes it.

Acceptance record: extension-coordination-20260911/claude-coordinator-20260912/PRE1_COORDINATOR_ACCEPTANCE.md
Aggregate gate on the exact lane tip: pre1-gate-r2 (PASS, 13,939.8 s).
Audit: PRE-1-A2 fresh blind audit (53,979 B, SHA-256 bda5f414...) on 84ae12f and PRE-1-A2C continuation audit (66,433 B, SHA-256 a5a40ecf...) on 74544cd.

Conflicts in the append-only ledgers (docs/DIGESTION_LOG.md, docs/FAMILY_SUMMARY.md,
docs/internal/DESIGN_DECISIONS.md, docs/internal/WORKFLOW_DESIGN_DECISIONS.md) and lakefile.toml
are resolved as the current bytes followed by this lane's appended bytes, in lane order; each lane's
change to those files is a pure append to the base blob (checked before resolution). The BV-1
lakefile bytes stay as the prefix; the line-ending decision INT-D1 is left to the owner.

Integration candidate composed under owner approval of 2026-09-18 (step 1 of INTEGRATION_PLAN_DRAFT.md),
with LB-1 and OPT-1 squashed instead of merged for the per-commit design check;
not merged to main, not pushed.

Co-Authored-By: Claude Opus 5 <[email protected]>
…ule for it

Owner decision INT-D1 (2026-09-19): the integrated build manifest uses LF line
endings like main. BV-1 had committed the file with CRLF on most lines and
pinned those bytes with `lakefile.toml -text` for its whole-file replay hash;
that identity cannot survive any integration, because the combined manifest
must carry every lane's [[lean_exe]] stanza. The attribute line and its comment
are removed; all other BV-1 byte-preservation rules stay. Parsed TOML content
is unchanged (tomllib before/after: same package, libraries and the same seven
ordered executable targets). Design record: DD-20260919-INT-001.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
The topology lint skips files whose whole text holds neither the snapshot
marker nor a removed spelling (verdicts unchanged; one run fell from about
1,590 s to seconds), and the PRE-1 builder gate checker builds the replay's
prerequisites under its own deadline before the replay starts, so a cold tree
(CI, a fresh worktree) no longer fails as inconclusive. WDD-20260919-INT-001.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
The packed-query replay runs fixtures with `lean --run`; on Linux the
interpreter overflowed the default 8 MiB main-thread stack ("deep recursion
was detected at 'interpreter'"), failing both required checks on the first CI
run of any PQ1-era commit. Windows reserves a larger stack, so local gates
never saw it. ci.yml and reproduce_artifact.sh now set a 1 GiB limit first
(measured to work under WSL). WDD-20260920-INT-002.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
@patternscientist
patternscientist merged commit c88d63b into main Sep 23, 2026
7 checks passed
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