Igneum: the GPU-mined zkEVM L1. Node, miner, app, spec and site.
Find a file
2026-10-09 09:39:55 +00:00
.claude/agents Pre-public scrub, the text pass (7 October 2026, 19:5x UK): no founder name, personal login, earlier business or personal address in any tracked text file, and a gate check that keeps it so 2026-10-07 18:39:50 +00:00
.forgejo/issue_template Builder programme (8 October 2026): /build, /grants, the Devnet 3 faucet on build-1, docs/build as the source 2026-10-08 10:24:07 +00:00
.github/workflows Merge branch 'ci-steward' into ci-steward-2 2026-10-07 17:02:55 +00:00
app The wallet's History row: a recovery lock reads "finalised (recovery lock)", never plain final (review B F04, the founder's ruling) 2026-10-08 19:17:13 +00:00
brand site: share cards and metas from one source (site/og), rendered on a build box 2026-10-08 14:51:03 +00:00
contracts Bridge: the Install script (voter table and optional certificate onto an already deployed verifier; for a chain whose table is read at its first lock, igneum-devnet-4) 2026-10-08 16:57:34 +00:00
docs Merge master 490ef1fb8 into ca3-coord-record under the master-landing lock 2026-10-09 09:39:52 +00:00
igneum-census Counter ASIC 3.0 item 8: the latency-shadow knob (LoadClass +sh<S>x<R>), its packs and the PC 2 playbook 2026-10-06 07:58:35 +00:00
igneum-pow class-v6: program.h's load and byte defines keep their exact text (the pinned packs byte for byte); the executed-count note is a line of its own on the window packs 2026-10-08 20:18:49 +00:00
infra build-1 guards (the coordinator, 9 October 2026, after the 09:54 OOM): the queue reader as a unit, a memory guard every minute (one fresh sync at a time by unit; free memory under 15 GB alerts), an edge check every five minutes (the workers page, the git host, /light; a failed caddy started again), Restart=always and the OOM order on caddy, cron, atd, rsyslog and the reader (last in line) and on the three sync units (first in line); install.sh runs on the box from the mirror. 2026-10-09 09:17:18 +00:00
packaging The served-file identity guard: every served file built from reports or merges is refused at its publish step on an identity hit (the committed lists plus the private list on the Mac, or a hashed token list under a salt on a box, no name in clear), the refusal logged redacted; wired into publish-manifest.sh and publish-public.sh; the daily edge check; the box-form generator; self-tests 2026-10-09 08:18:36 +00:00
pool Pool v0 rebased onto master and the 0.3.14 fork: the program class and era seed ride with every seeds and job line; the re-check test for class v3 and class v4 2026-10-06 18:49:13 +00:00
proto-cuda Merge build/master 9cfaadbe7 into class-v6-kits (master's registry, harness map and gate-remote.sh taken; the kit's batch kit-class-v6-20261008-01 re-recorded on master's registry and the map page regenerated) 2026-10-08 20:43:21 +00:00
proto-metal class v6 kit: the Metal worker runs generator 6 as it runs class v5 (packClassOf 6 = v6, the state-leaf rules on both classes, as packfile.h 5f21d1165); the kit's packfile-test names the checked-in class v5 pack as its known-good (the generator 6 all pack failed that check by construction in the third build) 2026-10-08 19:39:22 +00:00
proto-newpow class v5: the pod bench's run script (proto-newpow/class-v5/run.sh: both packs, two passes, 20-s power windows) 2026-10-07 11:24:23 +00:00
proto-opencl F10 rows, I05 epoch tag, I06 pack geometry rule across the three hosts 2026-10-08 19:53:24 +00:00
proto-vdf proto-vdf: Wesolowski VDF between the certified checkpoint and the program seed 2026-10-03 16:39:01 +00:00
proving Merge master 9f99c3f0a into v607-floor-memory under the master-landing lock 2026-10-08 22:20:07 +00:00
relay relay clients: the watchdog runs as a 10 s loop at logon; the service loop restarts the agent after 10 s 2026-10-09 08:39:48 +00:00
scene 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. 2026-10-08 09:12:56 +00:00
sim The 2.0.3 reruns of rows 1b and 1c on the fixed node (finality-2.0.3-kind-and-conflict c8d22a85, 9 October 2026, 01:27 to 01:45 UK): the lock kind reads recovery on every node, two valid certificates at one index pause finality with reason conflict and no new lock above it; rows, files and the registry batch 2026-10-09 00:47:43 +00:00
site The served-identity guard at the site build: downloads.json and release-manifest.json (/release.json) go through tools/ci/served-identity-guard.sh before the served tree is final, exit 1 (a hit) or 2 (no private list) stops the build; while the shared guard is not in the tree the build names the unguarded files and goes on; the deploy script stops on a failed build (its tail masked the exit code) 2026-10-09 08:27:47 +00:00
tools Merge master c0b97150f into tv-d02 under the master-landing lock 2026-10-09 09:38:35 +00:00
.gitignore gitignore: infra/cross/out-workers-box/ (the workers tools/workers-remote.sh fetches from the box) 2026-10-06 19:11:39 +00:00
.vercelignore Commit identity rule and a deploy ignore file 2026-10-03 17:33:46 +00:00
CLAUDE.md Igneum: design docs, Metal lottery-hash prototype, CUDA test pack, finality simulation 2026-10-03 15:06:01 +00:00
rust-toolchain.toml Igneum Wallet 0.1.6: the page bridge (main's order of 8 October 2026: igneum.network/swap connected any injected wallet, the Igneum Wallet signed only inside its own window). The engine listens on a fixed loopback port, 127.0.0.1:26811 (src/bridge.rs, igneum_common::http::serve_on), beside its token-guarded window server; a page's provider (site/wallet-provider.js: window.ethereum when nothing is injected, window.igneum beside MetaMask, announced through EIP-6963) POSTs JSON-RPC there with the X-Igneum-Bridge header (a preflight first; the private-network allow header answered) and polls a request the window has to answer. Rules: a site is approved once (eth_requestAccounts raises a connect request; Approve in the window stores the origin in the settings, Decline or five minutes ends it with 4001); every other method from an unapproved origin answers 4100 and creates nothing; eth_sendTransaction (priced by the node: gas with the call's data, the fees, the balance check), personal_sign (EIP-191) and eth_signTypedData_v4 (EIP-712, src/eip712.rs, the specification's Mail vector) each wait as their own request, shown with the origin and the facts and confirmed in the window (Touch ID or Windows Hello when enrolled, the same gate as a send); after a transaction the card keeps the node's word and the checkpoint this wallet verified; reads go to the wallet's node for a connected site; wallet_switchEthereumChain accepts the wallet's chain and refuses another with 4902. Settings: a Websites card with the switch and the connected sites (Disconnect); the lock screen says which site waits. Known-failed first: a page without approval gets nothing (bridge::tests::a_page_without_approval_gets_nothing, the view and provider tests on build-2 before the files existed). Tests: bridge.rs (4), eip712.rs (3), tx.rs (the digest signer recovers), ui/view.test.mjs (the words), site/wallet-provider.test.mjs (5). Versions 0.1.6 in the three places; rust-toolchain.toml taken from master so cargo on the Mac reads the pinned 1.99.0. 2026-10-08 11:13:27 +00:00