Commit graph

875 commits

Author SHA1 Message Date
igneum-labs
fda4684e28 release 0.3.12: merge hive-words: the bundled node takes the override from the Flight Sheet
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 08:17:02 +00:00
igneum-labs
622e3c90bb release 0.3.12: merge card-order: the GPU list by performance
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 08:16:26 +00:00
igneum-labs
328b6088ec release 0.3.12: merge update-catchup: an old update skips the hourly slot
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 08:16:26 +00:00
igneum-labs
92b109cddb release 0.3.12: merge proving-v1 app: paid_wei as a decimal string
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

# Conflicts:
#	docs/bench-log.md
2026-10-06 08:16:26 +00:00
igneum-labs
50a08e8d50 app: an update published over an hour before the engine started skips the hourly rollout slot
PC 1, 6 October 2026 06:58:47Z: the app came up after the 0.3.11 publish, had the installer verified 44 s
later and sat on "installs at the next safe moment" with its slot at minute 35; the project lead pressed Install now at
07:00:48Z. The slot staggers a fleet through a NEW publish; a machine that was off through the publish has
nothing to stagger. Now: published_at + 3,600 s <= engine start => slot_ok, logged once. The other safe-moment
guards (node synced, miner idle, boundary, network drop) are unchanged. manifest::unix_from_rfc3339 with tests.
For 0.3.12.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 08:13:51 +00:00
igneum-labs
85e7e8e527 app: order the GPU list by performance (usable, discrete before integrated, rate in 5 MH/s buckets, memory)
the project lead, 6 October 2026: on PC 1 the integrated card sat between the 5090 and the 9070 XT. The list now shows
usable cards first, ordered by the measured rate since the start in 5 MH/s buckets (no flicker), discrete,
external and Apple before integrated, then memory; removed and unusable cards last; ties keep the detection
order. The row signature follows the order, so a reorder re-renders. Three UI tests. For 0.3.12.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 07:23:25 +00:00
igneum-labs
f8088c49c3 release 0.3.11: C35's cause on PC 1 and the ember-tune guard e600e63 in the next-cut list
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 07:03:10 +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
18de437605 release 0.3.11: the plan's merge and push section
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 00:14:19 +00:00
igneum-labs
d61ce0ccee release 0.3.11: the plan's step 2, the digest sweep and the open items; sections in order
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 00:12:23 +00:00
igneum-labs
f7613e5f96 release-0.3.11 plan: the push and both CI runs, step 1 (the hand nodes and the seed at 4d8f8bb6, the manifest with the override carried over, the Mac, PC 2 and its epoch-boundary recovery, the stall and the Mac's resume, the laptop), the next-cut list
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 23:56:46 +00:00
igneum-labs
08547b0cac HiveOS: the bundled node takes the override from the Flight Sheet (C41)
The finding (release-0.3.11.md section 5): h-run.sh started the rig's node with --devnet --appdir
--rpclisten --listen and the peers and no --override-params-file, so a HiveOS rig in local mode ran
on genesis parameters, printed the no-override digest and was refused by every devnet peer; no
package ever carried the override.

h-config.sh: OVERRIDE=<json object> in the Flight Sheet's extra config, read as a whole line (JSON
may carry spaces; single or double quotes around it are stripped), refused unless it is {...},
written to igneum.conf single-quoted (sq helper; EXTRA gets the same quoting, the same class: a
value with shell characters sourced unquoted). Still sourceable (return, never exit).

h-run.sh, local branch: writes data/override-params.json from OVERRIDE when set and passes
--override-params-file=<that path> to igneumd; when empty, a WARNING in the main log that the node
runs on genesis parameters and devnet peers will refuse it. After the node answers, the switch
lines and the "Consensus params digest" line from node.log are copied into the main log as
"node: ..." so the operator can compare the digest with the downloads page.

README: the Flight Sheet table gains the OVERRIDE row with the four-field devnet object as the
example (nine fields after the 0.3.11 switch; the downloads page carries the live one), the rule
"set OVERRIDE from the downloads page when it changes", the sentence that a rig without it is
refused, the digest check in the requirements, and the gap entry. No "every override publish
needs a package republish" sentence exists in packaging/hive/README.md on this branch or master,
so nothing was replaced; the new rule stands alone.

selftest.sh: a fake igneumd that records its argv and prints the real digest line; OVERRIDE
single-quoted on its own line beside other keys round-trips through the conf; OVERRIDE=notjson
refused; empty OVERRIDE named in the summary; the main h-run run checks the file, the flag on the
node and the digest and switch lines in the main log; a second short run without OVERRIDE checks
the warning and the absence of the flag. bash packaging/hive/selftest.sh on this Mac:

== h-config.sh OVERRIDE
   OVERRIDE (single-quoted, own line) sourced back intact beside the other keys ok
   OVERRIDE that is not {...} refused ok
   no OVERRIDE: empty in the conf and named in the summary ok
== h-run.sh (fake GPUs: 2 NVIDIA, fake node, fake miner)
   data/override-params.json written from OVERRIDE ok
   the node got --override-params-file ok
   the node's digest and switch lines reached the main log ok
   NVIDIA cards got the cuda worker ok
   exit 42 restarted the miner and re-exported the pack ok
== h-stats.sh (sourced)
   stats JSON ok: hs [118500.0, 118500.0] temp [61, 58] ar [24, 0] bus [1, 2]
== h-run.sh without OVERRIDE (the warning)
   no OVERRIDE: warning in the main log, no flag on the node ok
== self-test passed (scripts and stats shape; Hive itself is untested)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 23:35:03 +00:00
igneum-labs
d85f4dec2b igneum-census: build against class v3 (Instr width/win/off, Program class/era_bytes, fetch layout, Scratch/Hot arms)
The ci run on 6f95751 (37387751432) failed in the census release build only; windows-ci was green.
The census generates the lottery hash's class, so every new field takes its v2 value and the two
experiment ops are unreachable.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 23:25:52 +00:00
igneum-labs
6f95751e06 Windows payload inputs: node 89dfcb95 (push-inputs.sh, the PC 2 build, the class-aware workers, signed); release-0.3.11 plan: the PC 2 job
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 23:18:28 +00:00
igneum-labs
9d1c494a9f release-0.3.11 plan: the three digests on the 0.3.11 binary (4d8f8bb6 with the live file, measured), the two-publish order (C39, C40), the HiveOS package's missing override
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 23:15:20 +00:00
igneum-labs
87dcbd804a release-0.3.11 plan: the PC 2 job id, the rollout order as agreed
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 23:10:03 +00:00
igneum-labs
c785bd3113 release-0.3.11 plan: the relay's PC1 is the 1ccfe586 box (PC 2 restarted twice by my tasks, PC 1 unreachable until the morning), the combined PC 2 job, C38 complete
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 23:08:52 +00:00
igneum-labs
c5bc0f6bc8 Merge ca2-coord (6bb8124) into release-0.3.11: the Counter ASIC 2.0 docs commits (N4 rows, gate cells, digests, rules, status; the five cited documents already in the tree)
# Conflicts:
#	docs/bench-log.md
2026-10-05 23:06:38 +00:00
igneum-labs
d3b44141d1 prover-floor: the three other PC 2 scripts test their kit file before the first use (C32)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 23:06:38 +00:00
igneum-labs
6bb8124080 Counter ASIC 2.0 status 23:05: C38 closed, the four branches merged into ca2-coord 2026-10-05 23:05:34 +00:00
igneum-labs
426252927e ca2-coord: verify.rs and tests/scratch.rs set to the release tree's versions (b9acc57 carries them through ca2-mixer), so the docs merge changes no shipped code 2026-10-05 23:04:59 +00:00
igneum-labs
34b2fa0ff6 prover-floor: pc2-floor-sweep3-miner.ps1 tests its kit file before the first use (the kit-path check, C32)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 23:04:52 +00:00
igneum-labs
14b748fafa Merge branch 'prover-floor' into ca2-coord 2026-10-05 23:04:46 +00:00
igneum-labs
b9f0158872 Merge branch 'ca2-epoch' into ca2-coord
# Conflicts:
#	docs/bench-log.md
2026-10-05 23:04:46 +00:00
igneum-labs
dae3593578 Merge branch 'ca2-soundness' into ca2-coord
# Conflicts:
#	docs/bench-log.md
#	proto-metal/packbench.swift
2026-10-05 23:04:45 +00:00
igneum-labs
310e5f0ee5 ca2-soundness: docs/analysis/scratch-soundness.md alone (its code is already in the tree through the mixer merge; the branch merge conflicted there); release-0.3.11 plan: C37 and C38
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 23:04:38 +00:00
igneum-labs
22b495aa1d Merge branch 'ca2-analysis' into ca2-coord
# Conflicts:
#	docs/bench-log.md
2026-10-05 23:04:14 +00:00
igneum-labs
0059f12c98 Merge prover-floor (8e2686d) into release-0.3.11: docs and standalone probe sources the evidence rows cite (C38); nothing a built artefact reads 2026-10-05 23:03:46 +00:00
igneum-labs
41889fcaea Merge ca2-epoch (6cb846b) into release-0.3.11: docs and standalone probe sources the evidence rows cite (C38); nothing a built artefact reads
# Conflicts:
#	docs/bench-log.md
2026-10-05 23:03:46 +00:00
igneum-labs
bfdc632a14 Merge ca2-analysis (c9ebe7b) into release-0.3.11: docs and standalone probe sources the evidence rows cite (C38); nothing a built artefact reads
# Conflicts:
#	docs/bench-log.md
2026-10-05 23:03:45 +00:00
igneum-labs
f754d6ba7f Counter ASIC 2.0 status 23:03: C38, the four analysis branches' documents and the two options 2026-10-05 23:03:33 +00:00
igneum-labs
142b5ef254 release-0.3.11 plan: the tree, the builds and tests so far, the override object and both digests, PC 1's hung engine and the relaunch, the next cut
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 23:02:07 +00:00
igneum-labs
e9c95297ec Counter ASIC 2.0: ember-tune 8ab9068 on the next-cut list with the second-engine rule; status 23:00 2026-10-05 23:00:32 +00:00
igneum-labs
30b6959557 Counter ASIC 2.0 status 22:59: the orphaned second-engine miners, the hang's mechanism, the second-engine playbook rule 2026-10-05 22:59:45 +00:00
igneum-labs
921ed874fb Counter ASIC 2.0 status 22:59: the explorer public-api-check item for the next cut; the two watchers 2026-10-05 22:59:05 +00:00
igneum-labs
9ed2cabc25 Counter ASIC 2.0: the M28 worker-miner coupling for the next cut; status 22:57 2026-10-05 22:57:27 +00:00
igneum-labs
48c2b68c60 Counter ASIC 2.0: fud-close to the next cut (the tree closed at b9acc57); status 22:57 2026-10-05 22:57:12 +00:00
igneum-labs
53218ba978 Counter ASIC 2.0: fud-close on the ship order with the G5 rebuild; status 22:56 2026-10-05 22:56:58 +00:00
igneum-labs
213e69fbda Counter ASIC 2.0 status 22:55: PC 1's engine hung after its quit; task #243 ends and relaunches it 2026-10-05 22:55:29 +00:00
igneum-labs
df86a27ea2 Counter ASIC 2.0: the no-prompt rule for the night (C35), the morning test; status 22:55 2026-10-05 22:55:19 +00:00
igneum-labs
7cf89995f3 Rollout plan: the G1 and G3 state cells read GREEN with their job and time 2026-10-05 22:54:38 +00:00
igneum-labs
6c99c0bb6d Counter ASIC 2.0 status 22:54: C35 resolution, the UAC-prompt shape, the collect go 2026-10-05 22:54:23 +00:00
igneum-labs
c47e55853d Counter ASIC 2.0 status 22:53: the PC 1 relaunch, the PC 2 queue with the M16 job, the api/state class 2026-10-05 22:53:17 +00:00
igneum-labs
8d2fae7052 Counter ASIC 2.0: the two digests and the DMG in the rollout plan; status 22:52: PC 1's app down since 22:31, the relaunch asked 2026-10-05 22:52:23 +00:00
igneum-labs
8f9dcf491b Counter ASIC 2.0 status 22:50: the C16 reversal withdrawn, C35 narrowed to Ember's api/quit 2026-10-05 22:50:35 +00:00
igneum-labs
5f8f471ae4 Counter ASIC 2.0 status 22:50: the 20:01Z early update on PC 2, the quit order 2026-10-05 22:50:04 +00:00
igneum-labs
70bd7799e1 Rollout plan: N4 = N5 = 154,800 and the G5 workers (the row edits) 2026-10-05 22:49:06 +00:00
igneum-labs
7e78016b29 Counter ASIC 2.0: N4 = N5 = 154,800 and the G5 workers in the rollout plan; status 22:48 2026-10-05 22:48:57 +00:00
igneum-labs
bcb419cb07 Counter ASIC 2.0 status 22:48: C35, Ember's re-run held, the AMD link flapping 2026-10-05 22:48:05 +00:00