igneum/docs/spec
igneum-labs 2a62a4e5d7 Merge origin/testnet-prep (5a682c5) into testnet-adopt: testnet identity, fee floors and pgas table adopted 5 October 2026, G13 signed build inputs, release-0.3.6 plan
Owner's decision, 5 October 2026: the proposed testnet identity (docs/testnet/README.md) and the proposed fee floors
and prover-gas table (docs/analysis/base-fee-floor.md, spec 05 section 5.10) are adopted as proposed. The three
documents now say "adopted 5 October 2026" with the sign-off noted and the per-network rule written in: the testnet
and the mainnet carry calibrated v1 from genesis; the devnet and the simnet keep the prototype set until the
fees_v1_activation_daa height switch (fork branch release-0.3.6) moves them.

Conflicts (generated site files): index.html keeps the 0.3.5 dev-fee sentence and testnet-prep's testnet-terms card;
litepaper.html keeps the 0.3.5 two-paragraph dev-fee text and testnet-prep's MetaMask paragraph; journey.json keeps
the 0.3.5 feed (newest 40); sitemap.xml keeps /miners and /wallet. Site rebuilt with node site/build.mjs.

Also: infra/fast-time/override-60x.json carries fees_v1_activation_daa 0 (the fork's fast-time test wants every
override field); docs/plans/release-0.3.6.md (the inputs push must run from this tree before the workflow verifies
the signature; the devnet rollout of the fee floor as a height switch; the morning order).

Checks: node site/build.mjs; link-check 324 links 0 broken; check-workflow-shell 0 findings; test-inputs-signing.sh
16 of 16 with the signer built from this tree; bash -n on the four shell files; the PowerShell parse rule at the
0.3.5 baseline (3 hits, unchanged).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 07:44:22 +00:00
..
00-overview.md Spec: close F2, F3, P5, P8, C9, E7, G7, X6 by rule or decision (3 October 2026) 2026-10-03 18:58:39 +00:00
01-lottery-hash.md Lottery hash: generator version 2 (16 load slots, fresh sources, acceptance rule), every vector re-cut, packs regenerated, three workers re-checked, 20,000-program census 2026-10-04 07:52:40 +00:00
02-consensus.md Round-4 consensus items: the fud.mjs runner (digest, ban, reorg scenarios on the fast-time 3-node network, ports 29400+), per-node override files and --equivocate-at in the harness, spec 02 section 2.8, spec 03 C1/C4/3.6 and the 3.10 rows, spec 08 section 8.7 2026-10-04 23:53:35 +00:00
03-finality.md Round-4 consensus items: the fud.mjs runner (digest, ban, reorg scenarios on the fast-time 3-node network, ports 29400+), per-node override files and --equivocate-at in the harness, spec 02 section 2.8, spec 03 C1/C4/3.6 and the 3.10 rows, spec 08 section 8.7 2026-10-04 23:53:35 +00:00
04-seeds-and-vdf.md Spec 0.1: lottery hash, consensus delta, finality v2 with the quorum floor, seeds and VDF, fees, open items 2026-10-03 17:45:08 +00:00
05-fees-and-economics.md Merge origin/testnet-prep (5a682c5) into testnet-adopt: testnet identity, fee floors and pgas table adopted 5 October 2026, G13 signed build inputs, release-0.3.6 plan 2026-10-05 07:44:22 +00:00
06-open-items.md Finality: the total-weight floor is two thirds (O-3.15 decided, 4 October 2026) 2026-10-04 08:17:50 +00:00
07-execution.md Proving v0: the app's prove setting, Proving tile and Set up hook; spec 7.7 (records, assignment, payout, activation as implemented); proving-v0 plan status; ledger P21 and P22; test script fixes 2026-10-04 14:09:32 +00:00
08-client-security.md Round-4 consensus items: the fud.mjs runner (digest, ban, reorg scenarios on the fast-time 3-node network, ports 29400+), per-node override files and --equivocate-at in the harness, spec 02 section 2.8, spec 03 C1/C4/3.6 and the 3.10 rows, spec 08 section 8.7 2026-10-04 23:53:35 +00:00
09-pool-protocol.md Spec 09 pool protocol, spec 10 light client, phone-app design 2026-10-03 21:43:51 +00:00
10-light-client.md Spec 09 pool protocol, spec 10 light client, phone-app design 2026-10-03 21:43:51 +00:00
README.md Spec 09 pool protocol, spec 10 light client, phone-app design 2026-10-03 21:43:51 +00:00

Igneum protocol specification, version 0.1

3 October 2026. Written so that a stranger can reimplement a node, a miner and a verifier and reach the same bits. Conventions, number labels (Measured, Implemented, Designed, Target) and the break-submission route are in section 0.

Section File Status One line
0 00-overview.md Designed Scope, normative language, what is implemented and what is designed, versioning, how to submit a break
1 01-lottery-hash.md Measured (construction, vectors on three GPU vendors and two CPU references); Designed (header binding, day key, growth, era schedule); Open where marked Seed words, generator, memory-hard cache and items, 32-lane unit and the wave64 rule, CPU verifier, epoch, day and era schedules, test vectors, determinism, conformance, the prototype-value list
2 02-consensus.md Designed The ordering layer as a delta on rusty-kaspa: 1 BPS and the steps, k, merge depth, DAA, header fields, emission, duplicate inclusion
3 03-finality.md Designed (simulated without a DAG, not implemented, not reviewed) Weight W1 to W5, checkpoints C1 to C5, quorum Q1 to Q4 with the 56.7% floor and the simulation that justifies it, the eclipse case closed by the floor (3.3.2), participation from votes in blocks (Q2, 3.4.1), sortition, fork choice, equivocation, residual risks, the first month, exchange guidance
4 04-seeds-and-vdf.md Measured (primitive, one machine); Designed (pipeline); Open (fallback) Class-group Wesolowski VDF, T from a genesis reference rate, 20-minute and 2-hour leads, proof format, who evaluates, fallback options
5 05-fees-and-economics.md Designed Base fee burned, priority fee 80/20 with per-frame attribution and the factory rule, proving pool, job market 90/10, no development fund, parameter signalling at 60%, upgrades at 90%, no stake, no treasury
6 06-open-items.md Open 60 items, each with the experiment or decision that closes it and its gate; O-2.8 closed and O-3.3, O-3.7, O-5.1, O-5.2 and O-5.6 narrowed on 3 October 2026
7 07-execution.md Designed (normative extract of docs/design/execution-layer.md; nothing implemented or measured) EVM semantics on the DAG (number, timestamp and its monotonicity rule, blockhash, PREVRANDAO from the epoch VDF, coinbase, gas limit, chain id, the quoted gas price), shard assignment by sortition (8 provers, 10-s window, then open, no bond), bridges (none official, no bridged stablecoins at genesis, proof bridge with the consensus proof in phase two)
8 08-client-security.md Decided (3 October 2026; nothing implemented) Reproducible builds with hashes in the repository, the release key published in genesis and held in hardware, the client refuses unsigned updates and never updates silently, the client cannot change consensus (90% signalling), notarised builds, official download sources with the hash beside the button, seed shown and confirmed before mining, hardware wallet option, the permanent line "Nobody from Igneum will ever ask for your seed."
9 09-pool-protocol.md Designed (nothing implemented) Pool and member after Stratum V2's job declaration: full, commitment or member-declared templates checked against the member's own verifier, JSON over TLS, shares as partial solutions of the header-bound lottery hash (target64 << s, weight 2^-s, verified per 32-lane group at the measured CPU cost), one vote key per operator held by the member and never the pool, votes signed by the member and only relayed and carried by the pool, the chain-only test for a pool that drops votes, custodial pools visible on chain, open items O-9.1 to O-9.9
10 10-light-client.md Designed (nothing implemented) What a phone or browser verifies without a node: trust assumptions stated per row, checkpoint headers plus BLS certificates with the voter bitmap and the wrapped segment proof at launch, the consensus proof in phase two, bytes per day per mode (3.44 MB in checkpoint mode at 1,000 voters, approximate), a pinned seed list with no DNS dependency on the phone and the stated wss dependency in a browser, the read-only node API, the homepage card's steps made true, open items O-10.1 to O-10.9

Prototype values (carried by the implementation today, part of the test vectors, confirmed or replaced at gate 1): seed derivation; 64 instructions x 8 iterations; 8 registers; the op weights including the 25% load weight; the output fold rotations; the 256 MiB cache, 64 lines per segment and ChaCha12; 8 item rounds and the mixer shape; the 1 GiB pack dataset against the 2 GiB genesis size; the 3,600 DAA s epoch; the era length, draw bounds and reserve list; the header binding of the init words. The full table with what fixes each is section 1.16.

Normative code: igneum-pow/. Measurements: docs/bench-log.md. Criticisms and their status: docs/fud-ledger.md. Simulations: sim/. Prototypes: proto-metal/, proto-cuda/, proto-opencl/, proto-vdf/.