Commit graph

1700 commits

Author SHA1 Message Date
igneum-labs
ab7388f7ae Counter ASIC 3.0 node plan 6.9: the two stale integration tests (known red on the 0.3.20 pin, test-only), c631c64b first in the 0.3.21 order, the consensus crate run whole in every suite set
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 15:35:23 +00:00
igneum-labs
bbd3e7fc5b Counter ASIC 3.0 node plan 6.9: the 0.3.21 order as it stands (the rebased strings, f95178a1, N15 last; the sub-version 2 re-pin dropped, sub-version 3 only if green by 19:00Z)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 14:14:29 +00:00
igneum-labs
7712e90679 fud ledger N15: the two drift events named (a short reorg path, an inherited snapshot), the fix on numbering-fix (continuity at the chain path, the start-time self-check, recordsContinuous)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 14:13:22 +00:00
igneum-labs
3b12f4e930 fud ledger N15: the exec chain block number is the node's own record index, not a canonical DAG index; seven standing provers drifted 2 to 46 and are never paid
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 14:06:50 +00:00
igneum-labs
20a333fb42 Counter ASIC 3.0 node plan 6.9: 55768f88's mixed-version gate PASS
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:48:45 +00:00
igneum-labs
77dee2c87e Counter ASIC 3.0 node plan 6.9: the 0.3.21 node line opened at 55768f88 with main's order and its first gate line
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:39:58 +00:00
igneum-labs
165cdf9e8f fud ledger N9 second half closed: the joiner's fetch side held no proof whose record its trailing state refused; 70e4601e, the testnet lane's late-join re-run green in 35 s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:38:43 +00:00
igneum-labs
4888425cf9 Counter ASIC 3.0 node plan 6.7: main's word, the 0.3.20 pin is c4459193; 55768f88 opens release-0.3.21-node
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:37:51 +00:00
igneum-labs
d037347bbf fud ledger N14: a node started without the verifier host built zero-id segment statements (the fleet's 12 GB line); the embedded keys' ids on 55768f88; plan 6.7 rows
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:36:33 +00:00
igneum-labs
3f8479ec27 Merge remote-tracking branch 'origin/master' into ca3-v4-node 2026-10-07 13:22:57 +00:00
igneum-labs
e3329b65a9 Counter ASIC 3.0 status: the PC 1 G1 variant staged (a2714d43, the 5090 by index-free key, published only on the go line)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:21:41 +00:00
igneum-labs
1c6e07463a build-server lib: the route check names its ssh key and options itself (it runs before bs_host fills BS_SSH_OPTS, and the Mac's bash 3.2 reads the empty array as unbound under set -u; every Mac lane's build-remote died at 13:20Z)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:21:36 +00:00
igneum-labs
37b97d2086 Merge remote-tracking branch 'origin/master' into ca3-coord 2026-10-07 13:20:55 +00:00
igneum-labs
eae74e13c2 Counter ASIC 3.0 status: the PC 1 G1 gated on the shipper's "PC 1 on 0.3.20" line, about 15:30 to 15:40Z
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:20:55 +00:00
igneum-labs
0deaa5489a CI queue: a second self-hosted runner (igneum-build-2 joins the pool label), docs-only pushes skip the compile jobs, the red watcher pinned to the box that posts
31 runs were queued on igneum-build-1's one runner at 13:15 UK on 7 October 2026 and nothing had concluded since 13:03Z, so no lane could read a conclusion.
- ci.yml: a `changes` job (ubuntu-latest) classifies the push with tools/ci/docs-only-check.sh (docs/, site/, *.md only = code=false; a new branch, a pull request, a force push or an API error = code=true); pow and sims need it and run only on code=true. The site job is unchanged on ubuntu-latest for every push. The classifier's self-test is in the gate.
- provision.sh and runner/register.sh: `--host <ip>` registers another box, forwarding BOX_HOSTNAME, RUNNER_NAME, RUNNER_LABELS, RUNNER_CPUS and RUNNER_JOBS (plain words only); RUNNER_CPUS writes AllowedCPUs into the service drop-in beside Nice=10, so igneum-build-2's runner is bounded like a suite (32 cores). The pool label is igneum-build-1 (both boxes carry it); ci-red marks the box with the record file and the poster, the default labels carry it, and igneum-build-1 got it through the runners API today.
- ci-red.yml runs on the ci-red label, so the red line always lands where the poster reads it.
- CLAUDE.md: the rule reads "read the conclusion when it lands, own a red before the next push"; pushes are never held.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:20:18 +00:00
igneum-labs
d258054854 Counter ASIC 3.0 status: main's word on PC 2 (hand restart asked of the project lead; go PC 1 for the G1 at 15:00Z if silent)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:19:36 +00:00
igneum-labs
8d8a7fd726 Merge remote-tracking branch 'origin/master' into ca3-coord 2026-10-07 13:18:34 +00:00
igneum-labs
cd0ff2a6c5 Counter ASIC 3.0 status: sub-version 2's suite line (526fa757, 100 of 100 on box 2, the route line), the re-gate carries from 07a809a7
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:17:56 +00:00
igneum-labs
19196e1806 Merge remote-tracking branch 'origin/ca3-v4-node' into ca3-v4-node 2026-10-07 13:17:39 +00:00
igneum-labs
721e0f3ab9 Merge remote-tracking branch 'origin/master' into build-server 2026-10-07 13:17:19 +00:00
igneum-labs
caff656593 Build boxes: the box probe carries its own ssh options (bash 3.2 under set -u refused the unset BS_SSH_OPTS array before bs_host built it; every unpinned route on the Mac died, the pool lane 7 Oct 2026); the router check runs the ssh path under /bin/bash
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:16:39 +00:00
igneum-labs
5cc07506f0 Merge remote-tracking branch 'origin/master' into ca3-coord 2026-10-07 13:16:25 +00:00
igneum-labs
a5793fe16b gate summaries (vote-or-burn bridge, fork gate): every key-shaped 64-hex hash shortened to the redactor's form; the no-secrets gate reads 0 hits
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:15:55 +00:00
igneum-labs
d9b249cee0 Counter ASIC 3.0 status: PC 2 silent since the 0.3.19 update-now; G1 and the Windows kept-datadir gate wait on a hand restart
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:15:44 +00:00
igneum-labs
7e1b1c58e8 CI red watcher: its own workflow_run workflow (ci-red.yml) so the copy on master watches every branch's run whatever ci.yml the branch carries
GitHub runs a workflow_run workflow from the default branch only, so a feature branch no longer waits for a merge of master before its reds are posted. record() reads the FAILED run from RED_WATCH_* (id, attempt, workflow, branch, sha, event, url, actor, title, author: the workflow_run payload) and asks the jobs API for that run, not the watcher's own; the inline GITHUB_* shape stays for a branch with the old `red` job (one line per run id either way). The inline job leaves ci.yml. Self-test covers the workflow_run shape and the full line.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:15:11 +00:00
igneum-labs
009995351a Counter ASIC 3.0 status: sub-version 2's static census (0 lossy-sourced sites of 16,432), the attempt cost, G1 blocked on PC 2's intake
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:14:03 +00:00
igneum-labs
3725683e08 Counter ASIC 3.0 status: main's word on the floor move, the CI lever and the rule's reading
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:13:02 +00:00
igneum-labs
8f26d65832 fork-gate gate summaries: the two miners' vote-key hashes shortened to the redactor's form (the no-secrets gate from master 0e4ea690 reads a 64-hex under a key field as a secret)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:12:49 +00:00
igneum-labs
bd542bf76b Merge remote-tracking branch 'origin/master' into ca3-coord 2026-10-07 13:11:22 +00:00
igneum-labs
94dc0e0138 Counter ASIC 3.0 status: 0.3.20's cut set as it stands, 0.3.21's clock and the byte-5 fallback, the CI queue note
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:11:22 +00:00
igneum-labs
b28ba7d4b0 Merge remote-tracking branch 'origin/master' into ca3-v4-node 2026-10-07 13:10:35 +00:00
igneum-labs
3a039c3c8d fast-time fork gate: the three gate summaries carry keys as 8 hex and an ellipsis, written through the redacting writer; CI on ca3-v4-node red since 11:26 UK on the no-secrets check
- docs/plans/counter-asic-3-gate/fork-gate-*.json: keys.a, keys.b and every sinks.*.key shortened (the first 8 hex characters then "…"); hashes untouched. Produced by the helper, so the files are what the runner now writes.
- infra/fast-time/fork-gate.mjs: writeSummary() from infra/fast-time/lib/redact-keys.mjs replaces the raw JSON write; a summary with a raw 64-hex key under a key-shaped field fails in the runner, with the line named, before the tree does.
- infra/fast-time/lib/redact-keys.mjs and its gate line in tools/ci/pre-push.sh: identical to master 3fae3166, so the merge is clean.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:09:56 +00:00
igneum-labs
a2aa13541d CI red watcher: every branch, one line per failed run naming the branch, the commit, the red check and the pushing author
The red job's condition drops the master/release-* clause; record() keeps GITHUB_ACTOR and the head commit's author name (RED_WATCH_AUTHOR from the workflow) and formatLine prints "pushed by <actor> (commit by <author>)" before the failed job and step. The self-test covers a feature-branch run and the author in the line. Same updates channel, same box file, same one-line-per-run idempotence.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:09:06 +00:00
igneum-labs
3fae316607 CI gate: the feature-branch hook runs the never-push classes (no-secrets, identity grep) beside the structural checks; harness summaries write keys through a redacting writer with its own check
The class (7 October 2026, 11:26 to 12:47 UK): three fork-gate summaries on ca3-v4-node carried the miners' vote-key hashes under "key" and eight CI runs went red on "no secret file names and no 64-hex secrets in the tree" while the pushing lanes saw nothing: the light gate ran only conflict markers and Windows paths.

- tools/ci/pre-push.sh: never_push_checks() (identity grep, no-secrets) runs on every ref from --hook, and inside the full gate where the identity grep already sat; the self-test asserts the wiring; the light gate is about 20 s on the Mac.
- infra/fast-time/lib/redact-keys.mjs: writeSummary() shortens every 64-hex value under a key-shaped field to 8 hex and an ellipsis and refuses a text the no-secrets rule would flag (line named); --self-test and --check; the gate runs the self-test. fork-gate.mjs adopts it on ca3-v4-node.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:09:06 +00:00
igneum-labs
0e4ea6909d Merge branch 'build-server' into HEAD 2026-10-07 13:08:22 +00:00
igneum-labs
b04c4b3ac9 Build boxes: the class router is a preference with spill-over (a held or overloaded box hands the job to the other one); build-2 gets a third slot and every run there is bounded on its own 32-core band; the spill decision in the first route line, the slot label and the JSONL row
the project lead, 7 October 2026 15:02 UK: build-1 at load 139 / 114 / 90 with both slots held and a 1 h 40 min queue while build-2 read 4.5 with
free slots, because the class router pinned each class to its box. Now lib.sh bs_route_spill reads the preferred box (free slots,
1-minute load) with one ssh and hands the job to the other box when the preferred one has no free slot or sits above load 64 and the
other qualifies; neither qualifying queues on the class's own box. The decision travels as BR_ROUTE_* into the JSONL "route" object
for the dashboard. build-2's slots file reads 3; everything on box 2 runs at nice 10 / 32 cores / -j 32, and a bounded run takes
the band its slot owns so three never share a core. Self-test tools/ci/route-spill-check.sh (thirteen cases) in the gate.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:08:19 +00:00
igneum-labs
068fa345af Counter ASIC 3.0 status: sub-version 2 committed (07a809a7, id a788661687db4bb3, the fixpoint rule, seven fingerprints, packs sha256)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:03:19 +00:00
igneum-labs
6049b406ca Counter ASIC 3.0 status: the F8 re-gate verdict on sub-version 1 (53 of 64 PASS, 11 FAIL, worst 29.27x), the three residual classes, the fixpoint requirement for sub-version 2
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:57:40 +00:00
igneum-labs
db3b0b3d85 Counter ASIC 3.0 status: the shipper's reason for gating on the cases (dc141409 to c4459193 touches the class signal byte)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:54:49 +00:00
igneum-labs
215b9c74e7 Counter ASIC 3.0 status: the cut gated on CASES END, the word about 15:15Z, publish on green, sweep PC 1 first
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:54:05 +00:00
igneum-labs
542da05fa0 Counter ASIC 3.0 status: the cases rerun slips to about 15:10Z; the wipe canary holds 14:17Z; the kept read in hand
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:52:55 +00:00
igneum-labs
31b6324d96 Counter ASIC 3.0 node plan 6.8: class v4 sub-version 2 takes object byte 7 on 0.3.21 (main's assignment: 0.3.20 at 5, class v5 at 6); the re-pin recipe
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:47:43 +00:00
igneum-labs
8afe0714af Counter ASIC 3.0 status: c4459193's mixed-version gate PASS, the restart step green
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:46:58 +00:00
igneum-labs
09a9c61cc2 Counter ASIC 3.0 node plan 6.7: c4459193's gate lines (digest PASS, mixed-version PASS with the restart step, sha256 45be9b02d1b002f5)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:46:48 +00:00
igneum-labs
ddca50ecb5 Counter ASIC 3.0 status: c4459193's build line and digest gate PASS
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:46:16 +00:00
igneum-labs
fae2dbacc5 Counter ASIC 3.0 status: the wipe canary on c19-1 started 12:38:55Z, synced about 14:17Z
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:40:00 +00:00
igneum-labs
8a73af463b Counter ASIC 3.0 status: c4459193's binary sha256 in the fleet's hand, the wipe pod c19-1, synced line about 14:20Z
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:39:00 +00:00
igneum-labs
79ef854f70 Counter ASIC 3.0 status: the shipper's clock call (a second one-shot pod for the wipe canary, line about 14:15Z)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:36:29 +00:00
igneum-labs
c60f9b91eb Counter ASIC 3.0 status: the fleet's clock on c4459193 (wipe line about 14:40Z, past the checkpoint)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:35:10 +00:00
igneum-labs
bb19181456 Counter ASIC 3.0 status: the shipper's carry ruling, the pin c4459193, sub-version 2 is 0.3.21's, the floor move recommended
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:32:58 +00:00