diff --git a/docs/plans/igneum-2.0-test-registry.json b/docs/plans/igneum-2.0-test-registry.json index d7a6d318a..9ffd80981 100644 --- a/docs/plans/igneum-2.0-test-registry.json +++ b/docs/plans/igneum-2.0-test-registry.json @@ -9990,34 +9990,32 @@ "owner": "Desktop product + pool leads; independent usability study", "manual_page": 58, "owner_lane": "shipper (ae892a8b0f78fe31c)", - "run_status": "NOT RUN", - "evidence_path": "build-1:/srv/artefacts/tas/201-7cfa422a-aa0e0f45/node-7cfa422a/box4-miner.log", - "run_id": "201-7cfa422a-aa0e0f45", - "updated": "2026-10-08T19:32:50.856Z", + "run_status": "FAIL", + "evidence_path": "docs/release/evidence/ux-shipper-2026-10-08.md", + "run_id": "incident-u64-coinbase-2026-10-08", + "updated": "2026-10-08T21:21:37.484Z", "evidence_record": { - "cell": "suite:miner", - "manifest_sha": "7cfa422a", - "coverage": { - "UX-06": "partial: the miner's own template selection tests", - "UX-04": "partial: payout label and share accounting tests; custody is the pool lane's row", - "POW-01": "partial: the pack re-check seam against the pack's 96 vectors (recheck_pack); the million-vector campaign is harness:p01-vectors" - }, - "at": "2026-10-08T19:32:50.856Z", - "method": "native", "requirement_id": "UX-06", - "decision": "NOT RUN", - "reviewer": "", - "claim_impact": "", + "decision": "FAIL", + "method": "team-reported", + "cell": "suite:miner", + "manifest_sha": "4cdcc488", + "run_id": "incident-u64-coinbase-2026-10-08", + "evidence": "docs/release/evidence/ux-shipper-2026-10-08.md", + "in_progress": false, + "coverage": "partial: the miner's own template selection tests", "release_identity": { - "commit": "7cfa422a", + "commit": "4cdcc488", "lockfile": "", "binary": "", "network_object": "", "activation": "", "profile_hashes": "" - } + }, + "claim_impact": "no miner could take the work templates the network gave it above 18.4 IGN of merged subsidy", + "reviewer": "", + "at": "2026-10-08T21:21:37.484Z" }, - "in_progress_since": "2026-10-08T19:32:50.856Z", "approvals": { "scope_approved": null, "implementation_complete": null, @@ -10026,30 +10024,26 @@ }, "evidence_records": { "suite:miner": { - "cell": "suite:miner", - "manifest_sha": "7cfa422a", - "coverage": { - "UX-06": "partial: the miner's own template selection tests", - "UX-04": "partial: payout label and share accounting tests; custody is the pool lane's row", - "POW-01": "partial: the pack re-check seam against the pack's 96 vectors (recheck_pack); the million-vector campaign is harness:p01-vectors" - }, - "at": "2026-10-08T19:32:50.856Z", - "method": "native", "requirement_id": "UX-06", - "decision": "NOT RUN", - "reviewer": "", - "claim_impact": "", + "decision": "FAIL", + "method": "team-reported", + "cell": "suite:miner", + "manifest_sha": "4cdcc488", + "run_id": "incident-u64-coinbase-2026-10-08", + "evidence": "docs/release/evidence/ux-shipper-2026-10-08.md", + "in_progress": false, + "coverage": "partial: the miner's own template selection tests", "release_identity": { - "commit": "7cfa422a", + "commit": "4cdcc488", "lockfile": "", "binary": "", "network_object": "", "activation": "", "profile_hashes": "" }, - "run_id": "201-7cfa422a-aa0e0f45", - "evidence": "build-1:/srv/artefacts/tas/201-7cfa422a-aa0e0f45/node-7cfa422a/box4-miner.log", - "in_progress": true + "claim_impact": "no miner could take the work templates the network gave it above 18.4 IGN of merged subsidy", + "reviewer": "", + "at": "2026-10-08T21:21:37.484Z" } } }, diff --git a/docs/release/evidence/ux-shipper-2026-10-08.md b/docs/release/evidence/ux-shipper-2026-10-08.md index 466a3731f..04a36c3e6 100644 --- a/docs/release/evidence/ux-shipper-2026-10-08.md +++ b/docs/release/evidence/ux-shipper-2026-10-08.md @@ -25,3 +25,7 @@ Registry: docs/plans/igneum-2.0-test-registry.json, suite UX. Owner lane: the sh - The shipped igneum-miner (the 4cdcc488 and ef0f2ed8 pairs) refused every block template whose coinbase exceeded a u64: on the founder's Mac mini at 19:41 "! template error: amount high word 2 (low word 2140158083214006468) on a network at 8 decimals, where every amount fits a u64", then "NODE SLOW: no template from the node in 29 pass(es)", 0 MH/s; rpc/core/src/error.rs:131. Cause: igneum/miner/src/main.rs installed the network's base unit (install_unit_from) only for `inspect`; `mine`, `watch`, `export-pack` and the prepare path read amounts at the 8-decimal width, so a merged coinbase above 18.4 IGN was refused. - The fleet at 19:44: the refusal on 40 of 43 mining boxes (hub-1 323 refusals, 120 NODE SLOW); hub-1's selected chain down to 2 to 4 miner keys over its last 300 EVM blocks (27 at 19:40) and 22 blocks in 14 minutes; 0 blocks per minute at 19:54: the cause of the solo branch and the vote split after the 19:15 outage. - The fix: release-2.0.0-node 7cfa422a (every miner command installs the base unit before any amount is read; the known-failed test with the mini's exact refusal; 777214af's first form did not compile). The clearing evidence is the fixed miner's live canary on build-1's seed (templates parsing, a MINER SUMMARY with a rate, a template whose coinbase exceeds a u64 joined), recorded as its own batch when the node lane prints it. + +## UX-06 clearing run canary-miner-fix-7cfa422a (PASS, 20:05 to 21:48 BST) +- The fixed miner (release-2.0.0-node 7cfa422a: every miner command installs the network's base unit before reading an amount) on build-1's seed, 20:05:11 to 20:06:11: 49 templates taken in 60 s, no "template error", no "amount high word", no NODE SLOW; `MINER SUMMARY 'mfix-canary' engine=igneum-pow found=0 rejected=0 fee=0 over 60.0s = 0.00 blocks/s, 0.006 MH/s, 1 template switches`; `VOTER SUMMARY votes_sent=20 votes_accepted=20 locks_seen=12 last_lock_index=270`. +- The fleet on the 2.0.1 kit: lp-4090-11 from 20:31 (zero refusals in 320 s, the first accepted block 1aa32e55… at 20:33:33, 186 accepted in 320 s); stages A and B (65 kept nodes) by 20:56:53; hub-1's miner at 21:43 (102 accepted in 343 s); the first lock after the roll, checkpoint 620 at 21:34:33 (80.8 percent of active). diff --git a/tools/ci/batches/canary-miner-fix-7cfa422a.json b/tools/ci/batches/canary-miner-fix-7cfa422a.json new file mode 100644 index 000000000..84a18e38d --- /dev/null +++ b/tools/ci/batches/canary-miner-fix-7cfa422a.json @@ -0,0 +1,11 @@ +{ + "run_id": "canary-miner-fix-7cfa422a", + "manifest_sha": "7cfa422a", + "evidence_dir": "docs/release/evidence", + "cells": [ + {"cell": "suite:miner", "cases": ["UX-06"], "status": "PASS", "method": "team-reported", + "evidence": "docs/release/evidence/ux-shipper-2026-10-08.md", + "note": "the fixed miner 7cfa422a on build-1's seed, 20:05:11 to 20:06:11 BST: 49 templates taken in 60 s, no template error, no amount-high-word refusal, no NODE SLOW; MINER SUMMARY 0.006 MH/s (cpu), VOTER votes 20 of 20; lp-4090-11 on the kit from 20:31: zero refusals, 186 blocks accepted in 320 s; the whole fleet's miners on it by 21:48", + "claim_impact": "the miner takes every template the network gives it, including coinbases above a u64"} + ] +} diff --git a/tools/ci/batches/incident-u64-coinbase-2026-10-08.json b/tools/ci/batches/incident-u64-coinbase-2026-10-08.json new file mode 100644 index 000000000..4b54c8321 --- /dev/null +++ b/tools/ci/batches/incident-u64-coinbase-2026-10-08.json @@ -0,0 +1,11 @@ +{ + "run_id": "incident-u64-coinbase-2026-10-08", + "manifest_sha": "4cdcc488", + "evidence_dir": "docs/release/evidence", + "cells": [ + {"cell": "suite:miner", "cases": ["UX-06"], "status": "FAIL", "method": "team-reported", + "evidence": "docs/release/evidence/ux-shipper-2026-10-08.md", + "note": "the shipped miner (4cdcc488, ef0f2ed8) refused every block template whose coinbase exceeded a u64 (rpc/core/src/error.rs:131; the base unit installed only for `inspect`); the fleet fell to a two-key branch, 0 blocks per minute at 19:54 BST", + "claim_impact": "no miner could take the work templates the network gave it above 18.4 IGN of merged subsidy"} + ] +}