Commit graph

824 commits

Author SHA1 Message Date
igneum-labs
3b73fe7200 Counter ASIC 3.0 status: the digest-compat rule implemented (713ef876, b18ed271 on the thirteen-field file, suites green on the box) 2026-10-06 18:55:20 +00:00
igneum-labs
ff3e42fcab Counter ASIC 3.0 status: the rehearsal at 18:44Z (DAA 230, one digest on 16 boxes, both stale refusals in hand, 0 rejected) 2026-10-06 18:49:55 +00:00
igneum-labs
20aa327778 Counter ASIC 3.0 status: main's ruling on the digest (an absent optional field contributes nothing; publish 1 no split, publish 2 the one sweep) 2026-10-06 18:49:11 +00:00
igneum-labs
e4f842ef66 Counter ASIC 3.0 status: the 0.3.15 digests measured (the digest moves at publish 1; the sixteen-field object 2c1162e2 at floor 226,800) 2026-10-06 18:48:37 +00:00
igneum-labs
ee2c77928d Counter ASIC 3.0 status: the 0.3.15 cut in flight (the fork merge f86a33c0, the test race fixed in tests only, the two-publish order) 2026-10-06 18:48:12 +00:00
igneum-labs
036ade494c Counter ASIC 3.0 status: the rehearsal chain's first block 18:41:10Z; the flip about 19:01Z, the floor 19:21Z 2026-10-06 18:42:19 +00:00
igneum-labs
66aee57839 Merge branch 'ca3-v4-node' into ca3-coord 2026-10-06 18:38:49 +00:00
igneum-labs
e979173de1 Counter ASIC 3.0 gates (node): the rehearsal's miners are the GPU workers (the object inherits the devnet genesis bits); the id assertion on a worker box reads the pack's program.h
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 18:38:26 +00:00
igneum-labs
5379c1b35d Counter ASIC 3.0 status: the rehearsal's CPU miners cannot mine the 2^27 genesis; CUDA workers; the clock from the first block 2026-10-06 18:37:31 +00:00
igneum-labs
9ba4a13851 Counter ASIC 3.0 status: the digest difference explained (the network id is folded in), the corrected values with their ids 2026-10-06 18:35:33 +00:00
igneum-labs
eb311937e7 Merge branch 'ca3-v4-node' into ca3-coord 2026-10-06 18:35:31 +00:00
igneum-labs
845f7bb8ae Counter ASIC 3.0 gates (node): the digests re-read on the right network ids (the digest folds the network id in; the fleet's a15db4f0 on suffix 400 confirmed with the Mac binary of the same fork commit; the publish example 65a42ab2 on the devnet id); the 0.3.13 parse refusal as a cut-order fact
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 18:34:52 +00:00
igneum-labs
9e61ce6956 Counter ASIC 3.0 status: the rehearsal's first reading (digest a15db4f0 on 16 boxes, the parse refusal of the 15-field file by a 0.3.13 node, the seed port collision and restart) 2026-10-06 18:31:21 +00:00
igneum-labs
40cfadf4f5 Counter ASIC 3.0 status: the P1 rehearsal launched 18:22Z (boxes, object, binaries, the clock to the flip and the floor) 2026-10-06 18:23:24 +00:00
igneum-labs
9405ce0da6 Merge branch 'ca3-v4-node' into ca3-coord 2026-10-06 18:19:53 +00:00
igneum-labs
98fb0ee14e Counter ASIC 3.0 gates (node): the rehearsal re-cut for the hour (1 block/s: 600-DAA epochs, window 600, flip at minute 20, floor at minute 40; digest d23394e7...)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 18:18:04 +00:00
igneum-labs
b016284e03 Merge remote-tracking branch 'origin/master' into ca3-coord 2026-10-06 18:17:32 +00:00
igneum-labs
02ed040e88 Counter ASIC 3.0 status: the two fast-forwards and their CI runs (decision 5 closed); the project lead's go (v4 now, the clean-day wait removed), the P1 rehearsal running, 0.3.15 tonight on PASS 2026-10-06 18:17:31 +00:00
igneum-labs
1b873c6791 Build server: the remote checkout discards the previous overlay first (the stale-overlay class, PC 1 worker, 6 October 2026)
remote-run.sh gains a checkout mode used by lib.sh: git checkout -- . and git clean -fd (target dirs, the sha stamps and
ignored files kept), fetch, branch at the commit, then a clean-tree check; the overlay follows. Before this, the rsync of
uncommitted files stayed in the box's tree and the next commit's git checkout -B refused with 'local changes would be
overwritten'. remote-run.sh --self-test reproduces the dirty tree (edited tracked file, untracked file, target dir, sha
stamp), shows the plain checkout refusing and the mode landing clean on the new commit; it runs in ci.yml and passed on the
Mac and the box; a live dirty-then-clean pair on the fork worktree passed too. Plan: section 5, gotchas of the first day.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 18:16:27 +00:00
igneum-labs
4a14808c4e Merge site-ui-3 item 0: the home page's live scene reads the chain (block height, shards proven, last lock), the failed-feed state is labelled
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 18:14:48 +00:00
igneum-labs
a0e8031d11 Merge site-miner: the 0.3.14 miner on the site (real captures, the four pages, Ember Tune measured, Power control)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 18:14:48 +00:00
igneum-labs
cd1a0c0cf6 Home live scene reads the chain, not the window: chain block, shards proven, last lock, live colours, a plain unavailable state
The "LIVE DEVNET" scene on the home page showed blocks 21, proven 0, locked 3 and grey nodes while the devnet stood past
chain block 140,000 with 2,090 shards paid and a checkpoint locking every 30 s. Four causes, all in site/index.html:
- "blocks" was the scene's own spawn counter, never the chain;
- "proven" counted blocks of the 90 s window whose shards were all paid, and proofs land a median 380 s behind the tip
  (median_proof_lag_s), so the window can never hold one;
- "locked" counted locked checkpoint blocks inside the same 90 s window (always about 3);
- the live path skipped the colour state machine, so every real block stayed grey, and a failed first fetch left the
  simulation running under a label that looked live, with no further polls.

Now: /api/live carries state.height (the chain block number, the same field /api/stats reports, one indexed subquery);
the scene's counters read chain block (state.height), shards proven (proving.paid_shards_total, the node's count of paid
shard records, with the 10-minute count and the median lag in the note) and last lock (finality.latest_locked_index);
live blocks take the observer's own words (pending, included, excluded, proven, locked checkpoint, final to its left),
refreshed on every poll, with a legend in those words; the hero tile shows the chain block instead of the node's
held-block count; polling never stops (2 s while fresh, 10 s while off) and the off state is labelled "simulated preview ·
live feed unavailable" or "observer offline, last update N ago" with a note that the counters count simulated blocks.
Also found while verifying: the scene advanced a fixed 16 ms per frame, so it ran at double speed on 120 Hz displays;
it now uses the real frame time, capped at 50 ms.

/live had the same window bug in its "proven 0/16" counter; it now reads the observer's 10-minute truth (chain blocks
with every shard paid, of the chain blocks planned in 10 min) with the lag and the chain total in its title.

Verified against the live API through tools/site-serve.mjs in the built-in browser and headless Chromium:
chain block 140,489, shards proven 2,130, last lock #6,784; the failed-fetch state shown by blocking /api/live.
Screenshots: docs/plans/site-ui-3-shots/item0/ (1440 and 390, live and failed). Checks: identity grep 0 hits,
link check 708 links 0 broken, site/api tests 14 pass, site build clean.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 18:14:05 +00:00
igneum-labs
e5d5235a27 Site: the miner page pictures 0.3.14 (Mine, Earnings, Prove, Settings; the card row; Ember Tune measured)
Real screenshots of the live 0.3.14 app on the Apple M5 Max (paused, Ember Tune off, as the project lead left it), shot headless
at 1440x900 and 390 px, dark and light, the rail foot, the address and the machine id masked: miner-dashboard.webp
(the hero, same name), miner-earnings, miner-prove, miner-settings, miner-dashboard-light, miner-phone.
miner.html: a page-by-page section (the card row cell by cell, three page shots, light and the phone), the lead and
the meta copy name the four pages and pounds a day at the user's price, the Ember Tune feat carries the app's one
sentence and the measured PC 1 rows from the 6 Oct log (5090: 311.0 to 226.8 W for 0.15% of rate; 4070: 106.0 to
75.6 W for none; the floor, not the optimum), the Power control feat (one approval, then the helper task, no prompts),
the dev fee moved to Earnings as in the app. index.html: the same hero shot, two pills. build.mjs: the caption no
longer says 'until 0.3.6' (0.3.14 still says Igneum Miner). The 9070 XT row, the market price for pounds earned and
the bench anchor (the run 6 entry is on the ship0314 branch) are marked as owed or coming.
relay/playbooks/site-capture-pc1.ps1: a read-only run job that shoots the installed app's UI on PC 1 with Edge
headless and drops the PNGs on the relay (no quit, pause, resume or settings change; passes the playbook checks).
docs/plans/site-miner-2026-10-06.png: before and after.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 18:13:01 +00:00
igneum-labs
d354d5f87a Merge origin/master into ca3-coord: Counter ASIC 3.0 complete (every gate green, P2 green, P1 written); the drive-ref check skips single-quoted here-strings and the copied-sources check reads code lines only (master's CI red on 9d23b70); main's decisions and the close in the status file 2026-10-06 18:05:54 +00:00
igneum-labs
fecda38dab Counter ASIC 3.0 status: PC 1 free, the 9070 XT restored (confirmed off at 17:55Z, mining from 17:57Z), the amd:1 flag back 2026-10-06 18:02:01 +00:00
igneum-labs
43f0cd8e25 Counter ASIC 3.0 status: P2 green (miner-signalled activation, three runs and the failed case, G6), P1's plan and objects written; the line for the project lead re-read 2026-10-06 17:57:35 +00:00
igneum-labs
8f4c75b6c7 Merge branch 'ca3-v4-node' into ca3-coord 2026-10-06 17:56:58 +00:00
igneum-labs
7c8b781383 Counter ASIC 3.0 status: the cards-off rule from main (runner flag + CI check tonight), the 4070 consequence 2026-10-06 17:56:13 +00:00
igneum-labs
fb6bb8f643 Counter ASIC 3.0 gates (node): G6 on the signalling fork change GREEN (jobs build-20261006-173017, -174027, -174823: the 2.0 flake re-run alone, the five crates and the app, the relay upload fault noted)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 17:56:11 +00:00
igneum-labs
68e903ed76 Counter ASIC 3.0 status: the watts job's failure and the 9070 XT restore in flight; the 4070 came back 2026-10-06 17:55:18 +00:00
igneum-labs
c0d51a4334 Counter ASIC 3.0 status: the build-server rule passed to every lane 2026-10-06 17:53:17 +00:00
igneum-labs
82a1a5dc97 Build server adopted: box-first build rule in CLAUDE.md, reproducible Windows exes, the commit-string gate, PC and Mac recipes
Main's decision of 6 October 2026. CLAUDE.md 'Running agents on this Mac': every Linux and Windows cargo build and every
Linux test suite goes to igneum-build-1 through tools/build-remote.sh and tools/cross-remote.sh; the PCs keep GPU and
Windows-runtime jobs; the Mac keeps macOS binaries, the DMG and Metal tests under the lock. -Wl,--no-insert-timestamp in
cross-remote.sh, proto-cuda/windows-node/cross-build.sh and jobbuild.rs (two box builds byte-identical, verified).
The empty-commit class: tools/ci/commit-string-check.sh (self-test in ci.yml, shown firing on a Mac worktree build and
passing on a box build) runs on every igneumd from the three build scripts; push-build-inputs.sh adds node.commit_full,
the PC job writes a minimal node/.git from it at extract and cleans kaspa-build-info on a new commit (4 jobbuild tests
pass, run on the box); cross-build.sh refuses a worktree and cleans on a new commit. Plan: second worktree's clean build
1 min 18 s with sccache 604 hits of 993.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 17:50:39 +00:00
igneum-labs
f3c226dfd6 Counter ASIC 3.0 status: the RTX 4070 ladder (holds to 200,000 ops at its tune point; binds at 330,700 under the 160 W cap) 2026-10-06 17:49:44 +00:00
igneum-labs
30c996699a Counter ASIC 3.0 gates (node): the signalling gate GREEN (two of three never flips, all three flips at the first full window, nobody flips at the floor; the failed case fails on eight checks), the four summaries, the preconditions rows
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 17:47:31 +00:00
igneum-labs
9e136669bb Build server: remote-run.sh with the JSONL build log, benchmark plan docs/plans/build-server.md, commit hash in box builds
remote-run.sh runs on the box behind BR_* exports: slot, sccache stats, the RESULT line and one JSON line per run in
/srv/builds/_log/builds.jsonl (v 1, id, host, tool, worktree, crate, kind, command, target, branch, sha, label, agent, slot,
wait_s, queued_at, start, end, secs, exit, compiles, sccache, load_end, artefacts; written on success, failure and the 2 h
slot give-up), the label ending in '; agent=<name>' (IGNEUM_AGENT, default the worktree). The remote checkout is a branch and
build-remote.sh cleans kaspa-build-info (release profile) on a new commit, so the box's igneumd carries its commit hash
(no Mac worktree build does: .git is a file there). cross-remote.sh fetches the GCC 13 runtime DLLs beside an exe that
imports libstdc++-6.dll. The plan holds the three benchmarks: clean node build 1 min 27 s (Mac 12 to 18 min), incremental
7 s (Mac 2 to 15 min), Windows cross 1 min 44 s (Mac 4 min 49 s to 12 min 28 s), their consequences and the proposed rules.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 17:41:26 +00:00
igneum-labs
371761e2f3 Counter ASIC 3.0 status: item 6's RX 9070 XT column (the card alone; every family 0.75x to 1.30x except perm and mm8; R3 unmoved) 2026-10-06 17:36:21 +00:00
igneum-labs
22b83582ad Counter ASIC 3.0: item 2's 9070 XT rows (bit-exact, +2.0 s OpenCL compile per pack, no rate cost) 2026-10-06 17:30:00 +00:00
igneum-labs
e6be730018 Counter ASIC 3.0 gates (node): the two cut preconditions: the fleet rehearsal plan (counter-asic-3-rehearsal.md, the publish and rehearsal override objects with their digests ac8e60ce... and bc2142b1...), the PROPOSED miner-signalled activation (node doc section 6), the fast-time signal gate class-v4-signal.mjs, the signal window in override-60x.json (120) and the README
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 17:27:50 +00:00
igneum-labs
2d034cc9c6 Counter ASIC 3.0 status: G2 AMD green (1,024 of 1,024 on both packs, re-hashed here) 2026-10-06 17:23:43 +00:00
igneum-labs
b76a05bf26 Counter ASIC 3.0 status: family run d (AMD compile answers; the loaded-card ratios unusable; run e with the card alone) 2026-10-06 17:21:43 +00:00
igneum-labs
7cbdce082f Counter ASIC 3.0 status: the 9070 XT back on 8 identities (rate unchanged) 2026-10-06 17:08:40 +00:00
igneum-labs
c468c8a3d5 Counter ASIC 3.0 status: the identities job's parse fault and the new CI guard 2026-10-06 17:03:46 +00:00
igneum-labs
99f7f2ab8c Counter ASIC 3.0 status: job 2 ran on gfx1036 (re-run owed), the reset and identities findings 2026-10-06 17:01:06 +00:00
igneum-labs
fe99badbc3 Counter ASIC 3.0 status: PC 2 held for the 0.3.14 suite, PC 1's queue and the update order 2026-10-06 16:54:15 +00:00
igneum-labs
c314790dcf Counter ASIC 3.0 status: the two cut preconditions (staging rehearsal, miner-signalled activation) as gates; the line for the project lead re-worded, no date until 0.3.14 runs a clean day 2026-10-06 16:47:12 +00:00
igneum-labs
4e6c6fc87c Counter ASIC 3.0 status: the blocker closed (G4 re-run with the id assertion green), every gate green, the line for the project lead confirmed 2026-10-06 16:45:52 +00:00
igneum-labs
365e927200 Merge branch 'ca3-v4-node' into ca3-coord 2026-10-06 16:44:27 +00:00
igneum-labs
ffe335d768 Counter ASIC 3.0 gates (node): the program id carries the class: G4 re-run GREEN with the id assertion (every v4 epoch's id = the CLI's class v4 id, differs from the same-seed v3 id; the assertion's failed case fails on that one check), the seven re-exported packs' Metal fingerprints equal the hash lane's table, G5 workers rebuilt from the fix
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-06 16:43:46 +00:00
igneum-labs
52aa917089 Counter ASIC 3.0 status: the hash lane green on the id fix (c17e6b6 merged) 2026-10-06 16:40:09 +00:00
igneum-labs
f21598563f Merge branch 'ca3-v4-hash' into ca3-coord 2026-10-06 16:39:24 +00:00