tools/ci/kit-isa-check.sh disassembles every executable of a kit (objdump) and is red on any AVX-512 encoding (a zmm register, an EVEX opmask, an EVEX-only mnemonic); self-tested with a fake objdump; in the gate as a self-test, in merge-to-master.sh over any executable a landing adds under packaging/kits or bin, and for the shipper's cut gate over the kit. kill-by-name-check.sh rule 5: a pgrep -f or pkill -f pattern passes only when anchored on the exact command line (^/full/path or ^command), the bracket form, a variable, -x or -F; a bare path, a log name or a word is red; the tree reads clean under it. tools/ci/no-kill-shim/{pkill,killall} exit 97 with the pid-file rule when first in PATH (the one line for a shell rc is in the file; the founder's own shell is his to change). test-record.mjs refuses a batch that declares a cut without the binary's build-N:/srv path, its commit string read back equal to the manifest sha, and the kit check's clean line.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
tools/ci/int-suite.mjs writes the INT suite from docs/plans/igneum-2.0-master/traceability.json's integration_gates (the requirement verbatim as title and accept, source R1, NOT RUN, the owner per the coordinator's crosswalk) and regenerates at the merge like REV; the master's counting note is a registry-level note ("128 original test cases, 18 additional integration gates, 44 updated-stack closure requirements. These sets overlap and are not 190 independent tests."); REC-01's closure evidence (rule v4 on 12424341's line, mode recovery by the founder's ruling, both real-node lines PASS, FIN-02 PASS at 4089e3d31) is a dated note on FIN and on INT for INT-05 and INT-06, RUNNING until the beyond-window healing case runs natively. INT-17 in test-record.mjs: a batch cell that declares prereqs with any oracle, pinned keys or real-proof fixture missing is written BLOCKED with the missing ones named, never PASS; self-tested both ways.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
tools/fleet/box-prover.py point 6: each claimed segment is an eligible job and closes once as paid, expired (unpaid, held_expired) or cancelled (disk, export, cut, chain, timeout, shards, statement, sign, refused), active until then; the row carries outcome, cause, deadline, margin at the claim, seconds spent (wasted unless paid) and the deadline miss; the state carries the counters and the wasted seconds by cause; every close is a RESULT outcome line, the run ends with a RESULT ledger line.
tools/fleet/prover-outcomes.py: the report over state files and logs (a log from before the ledger is reconstructed from its RESULT lines; a state row wins over a log row): outcomes, paid completions (segments, shards, IGN, median end to end, median time to pay, median margin), missed deadlines by cause with the median miss (never negative, none on a stale tip), wasted work by cause, throughput per hour and the paid share of the seconds spent, the open jobs. --self-test to known numbers (known-failed first), run by the gate. tools/fleet/night.py sums the fleet's counters into its hourly row. docs/analysis/proving-outcome-ledger.md: the definitions and how to read the three ratios.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
merge-to-master.sh rebuilds the registry from master's copy whenever a landing carries any transform, then regenerates the REV suite from the merged tree's findings and dispatch (review-suite.mjs --write), replays every added batch, and replays every added note file (tools/ci/notes/<id>.json, {suite, text}, through test-record.mjs --note-file), then regenerates the harness page from the structurally merged map. The founder's two rulings ride as note files. test-record.mjs stamps a NOT RUN row only when its status or reason changes (every landing had been colliding on 39 untouched rows, the reference-apps lane's finding).
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
tools/ci/review-suite.mjs writes the REV suite from docs/analysis/review-2026-10-08-b/findings.json and dispatch.md: one case per required regression (REV-F01-1 onward), the regression line verbatim as title and accept, status NOT RUN, the owner lane from the dispatch table, the finding id and priority carried as fields; every unmapped case gets a NOT RUN reason in tools/ci/test-map.json naming its owner lane; the gate's check refuses a registry whose REV suite drifts from the findings. The founder's 19:57 rulings on F04 (the recovery lock kept, always labelled recovery) and F14 (the public miner from 2.0.2 without remote jobs; the lab build for our fleet) are dated notes on the FIN, UX and OPS suites through test-record.mjs --note, and resolved fields in F0. The harness page is regenerated.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Batch 201-7cfa422a-38351afd: node 7cfa422a (the miner base-unit fix, amended after 777214af's self-recursive connect failed to compile under the steward's read) green on the kaspad check and five suites on build-4 over the key-succession pairing; miner cut tip 38351afd (crate identical to 3c13a71c) green on pow and app on build-2. F0 names those pins and records the founder's 19:57 rulings on F04 (the recovery lock kept and always labelled recovery) and F14 (the public miner from 2.0.2 without remote jobs; the lab build for our fleet) as resolved. Tools: proof-rule-bypass-check.sh (F02: the test bypass cannot reach a release build; a cell of the node matrix from now, red until the proving lane's change lands); test-map-merge.py and the page regeneration at the merge (two lanes' cells no longer collide as text); push_race in merge-to-master.sh (a push that lost master's compare-and-swap retries without re-running the hook; twelve tries); review-suite.mjs (the REV suite generated from a review's findings and dispatch, written in the next commit once Review B is on master); test-record.mjs --note (a dated note on a suite, never an accept text).
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
GPU-01, GPU-03 and POW-08 take run_status RUNNING with the evidence rows on build-1 under /srv/artefacts/tas/p02-rows; PASS waits on the AMD cells, the 1080 Ti cell and the re-exported v6 packs.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The map gains harness:reference-apps-compat (EVM-02 to EVM-06, partial coverage named per case), harness:reference-apps-ver
(VER-03 to VER-06 and VER-08) and harness:reference-apps-ver-trust-anchor (VER-01 and VER-02, FAIL by design and disclosed).
Batches ra-20261008T1744-evm (22 of 22 rows on the 2.0 devnet, node 4cdcc488) and ra-20261008T1746-ver (evidence per case
under tools/reference-apps/ver/evidence) are recorded with node tools/ci/test-record.mjs --record; the harness map page is
regenerated; the registry rows move with their evidence (site/lc/verify-receipt.js rebuilt in this landing).
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Run 201-ef0f2ed8-2826f37e: node ef0f2ed8 (291ee6ae plus the 2.0.1 version bump) on the key-succession pairing, kaspad check and the five node-side suites green on build-4; the miner cut tip 2826f37e (app crate identical to 2ea7b43f), pow and app green on build-2; evidence at build-1:/srv/artefacts/tas/201-ef0f2ed8-2826f37e/. GOV-01's row takes F0 (docs/plans/igneum-2.0-f0-manifest.md) as its evidence through the batch f0-manifest-20261008-b (the earlier f0 batch landed before the replay existed and never recorded). The map splits the finality cells at the finality lane's ask: harness:finality-sim keeps FIN-08 (the model side), harness:finality-sim-fin02 carries FIN-02's simulator half, node:finality-realnode carries the node lane's real-node lines for FIN-02 and FIN-07.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
docs/plans/igneum-2.0-f0-manifest.md is the fixture F0 every case pins to: the identity pins as the steward read them on 8 October 2026 (the miner cut tip 2ea7b43f, the node roll sha ef0f2ed8, igneum-devnet-4, the object digest be5f4068, the class v5 freeze and its fingerprint, the roles and kits), the four fields main ruled on at 19:3x (P07's workload W as the pilot plan's shape; P00 and P08's fault model and thresholds as the finality spec's own at a1b3977a6; P10's study NOT RUN until unaffiliated participants are recruited, never a staff run; P02's AMD cells the 9070 XT and RX 7600 on PC 1, PARTIAL until a rented AMD cell exists), an unresolved-field register with owners and defaults, and the signing block for 23:30. GOV-01's row (through the batch f0-manifest-20261008, replayed at the merge) adds the manifest to its evidence path and stays RUNNING until the signatures are in.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The acceptance registry is a hot file: three landings in a row lost rule 26's race to another lane's rows during their own seven-minute gate. Now a registry landing carries its run batches as tools/ci/batches/<run id>.json (the files test-record.mjs --record took); merge-to-master.sh, for a branch that added batch files, lets rule 26 pass the registry path (the branch's copy is never what lands), and in the merge worktree takes master's copy of the registry, replays every added batch through the recorder (idempotent), commits the merge and runs the evidence rules on the merged result before the push. Self-test: a fixture where master gained a row after the branch point and the branch carries a batch; the merge lands with both rows. The batches: 200-417c4a57-b2 (the 2.0.1 gate, 30 cases RUNNING), review-harness-20261008T180034Z (POW-01's cross-check, all four anchor groups agree), p01-partb-20261008-01 (POW-06, three parsers, zero panics); the map gains crosscheck:review-harness and part B's command and coverage.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Pre-2.0 ledger ids pointed at 2.0 entries or dropped (M32 to D3, E19 to A7,
M4 to C1, P1/P3 to D5; E20, F7, M12 dropped); the dataset row and sentences
read the served dataset policy; engineering-log citations name
docs/bench-log.md; the node1-dn3 source notes gone; the earlier devnet named
in governance; the four words on /address, /proving and /scenes; the tx fee
sentence matches economics; provenance's SP1 sentence reads the current fact;
receipt capitals and the unlabelled timing dropped; the lock tile reads active
and total weight; TEAM-REPORTED labels on app, income, compatibility, build,
light and the dev fee row. New /docs page listing the 2.0 documents by their
master paths, wired into the build, nav, nav check, sitemap, capture and og.
docs/site/audit-2.0.md moves each fixed item into "What was rewritten".
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>