Commit graph

1835 commits

Author SHA1 Message Date
igneum-labs
97495d778e fork-gate harness: a key in a summary is its first 8 hex and an ellipsis, never the 64 (the raw keys of the 6 October summaries turned the no-secrets check red on every CI run of their branch); the six summaries of 13:58 UK redacted the same way
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:12:44 +00:00
igneum-labs
e35b40bcc2 Merge remote-tracking branch 'origin/master' into horizon 2026-10-07 13:11:38 +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
61668cb15e Merge remote-tracking branch 'origin/master' into ca3-v4-amend 2026-10-07 13:10:58 +00:00
igneum-labs
24b48fd644 Counter ASIC 3.0 gates (hash): the accept.rs test initialisers carry the (c') field (the box suite's E0063)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:10:58 +00:00
igneum-labs
46494d36b3 Merge branch 'master' of https://github.com/igneum-network/igneum into genesis-forward 2026-10-07 13:10:39 +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
1df38be497 Counter ASIC 3.0 gates (hash): the PC 2 G1-only playbook for the sub-version 2 packs (--cards-off runner)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:03:52 +00:00
igneum-labs
71d1a97382 Counter ASIC 3.0 gates (hash): ledger AP-F8-1, the sub-version 2 paragraph (the 11 of 64 residual on sub-version 1, the three classes, the three rules, byte 7, the new id and fingerprints, the gates owed before any proposal)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:03:25 +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
fdac338dbc Counter ASIC 3.0 gates (hash): class v4 sub-version 2 (AP-F8-1, main's ruling B2: 0.3.20 ships sub-version 1 untouched; this stream is object byte 7). F1, the draw: a load's source is drawn only from registers fresh by dataflow (fresh at the start; a load keeps freshness only from a fresh source; add, sub, xor, mad, shfl from either operand; rotl, rotr from their operand; or, mul, mulhi never), keyed on the class v4 shape on EVERY draw path (era or not, the pass count set aside), so a census through candidate_class reads the chain's stream. (a'), accept.rs: the same freshness run to its fixpoint over the loop (base then shadow block) and every load's source fresh in the steady state, else the candidate is rejected and the next attempt drawn (closes the iteration boundary the draw cannot see: F8's p11, an or at 63 feeding a load at 1, and the load-after-load and rotate-of-saturated chains of p6, p23, p26, p31, p34). (c'), accept.rs: per load site, the count of source values equal to 0 or all-ones over the 64 units' 16,384 evaluations, rejected at 164 or more (the (c) limit), the backstop for any delivery of saturation (zero and all-ones alike: p45's mulhi zero). Both keyed on the class v4 shape, so v2 and v3 verdicts and ids do not move. PROGRAM_SUBVERSION_V4 = 2 in the id suffix and the pack lines. The seven gate packs re-exported: the devnet epoch-0 seed's attempt 0 is now rejected and attempt 1 accepted, id a788661687db4bb3 (must-differ: c120d7963abdcd96 the 6 October stream, 1a4230699a6b9c60 sub-version 1); the seven 256-block ladder packs of packs-ca3-shadow re-exported under the rule (the no-era path moves too; their measured rates stand as the old stream's). Tests: the generator test checks the fixpoint rule on the amended program and the known-failed case (the v3 stream re-labelled v4); the mixer contract checks the dataflow rule on every V4-shaped class, era or not
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:01:40 +00:00
igneum-labs
7b71196efe fast-time 60x file: every field OverrideParams knows on the 0.3.20 line (17 were missing: the difficulty v3, DAA-rule, fork gate, vote-or-burn, signing bonus and leave switches with their shares and window, the latency ladder list, activation and 120-DAA window, exec_restart_state_root, emission (CURRENT), proving_consensus_verify_daa and the two program ids); the keeper suite's fast_time_60x_file_is_the_devnet_at_60x reads it
The box mirrors carry no infra/, so the test skipped there and the gaps showed only on the Mac and in the class v5 lane's run.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 13:00:15 +00:00
igneum-labs
21194e93fd Mission item 4 status: the gate line GREEN on igneum-build-2 (6 of 6, known-failed first, partition heal unchanged), the hole and its fix, suite counts per box, consequences per tier, what is open; item 12 status with the NAT reading and the eclipse simulation
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:59:47 +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
b43f5ee4e8 fast-time-remote.sh: the harness directories by overlay only, never a checkout of the worktree root (its first run at 13:44 UK took igneum-build-2's /srv/builds/igneum-wt-horizon/vendor, the fork sources and the gate binary just built there, because that root is no repo checkout and remote-run's checkout mode replaces the directory)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
(cherry picked from commit 2c9bd29afc)
2026-10-07 12:48:16 +00:00
igneum-labs
f1435e85f2 fast time: the three-node fork-gate harness, its six-case runner and a box wrapper for harness runs (mission item 4)
infra/fast-time/fork-gate.mjs: H1 and H2 honest and mining through every phase, B the third node; modes attack (B's
key fresh, 3 of 5 CPU threads in the split), third (B at about half of the table, accepted) and partition (H1 against
H2, the heavier side wins with the gate on as with it off). A reorg is read from the chain (getVirtualChainFromBlock
of the pre-cut tip lists removed blocks), never from a key; blue work compared as BigInt; leftovers stopped by pid
file, never by name. infra/fast-time/fork-gate-gate.mjs runs the six cases side by side (known-failed first) and is
GREEN only when every case gives the verdict it must and the two partition heals agree. tools/fast-time-remote.sh
runs a harness on a build box under a slot with a holder line and a JSONL row (the node binaries from a fork
worktree's target on the box, results fetched back); it carries the whole-body block and is listed in the check.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
(cherry picked from commit 7f3e75479e)
2026-10-07 12:48:16 +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
2c9bd29afc fast-time-remote.sh: the harness directories by overlay only, never a checkout of the worktree root (its first run at 13:44 UK took igneum-build-2's /srv/builds/igneum-wt-horizon/vendor, the fork sources and the gate binary just built there, because that root is no repo checkout and remote-run's checkout mode replaces the directory)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:46:38 +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
igneum-labs
c4ba8352e9 Counter ASIC 3.0 status: the fifth commit c4459193, the shutdown test green, the kept-datadir carry
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:31:00 +00:00
igneum-labs
b8a3d01600 Counter ASIC 3.0 status: b7cc37e7's mixed-version gate FAIL (the 10 s watchdog sleep at shutdown), the fifth commit's clock, the sub-version 2 re-pin cost
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:29:28 +00:00
igneum-labs
f0d5860fdf Counter ASIC 3.0 status: object bytes settled (5 sub-version 1, 6 class v5, 7 sub-version 2)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:28:40 +00:00
igneum-labs
ddd96637cb Counter ASIC 3.0 status: sub-version 2 in build on ca3-v4-amend, the clock and the two stream consequences
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:27:36 +00:00
igneum-labs
7f3e75479e fast time: the three-node fork-gate harness, its six-case runner and a box wrapper for harness runs (mission item 4)
infra/fast-time/fork-gate.mjs: H1 and H2 honest and mining through every phase, B the third node; modes attack (B's
key fresh, 3 of 5 CPU threads in the split), third (B at about half of the table, accepted) and partition (H1 against
H2, the heavier side wins with the gate on as with it off). A reorg is read from the chain (getVirtualChainFromBlock
of the pre-cut tip lists removed blocks), never from a key; blue work compared as BigInt; leftovers stopped by pid
file, never by name. infra/fast-time/fork-gate-gate.mjs runs the six cases side by side (known-failed first) and is
GREEN only when every case gives the verdict it must and the two partition heals agree. tools/fast-time-remote.sh
runs a harness on a build box under a slot with a holder line and a JSONL row (the node binaries from a fork
worktree's target on the box, results fetched back); it carries the whole-body block and is listed in the check.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:26:38 +00:00
igneum-labs
f581a291bd Counter ASIC 3.0 status: the F9 figures withdrawn (old stream), F8's census stands, the residual's two paths and the sub-version 2 shape
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:25:31 +00:00
igneum-labs
3fa251cd10 Merge origin/master into ca3-coord: the status file keeps the 7 October rows (a20d238f's merge had taken its 6 October side), the bench-log keeps both sides
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:24:27 +00:00
igneum-labs
56d5faf51f Counter ASIC 3.0 status: AP-F8-1 residual class on sub-version 1, main's ruling (ship object 5, fix as sub-version 2 behind the attack-pass gates), the held sentence
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:23:29 +00:00
igneum-labs
629fc65b93 Counter ASIC 3.0 status: b7cc37e7's digest gate PASS and the kept-datadir start green; the mixed-version line about 12:28Z 2026-10-07 12:21:05 +00:00
igneum-labs
fc58621c16 Counter ASIC 3.0 gates (hash): ledger AP-F8-1, the crate suite line (100 of 100 at 8d9d6859 on igneum-build-1)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:18:47 +00:00
igneum-labs
3465a264f4 Discord structure: release webhook moved to #releases, post 1's channel line edited by webhook; both read back (7 October 2026, 13:1x UK)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:14:12 +00:00
igneum-labs
a8b91607a6 Discord structure built on the server and read back: channel map, pins, AutoMod, rules screen, onboarding, the hourly feed webhook live from the box (7 October 2026, 13:1x UK)
structure.md: every row flipped from waiting to "set, read back" with what the server holds now; the seven AutoMod
rules as built with their word lists; the onboarding answers and to-dos as built; DISCORD_WEBHOOK_FEED created and
installed on the box (first hourly post feed:2026-10-07:13 at 13:06 UK); what still needs the founder (an office-hour
time, 2FA on the account for the moderator switch, the ladder bot's host, a second account for the AutoMod test).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:14:12 +00:00
igneum-labs
8ca045eb5f Discord structure: the build sheet (channel map, moderation, onboarding, bots, events) and the hourly network feed (7 October 2026, 11:4x UK)
docs/community/discord/structure.md: every channel with topic, pinned first post, slowmode and thread settings; the
AutoMod rules; the rules screen; the server guide to-dos and the pre-join question aligned with the map; the two bot
specs; the office-hour template; what needs the founder. Every row carries "set / read back"; all wait on the Discord
sign-in (the session expired; nothing typed).

tools/community/discord-hooks.mjs: `feed` (hourly: height, hash rate, keys, the last lock from /api/live), milestones
posted once each, the daily hash-origin field, `--via updates`, optional DISCORD_WEBHOOK_FEED, the tick wiring. Six
tests, 37 pass. One live post through the updates webhook as the proof of the path (feed:2026-10-07:11).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:14:12 +00:00
igneum-labs
defcae263c Discord README: Server Tag IGNM, gradient role styles on the five chain roles, the dragged role order (7 October 2026, 11:xx UK)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:14:12 +00:00
igneum-labs
3b77f628e3 Discord boost perks: brand assets (animated banner, invite background, guide banner, role icons, ten emoji, three stickers) and the generator; README records what each file is for and what Discord has set (7 October 2026)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 12:14:12 +00:00
igneum-labs
3f8d3cc39f Counter ASIC 3.0 status: the node lane's clock correction (CEST stamps an hour fast); the amendment's clock in UTC 2026-10-07 12:11:55 +00:00
igneum-labs
6d48522cc5 Counter ASIC 3.0 status: the mixed-version and digest gates on the fallback's binary (the old hub accepts every amended block, 0 rejected) 2026-10-07 12:10:34 +00:00
igneum-labs
aeba61e09a Counter ASIC 3.0 status: the candidate pin b7cc37e7 (N13), the honest fallback 5899f603, section 6.6 amended with the hard date (merged) 2026-10-07 12:05:45 +00:00
igneum-labs
3685f56781 Counter ASIC 3.0 status: the kept-datadir roll blocker (N13) and the kept-datadir restart gate it adds; the fix about 14:40 UK 2026-10-07 12:03:26 +00:00