igneum-labs
ceb4341f34
exec-sync plan: what the first 45,537 DAA lost (about 124,600 IGN of producer rewards and 31,100 IGN of escrow from the schedule, approximate; the per-address split unrecoverable) and the before column
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 14:57:14 +00:00
igneum-labs
9bcafc2158
bench/proof-systems: the rented RTX 3060 12 GB and RTX 4090 24 GB rows (SP1 stock, SP1 patched at four thresholds, RISC Zero at po2 20 and 19; the v1 shard, the empty shard, the 23.6 M-cycle shard, the prototype shard; every proof verified) and the table
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 14:53:37 +00:00
igneum-labs
2332ff326f
exec-sync plan: the fresh node's IBD finding (10 retries over 40 min from the finality route's capacity; the igneum-pow feature needed to join)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 14:49:10 +00:00
igneum-labs
0b75539b1c
exec sync: the plan (what happened, the fork commits, the copy measurements, the per-tier consequence) and the bench-log entry; the exec-sync harness
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 13:46:31 +00:00
igneum-labs
1ab198cd61
bench/proof-systems: block-72854-empty-block-first is a 23.6 M-cycle shard; the empty shard is block-58927-empty-reward
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 13:44:22 +00:00
igneum-labs
791ce9f7c6
bench/proof-systems: a failed run keeps its logs beside the row, labelled rows do not overwrite each other
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 12:56:07 +00:00
igneum-labs
37516b54a8
bench/proof-systems: a wall-clock cap per prove run (the patched server hangs on a card too small, the fleet finding), --r0-po2
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 12:53:54 +00:00
igneum-labs
5ef9102fd1
bench/proof-systems: the Mac RISC Zero rows (CPU HAL: the v1 shard 574 s at po2 20 and 10.2 GB RSS, 699 s at po2 19 and 8.0 GB; the empty shard 46 to 49 s at 7.9 GB; receipt 223,882 B, verify 0.21 s)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 12:44:55 +00:00
igneum-labs
6666cb09b3
the Apple route corrected from the measurement: RISC Zero 3.0.6 has no Metal HAL (the analysis's Metal sentence, route D's header, route I, the ranking and the Apple tier line rewritten); the Apple route is SP1 on the CPU, 71.7 s a v1 shard on the M5 Max (the tier line in both plans, the app's Apple default line); RISC Zero stays in the v2 slot for the 8 GB CUDA tier and its 5.7x smaller proof
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 12:44:21 +00:00
igneum-labs
67cceb998a
proving v2: the Mac measurement of RISC Zero 3.0.6 (CPU HAL, no Metal path in 3.0.6), bench-log entry and plan
...
v1 shard 574.4 s at po2 20 (10.66 GB RSS), 698.7 s at po2 19 (8.40 GB), 560.9 s at po2 21 (20.44 GB); empty shard
47.9 s (8.32 GB); receipt 223,882 bytes at every po2; verify 9 to 10 ms in process, 0.21 s verify mode; every
receipt verified against the pinned image id; CPU build 585.8 s for the ratio 0.98. Metal: no circuit in 3.0.6
selects the Metal HAL and this Mac has no metal compiler, so no Metal figure exists; PC 2 (CUDA) measures next.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 12:42:05 +00:00
igneum-labs
267d9f16a5
plan: the 12 GB row measured on the 4070 itself (mines and proves compressed at 2^26, 9,034 MiB of 12,282 beside its miner, 24.1 s a v1 shard)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 12:18:56 +00:00
igneum-labs
a10eb8a736
bench/proof-systems: PC 2 rows (job bench-a-pc2, beside the miner): SP1 stock v1 shard 14.8 s at 22,477 MiB, patched default 15.1 s at 18,637 MiB, patched 2^26 27.0 s at 12,012 MiB; the prototype full shard 37.6 s at 30,413 MiB stock, 138.0 s at 12,129 MiB patched 2^26; every proof verified in 0.32 s
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 12:06:56 +00:00
igneum-labs
4055c9c866
bench/proof-systems: the fixtures named right (block-338-shard1 is the prototype full shard, the empty shard is block-72854)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 12:06:18 +00:00
igneum-labs
e0bbd8e7b4
proving v2: RISC Zero 3.0.6 workspace (guest, pinned image id, host with the SP1 host's CLI and results keys, Metal and CUDA features, pin script)
...
The same shard statement bytes as the SP1 guest, committed as the journal. RISC Zero's accelerated crates pinned by
tag (k256 0.13.4, crypto-bigint 0.5.5, tiny-keccak 2.0.2, sha2 0.10.9 and 0.11.0). Pinned image id
0x9ae0f416ee43e9ea8908c555d424fe23e3592677ffc42a763476623d0eb5cf72 under elf/manifest-r0.json. This Mac has no
metal compiler (Command Line Tools, no Xcode) and risc0 3.0.6 selects no Metal HAL in any circuit, so a local
risc0-build-kernel patch writes an empty metallib behind RISC0_SKIP_METAL_KERNELS.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 11:58:34 +00:00
igneum-labs
2e783eaa84
bench: run.sh --patched-env; the PC 2 bench job A script (SP1 stock and patched, default and 2^26, beside the miner)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 11:57:57 +00:00
igneum-labs
c6dacb5690
bench/proof-systems: run.sh portable (GNU time on Linux, host and out paths, a row label, the patched server's HOME), the table keys on the label and fixture
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 11:56:22 +00:00
igneum-labs
3e48415e5f
bench/proof-systems: the first Mac rows (SP1 stock on the M5 Max CPU: 4,717,439 cycles, 71.7 s, 27,821 MiB RSS, 1,272,897 B, verify 0.258 s; sp1-patched and jolt n/a with the reason) and the table
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 11:55:11 +00:00
igneum-labs
29bc922422
bench-log: the proof-system slot on the fast-time harness (21 and 34 checks)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 11:54:40 +00:00
igneum-labs
796a67eb52
proving v2: the harness gains --v2 <daa> (case 5: both proof systems and the switch; version 3 and version 2 records refused before, paid from it, an SP1 fresh chain after a system 2 segment), the fast-time file carries the switch; bench/proof-systems: the proof-system watch (run.sh one row per candidate, table.mjs, README)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 11:51:19 +00:00
igneum-labs
4f5cc29d26
app, proving v2: the proof system is a setting (prove_system, 1 = SP1 default, 2 = RISC Zero), /api/prove takes {on, system}, the prover runs the system's host (igneum-prove-r0-host next to the SP1 host, WSL2 too) and signs shard records with --system, the segment path and the aggregator stay on SP1 proofs (one system per segment), the tile has the selector
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 11:41:49 +00:00
igneum-labs
b68ddd59b3
Funding plan: proof-system audit line item beside the hash cryptanalysis row
...
Scope (SP1 shard and aggregator guests, pinned ids and pin script, the node's
verifier path and record rules of spec 7.7 and 7.8, the version 2 RISC Zero
guest when it lands), deliverables, six candidate reviewers with published
zkVM audits and their sources, cost basis from public rate cards and
comparable engagement sizes, and when it bites. Totals refreshed.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 11:36:10 +00:00
igneum-labs
ee8b766470
plan: 12 GB mine-and-prove met on the 5090's allocation by a core-only prover at 2^25 (8.1 GB before the display, 19.8 s a shard), pending the core-proof hand-off path and the card itself
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 09:14:28 +00:00
igneum-labs
2501308b6a
plan: the prover-floor agent's route 2 rows (core-only prover 7.8 GB own beside the miner; the core-only server is the step to 12 GB mine-and-prove)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 08:54:38 +00:00
igneum-labs
f0a40cdb9e
bench-log: the fast-time harness on the fresh-record rule, both cases
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 08:35:13 +00:00
igneum-labs
f380ccc7c7
proving v1 harness: under --fresh-rule the second offer of segment 3's record is a duplicate, not a chain-rule refusal
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 08:32:42 +00:00
igneum-labs
a96776883b
bench-log and plan: the segment-aligned prover on PC 2 (9 whole segments in 30 min, 72 of 72 shards paid, 11.0% of the miner) and the chain rule's 8-DAA fresh window, its fix behind the switch
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 08:26:59 +00:00
igneum-labs
f3a98cd291
proving v1 harness: --fresh-rule <daa> (default never keeps the known-failed line; set, case 3 expects a fresh record accepted while the previous segment is pending and freshAdmissible true)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 08:05:04 +00:00
igneum-labs
a113557da2
prover: a segment record the chain rule refuses is held and offered again every pass until the segment's deadline (the fresh-record window on the 0.3.11 rule is one segment length in DAA); the tile counts held records; the fast-time file sets the fresh-rule switch
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 08:03:46 +00:00
igneum-labs
7bdc8a9060
pc2-segments: int64 segment keys (a double never matched the int64 hashtable keys, so job b claimed nothing in 88 passes); the work-list line; the log search widened
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 07:50:46 +00:00
igneum-labs
9ea77aa2ae
pc2-segments: the port probe sets the port before the call (the first run dialled an empty port and refused itself)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 07:19:15 +00:00
igneum-labs
a1f05d6888
plan: segment-aligned proving (the change, item 2 answered from the relay source, the arithmetic; the PC 2 numbers to follow)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 07:18:59 +00:00
igneum-labs
8bb3c892d6
proving v1: the PC 2 segment-aligned prover job (tools/proving-v1/pc2-segments.ps1) and the CPU validation of --save-shards records and --prev
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 07:18:15 +00:00
igneum-labs
3671918fb4
prover: segment-aligned work (proving v1): a free prover claims a whole segment, proves every shard from one export in one chain run, submits the shard records and the segment record; the host's chain mode takes --prev and writes per-shard records with --save-shards
...
One prover at 2.2% coverage never had 8 consecutive proven blocks (C47, 6 October 2026); claiming whole segments makes it complete about 1 segment in 75 instead of none. The choice is deterministic per key (FNV of first block and key hash) over the untouched whole segments inside their deadline by a margin (240 DAA or 1.5x the last segment's time); the per-block path stays as the fallback. Unit tests for the grid, the grouping, the margin, the attempted set and the per-key order; 120 app tests, 8 core and 9 host tests pass.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 07:12:23 +00:00
igneum-labs
7dade79bcb
Aggregation cost on the 5090 (5 October, night): the chained aggregation is 2.1 s alone and 9.7 s beside the miner, the batch-log2 curve (2^16 buys 1.6x for a fifth of the hash rate), batch and tree folds estimated, two streams and SP1 knobs closed; the host times the stdin build and names the knobs, --save-shards; the PC 2 job scripts and the readers
...
The statement and the pinned guests are unchanged; every fixture proof verifies as before. The defaults stay (batch-log2 22, SP1 defaults): the one knob that moves a mining card's prover costs a fifth of the hash rate; the plan carries the trade for the project lead and the batch fold for the next pin. Measured: docs/bench-log.md "aggregation cost on the RTX 5090"; the plan line: docs/plans/proving-v1.md "Aggregation cost (5 October, night)". Also: make-package's gate skips the exporter's .node-plan.json side files and takes the run lock for its execute step; the state-reply class (/api/state answering {} once paid_wei passes u64::MAX) found on the way and fixed on the app branch at 42f36b3 .
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
(cherry picked from commit ea38ece9eaa5949dd657cbfea5308c4948177ff8)
2026-10-06 07:04:50 +00:00
igneum-labs
0e6a4cd333
plan: C47 card counts from the fleet table (47 as shipped, 18 chain mode, 6 proving-only)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 04:18:14 +00:00
igneum-labs
d02f3fb1b7
plan: v1 live on devnet, no segment record because one prover cannot cover 8 consecutive blocks (C47)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 04:17:51 +00:00
igneum-labs
559a5a0648
plan: the beside-the-miner pair (floor-sweep-4): 16 GB mines and proves at 12.7 GB and 17 s a shard on the patched server; 12 GB proves alone, mine-and-prove 9.9 GB before the display, over the 9.0 GB line
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 00:38:51 +00:00
igneum-labs
e054c914e6
plan: the /api/state fix heads 0.3.12 (0.3.11 closed at a2f08e3)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 00:28:27 +00:00
igneum-labs
42f36b3fd3
app: /api/state never answers {} again (paid_wei over u64::MAX broke to_value; the field is a decimal string, the error is logged once)
...
serde_json's to_value refuses a u128 over u64::MAX (18.45 IGN) and state_json turned the error into json!({}). A paid shard is 1.23 IGN on average, so a proving machine's dashboard went blank about 15 paid shards after every app start. Unit test over the boundary; 114 app tests pass.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 00:27:35 +00:00
igneum-labs
047932f2e1
plan: the prover-floor agent's sweep 3 rows (the patched server proves the v1 shard at 10.3 GB on the 12 GB profile, 12.9 GB at 2^27; the 12 and 16 GB rows move from nothing to proves alone, the pairs pending)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 00:18:32 +00:00
igneum-labs
2f2bdb5a70
plan: the prover-floor agent's first sweep (the v1 shard at 12.7 GB with the 2^26 split, 5.3 s; the 9.7 GB Setup is next) and the 12 GB profile decision
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 22:42:12 +00:00
igneum-labs
a2f08e3f70
prover loop: a PermissionDenied from the host names the root-owned GPU-server socket and the fix (the root-socket class); the plan's two times
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 22:38:22 +00:00
igneum-labs
9f6a4ebc65
App: every worker gets --prepare-packs in the platform's path form and runs with the app data folder as cwd (program class v3: the Metal worker compiles v3 only from a prepared pack; the Macs would have answered need lines at the first v3 epoch)
...
cargo test --release -p igneum-app under the build lock: 113 + 27 + 8 passed, 0 failed (the prepare_packs_tests,
resume_tests and provedefault tests among them).
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 22:22:44 +00:00
igneum-labs
e041fb5e73
plan: the self-built CUDA server's packaging row before 0.3.12 (arch list, builder, signing, DMG and WSL2 placement, evidence note, rebuild at each SP1 upgrade, the verifying keys unchanged)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 22:10:55 +00:00
igneum-labs
4f0b9f5475
bench-log: the root-socket recurrence of 21:25Z and the fix job of 22:01Z (the prover proved again at 22:02Z)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 22:03:06 +00:00
igneum-labs
23ab08202f
plan: the 12 GB floor's cause (the shipped sp1-gpu-server refuses cards under 24 GB and allocates every prover at Setup; the prover-floor agent's source read)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 22:00:37 +00:00
igneum-labs
3f81901155
plan: the aggregation-cost agent's card-alone rows (an empty shard 2 s, an aggregation 2 s, 4 proving-only cards for an empty chain)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 21:57:26 +00:00
igneum-labs
c4da08d302
App: the resume path re-arms every stopped card, re-exports its pack and checks 90 s later that every enabled card mines (PC 2 at 21:25:11Z and the Mac that afternoon stayed at 0 MH/s after resume); the PC 2 socket-fix job
...
The known-failed case, from PC 2's 0.3.9 log (run win-1ccfe586-20261005-200114): 1791234223 pause -> 'stopping the
miners (paused)' (every slot's restart_at cleared, the 5090 'off'); 1791235511 '[ok] mining resumed'; then
'0.00 MH/s, waiting' at every 30-s status line until the 0.3.10 restart at 21:49:41Z. Cause: Cmd::Resume re-armed
only slots whose watchdog said faulted; the 5090's slot was healthy and stopped, so nothing restarted it. The test
the_pc2_resume_of_21_25_11z_restarts_under_the_new_rule_and_not_the_old encodes that slot (faulted false, live
false): the old rule returns [] (the defect), the new rule [0]. cargo test -p igneum-app resume: 3 passed;
provedefault: 6 passed.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 21:56:20 +00:00
igneum-labs
d7c28ec695
prover loop: the CPU path is refused under 32 GB of RAM on every OS with the measured reason, and its tile line names the cost (consequences C22)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 21:12:37 +00:00
igneum-labs
2f6c7138b6
evidence and litepaper: the 24 GB tier is measured on the 32 GB card's allocation, not yet on a 24 GB card (consequences C22)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 21:12:13 +00:00