Commit graph

589 commits

Author SHA1 Message Date
igneum-labs
43547048be Merge explorer-dn3 91b64b80 into master (gate: green on 91b64b80, recorded by tools/ci/pre-push.sh; landed on the build mirror) 2026-10-08 11:05:43 +00:00
igneum-labs
58602cc81a Merge build-server f1a39bd0 into master (gate: green on f1a39bd0, recorded by tools/ci/pre-push.sh; landed on the build mirror by the build-server lane)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 11:02:29 +00:00
igneum-labs
91b64b809a Merge remote-tracking branch 'build/master' into explorer-dn3
# Conflicts:
#	site/build.mjs
2026-10-08 10:58:52 +00:00
igneum-labs
f1a39bd01f site deploy: every served page in SERVED_PAGES must answer 200 after a deploy (/swap, /faucet; the builder pages join as they land), with the known-failed self-test case
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:54:22 +00:00
igneum-labs
3177d2e3c3 site-serve honours a rewrite's host condition, as Vercel does (the explorer host's root rewrite had turned the local home into /explorer and the scene parity gate found no scene on the home fold)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:51:23 +00:00
igneum-labs
68b624b82e Merge class-v6-invention 5abdf181 into master (gate: green on 5abdf181, recorded by tools/ci/pre-push.sh; landed on the build mirror) 2026-10-08 10:47:37 +00:00
igneum-labs
c49358ed94 Merge build-programme 8472843f into master (gate: green on 8472843f, recorded by tools/ci/pre-push.sh; landed on the build mirror) 2026-10-08 10:46:53 +00:00
igneum-labs
0defaba741 Merge spec-accept-23 ba08d6b8 into master (gate: green on ba08d6b8, recorded by tools/ci/pre-push.sh; landed on the box mirror) 2026-10-08 10:45:43 +00:00
igneum-labs
5abdf18115 Merge build/master into class-v6-invention (the export-exclude line for docs/analysis/class-v6 kept once, the history lane's wording)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:40:05 +00:00
igneum-labs
8472843f8b Merge build/master into build-programme: the swap page (dex-devnet3) joins the Build group in the nav, the footer, the sitemap and the nav check; /build links /swap
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:39:07 +00:00
igneum-labs
cb70a8fa60 Merge remote-tracking branch 'build/master' into explorer-dn3 2026-10-08 10:34:09 +00:00
igneum-labs
9975a4679f Export exclude: docs/analysis/class-v6 (the class v6 research lanes' documents are research for the team, box paths and lane ids in them; the identity grep hit the machine-name pattern in the invention file's header)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:33:29 +00:00
igneum-labs
1fca12afbf Merge dex-devnet3 c64e809f into master (gate: green on c64e809f, recorded by tools/ci/pre-push.sh; landed on the build mirror) 2026-10-08 10:32:52 +00:00
igneum-labs
5d1044ca25 Litepaper (and /claims, /randomx from it): the RandomX record as lane A's history reads it (docs/analysis/class-v6/history.md 2.3, 8 October 2026): one chip shipped, Bitmain's Antminer X5 (September 2023) at 1.46x per joule over a desktop CPU on silicon believed mining privately from about 2021; RandomX v2 released 25 March 2026 with its mainnet activation pending; the X9 withdrawn in May 2026 with zero units (the X36 sentence stands); "no chip shipped" and "seven years without a shipped chip" gone from every served sentence; ledger X34 and C2 corrected, pins moved, the public ledger and the ledger page regenerated. Governance line beside the class v5 crossing sentence (main's wording): classes rotate on findings and at least yearly, a class change is a release activated by block height; class v6 named as the design in progress with its four layers, dated 8 October 2026
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:32:47 +00:00
igneum-labs
cb2b8a2578 Builder programme (8 October 2026): /build, /grants, the Devnet 3 faucet on build-1, docs/build as the source
- site/build.html and site/grants.html rendered by site/build.mjs from docs/build/build.md and docs/build/grants.md (the gate's site-only copy keeps the committed pages, as for /bench); site-relative links in the markdown renderer
- the nav's fourth group, Build (/build, /faucet, /grants), in the partial, the sheet, the footer, the sitemap and tools/ci/site-nav-check.mjs; the faucet leaves the Mine panel
- site/faucet.html is the Devnet 3 faucet: 10 IGN per address per day, 500 a day, chain id 4463, no value, resets without notice; the page posts to https://faucet.igneum.network/api/faucet and shows the balance
- infra/build-server/faucet: faucet.mjs (zero dependencies, signs with site/lib/eth.mjs, limiter self-test known-failed first, 100 IGN cap on the amount), the unit, faucet.sh install/status; live on build-1 behind Caddy since 10:16Z, funded 2,000 IGN by the fleet's funder at 10:01Z; first drip 0x8620e9d8 at 10:17Z
- docs/build: README, first-contract.md with its test script and the PASS line (24 s end to end through the public RPC and faucet, Foundry 1.8.5, Counter deployed at block 27055), rpc.md read from the node (75 methods probed, served and not served), faucet.md, verify-a-block.md, grants.md
- .forgejo/issue_template/grant.md: the grant application template on git.igneum.network

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:24:07 +00:00
igneum-labs
960f081ad2 Devnet 3 explorer: transactions (/tx/<hash>), accounts (balance, nonce, code, 7 days of transactions), the proving view (/proving), the DAG picture and the verified badge (the covering certificate re-checked in the browser with site/verify) on /explorer and /block; class and lock state per block; /api/explorer gains ?tx, ?txs, ?proving, ?stats, ?dag; the dn3_ default for /api/explorer, /api/stats, /api/supply and /api/checkpoint (?index=N); replaced chain blocks read as such against the indexer
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:24:03 +00:00
igneum-labs
caa0071efc Site: the Devnet 3 swap page at /swap (MetaMask and any injected wallet by chain id 4463 and the public RPC; quotes, swaps, the faucets, add liquidity; every swap's block with its proof status from /api/live; Devnet 3, test tokens, no value on every view), Swap in the Mine panel and the sheet of every page
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:23:29 +00:00
igneum-labs
3c0f80d835 Class v6 invention lane: first cut of docs/analysis/class-v6/invention.md (every candidate layer beyond the four with its paragraph, known-failed harness run and chip row; the sound per-load shadow measured today: 0.927 rejection per candidate on 256 seeds, verifier 8.3 to 8.8 ms loaded, two packs exported; the per-load prototype's era-window instrument fault found; the ranked list: per-load placement, register width, warp-uniform block selection, the reserve's order), the census script and its two TSVs
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:20:52 +00:00
igneum-labs
93e55f9d43 Class v6 research lane B: the hardware future, five years out (first cut and the full report in one file)
docs/analysis/class-v6/hardware-future.md: one table over PIM and PNM (HBM-PIM, AiM, LPDDR5X-PIM, UPMEM), HBM3E, HBM4 and the custom HBM4E base die, fine-grained DRAM on logic, LPDDR6, 3D DRAM, RLDRAM 3 and Folded Banks, FPGA with HBM2e, wafer-scale, CXL, optical I/O, chiplets and UCIe, and SRAM at N2: energy per dependent read, latency, cost per GB, availability to a non-hyperscaler, the k_read and shadow k bands, the edge per joule at zero shadow against the 5090 and the M5 Max, and the one layer of the four that blunts each with a number. The three findings: a 2 GiB SRAM full store on one N2 reticle is the strongest five-year chip (13x to 17x per joule, about USD 0.3 per MH/s) and no layer reaches it (layer 2 moves its capex, not its joules; the shadow at k = 0.5 holds 4.8x); per-bank PIM is blind (1.6 percent of reads in-bank at 2 GiB) and the custom HBM4E base die is the f = 1 chip with its controller in the stack (6.5x to 14x), untouched by layers 1 to 4; the denominator is the wrong card (the M5 Max at 0.78 microjoules halves to thirds every chip edge). Section 5 carries the k bands for the research lane's chip rows; section 7 the four decisions with defaults and deadlines; section 9 the sources with URLs and dates. tools/ci/export-exclude.txt: docs/analysis/class-v6 is research, not public export.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:17:50 +00:00
igneum-labs
b37edbeb73 Explorer indexer: refuses a node that reports another network (EXPLORER_NETWORK, default igneum-devnet-3) and re-reads from the tip when the indexed number runs past it
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:10:54 +00:00
igneum-labs
64f74beb08 Explorer indexer: block hashes stored without 0x, the DAG convention of live_blocks, so a transaction joins its block
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:09:05 +00:00
igneum-labs
c3957f2879 Explorer indexer: the observer's EVM-side sibling for Devnet 3 (live_txs, live_accounts, explorer_blocks, explorer_state under the dn3_ prefix; receipts, logs, balances, nonces, code; the three-deep reorg re-read; 7-day retention; igneum_getNodeInfo kept for the class floor)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 10:03:34 +00:00
igneum-labs
0276128177 Merge live-shards-8 2c589122 into master (gate: green on 2c589122, recorded by tools/ci/pre-push.sh; landed on the box mirror) 2026-10-08 09:19:53 +00:00
igneum-labs
de6e5ae2e5 Merge build-server 103ceb0f into master on the box mirror: the site deploy checks (served links, the regrouped /miners count, the pipefail fixes) 2026-10-08 09:18:01 +00:00
igneum-labs
2c58912211 Live proving feed: the page says when its shard states are stale, and a chain block with an empty plan reads "no shards in this block" (8 October 2026, main's order: the project lead wants to watch proving and shards in real time; a stale snapshot must read as stale). Reading of the day: /api/live's proven and paid states come from the Devnet 3 observer's own node on igneum-build-1 (igneum-observer-node-dn3, EVM 26850), not from hub-1; that node stopped crediting payouts at 23:57Z on 7 October (paidShards frozen at 7,304 while blocks carried 8,457 proof records by 03:00Z and hub-1 counted 11,861 by 08:56Z), and the page kept showing the paid total as fresh. site/lib/proving-health.mjs (tests known-failed first: "Cannot find module", then 10 green on build-2): stale when the observer's last status read is over 60 s old (status_at, new in the observer's live_state.proving), when the node's tip trails the newest block by over 300 DAA, or when blocks carried proof records in the last 10 minutes and no shard moved to verified or paid for 10 minutes (the blind-to-records class); a quiet chain is not stale for lack of credits. /api/live carries stale, stale_reason, status_age_s, tip_lag_daa, records_10m and last_change_at on proving (two more indexed readings; scene/feed-contract.json lists the keys; the recorded fixture carries them). /live: the Proven tile's line reads "proving feed stale: ..." in ember, else "... last credit N s ago"; the inspector's count adds "feed stale". Scene 2.0.7: a chain block whose plan is known (block.number set, carried as plan on the normalised block) and empty reads "no shards in this block"; loading and late stay for an unread plan (shard-words test, known-failed on 2.0.6). Gate: the health test joins the site unit-test line.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 09:12:56 +00:00
igneum-labs
9a2192c758 Merge spec-scrub 043a419c into master (gate: green on 043a419c, recorded by tools/ci/pre-push.sh; landed on the box mirror under the exception declared by main: main's ruling, 7 Oct 2026 19:5x UK: the GitHub account is suspended, lanes land on the box mirror's master, the box gate stamp is the verdict; GitHub gets the fast-forward when it answers) 2026-10-08 09:04:07 +00:00
igneum-labs
12f6f9a8cd Merge gh-igneum-dir 3d805feb into master (gate: green on 3d805feb, recorded by tools/ci/pre-push.sh; landed on the box mirror under the exception declared by main: main's ruling, 7 Oct 2026 19:5x UK: the GitHub account is suspended, lanes land on the box mirror's master, the box gate stamp is the verdict; GitHub gets the fast-forward when it answers) 2026-10-08 08:57:37 +00:00
igneum-labs
043a419cb4 fresh-repo.sh: IGNEUM_NEUTRAL_IDENTITIES keeps a neutral identity as it is (the public export's "Igneum contributors"), excepted from the mailmap and the verdict
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 08:53:52 +00:00
igneum-labs
73941a02c1 fresh-repo.sh: the founder's names come from the private list only; a history identity is mailmapped, never mined for names (the public export's "Igneum contributors" would have become a first name to rewrite)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 08:52:39 +00:00
igneum-labs
3d805febb4 Every gate gh call reads Igneum's own gh directory, never the founder's (main's rule, 8 October 2026, 10:0x UK): tools/ci/gh-env.sh sets GH_CONFIG_DIR=~/.config/gh-igneum for the gate, the hook, the merge tool and the CI-state reader
At 09:46 UK the founder's gh had his other account active (his own work) and tools/ci/gh-account-check.sh refused every Igneum push from the Mac (the v5 lane's 56a50160 held local). The check now reads Igneum's directory: empty, it refuses naming the one step (the founder or main stores the Igneum token there with `GH_CONFIG_DIR=~/.config/gh-igneum gh auth login --with-token`; no lane does); another login, refused and named; the stored entry, passes; while tools/ci/github-suspended stands it skips with a line, because no gh call can succeed and the hook already refuses GitHub pushes, so the lanes land on the mirror meanwhile. Known-failed first: an empty directory, another login, the founder's directory never read (the fake gh records the directory it was given), the marker's skip, no gh. IGNEUM_GH_CONFIG_DIR overrides the path for the self-tests.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 08:51:55 +00:00
igneum-labs
103ceb0f3c Site deploy checks: grep -c in place of grep -q on every piped read (grep -q exits on the first match and the writer fails under pipefail)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 08:44:32 +00:00
igneum-labs
f3d06b60fc OpenCL worker: on an Intel platform rotr_var is rewritten to the shift form before the build (the Intel rotate fold, the Arc B580 bisect of 7 October 2026)
Intel's compiler turns rotate(x, (0u - n) & 31u) into a rotate LEFT by n: lane 0's register trace on the B580 diverged
at instruction 6 of iteration 0 (rotr) and nowhere before, in both exchange modes, with every other family and the
dataset kernels bit-exact. proto-opencl/intel_rotr.h rewrites the one helper line when the device's vendor or
platform string holds Intel (host.c's buildProgram and the prepare path), no other vendor sees a change, no pack or
consensus text moves. proto-opencl/test_intel_rotr.c (the pre-push gate runs it) feeds the line through the rewrite
under Intel, AMD and NVIDIA strings and asserts the outputs.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
(cherry picked from commit 5f8abe10a6)
2026-10-08 08:44:23 +00:00
igneum-labs
1ad79979c9 Site deploy checks: the /miners row count reads table#bench-current (the regrouped bench), known-failed first (an empty current table reads 0), floor 20
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 08:44:00 +00:00
igneum-labs
28395fe5d8 Site deploy checks: pages read into a variable before grep (curl | grep -q under pipefail read false on a match: three false DEPLOY REDs)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 08:36:59 +00:00
igneum-labs
cf4d5c143c Merge ca3-v4-amend 780b608d into master (gate: green on 780b608d, recorded by tools/ci/pre-push.sh; landed on the build mirror) 2026-10-08 07:11:38 +00:00
igneum-labs
9065fd7057 CA4 hot-table job: the first kit flattened the eight hot packs into one folder (the job exited 2 in 0 s, pack hot32k4 missing); kit b carries packs/<name>/ for all nine, the fetch and run ids take a b suffix
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 06:30:27 +00:00
igneum-labs
a8b419ff64 Merge ca3-v4-amend 3b5bccae into master (gate: green on 3b5bccae, recorded by tools/ci/pre-push.sh; landed on the build mirror) 2026-10-08 06:29:02 +00:00
igneum-labs
3b5bccaec3 PC 1 Ember per-card job: a card the app cannot steer stores one baseline row and logs no progress line; count the stored curve before calling the run empty (the 9070 XT run exited 1 on a real row)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 06:18:25 +00:00
igneum-labs
87c0b06d42 Merge ca3-v4-amend f21fa4b9 into master (gate: green on f21fa4b9, recorded by tools/ci/pre-push.sh; landed on the build mirror) 2026-10-08 06:16:47 +00:00
igneum-labs
f21fa4b940 PC 1 Ember per-card job: the curve line cast an integer plus a string and threw (the 06:0x 5080 run's rows lost); string interpolation instead, and every card's stored curve printed at the start
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 06:06:24 +00:00
igneum-labs
e3bd943e0d CA4 microbench job: the kit's class v4 pack as the --pack argument (the exe's parser demands one before the microbench branch; the probes read none); republished as -c after the sparse run
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 04:37:08 +00:00
igneum-labs
863d205f6d CA4 packs and hot-table jobs: $pid is PowerShell's read-only automatic variable (the 04:04Z packs run threw at its first pack); $progId instead; the packs job republished as -b
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 04:11:17 +00:00
igneum-labs
c4dff5a86a CA4 microbench job: the installed worker's NVRTC DLLs copied beside the fetched exe and the exe run from its own folder (the loader refusal the research lane named)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 04:06:36 +00:00
igneum-labs
1984f2045d CA4 microbench job: the research lane's exact command (no --device flag), every line echoed when the exe refuses (the 03:54Z run exited 2 after one unseen line); republished as -b after the packs
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 04:04:53 +00:00
igneum-labs
9b8ab27815 CA4 SM-sparse rerun (c): the research lane's ca4sparse5 exe (the parameter-capture fix); the card-free check's NVRTC compile result gates the run
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 03:56:27 +00:00
igneum-labs
3e5b32bc7e CA4 SM-sparse rerun (b): the research lane's ca4sparse4 exe (the race-order fix); the job runs its card-free --list-race check first and stops with nothing run when the sparse variant is absent from the race order
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 03:05:51 +00:00
igneum-labs
31d74d8f31 Merge github-suspended 51481b1c into master (gate: green on 51481b1c, recorded by tools/ci/pre-push.sh; landed on the box mirror under the exception declared by main: main's ruling, 7 Oct 2026 19:5x UK: the GitHub account is suspended, lanes land on the box mirror's master, the box gate stamp is the verdict; GitHub gets the fast-forward when it answers) 2026-10-08 03:04:36 +00:00
igneum-labs
b75bf7fd9b Merge ca3-v4-amend 639703e0 into master (gate: green on 639703e0, recorded by tools/ci/pre-push.sh; landed on the build mirror) 2026-10-08 03:02:03 +00:00
igneum-labs
51481b1cac merge-to-master self-test: the nested refusal call's exit is caught (under set -e a plain assignment of a failing substitution ended the script before any check ran)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 02:59:43 +00:00
igneum-labs
46261fb641 merge-to-master: the suspension refusal lets --self-test through to exercise the refusal itself (the first cut refused its own self-test under the real marker)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 02:58:49 +00:00