Merge master 810a06172 into ci-canary-rules under the master-landing lock
This commit is contained in:
commit
ff7e6e27d3
12 changed files with 63 additions and 31 deletions
|
|
@ -119,7 +119,7 @@ Built 8 October 2026, 18:3x BST (the founder's order: no feature left out, no st
|
|||
| 112 | External source review of the mining algorithm (docs/analysis/review-2026-10-08/, on master at 0ae450bd; it examined the Mac checkout's older V2 to V4 crate, not class v6, and says so) | Finding A08 "An operation described as bijective is not always bijective" (on master at 0ae450bd, the harness run on build-2 to its end with every anchor it asserts agreeing with the tree, the v5 and v6 vectors outside its model); the review's harness is the cross-check evidence; the verdict reads fixed by construction, not applicable, or known open with a clock, and nothing reads PASS without the native test | hash lane (a690540514aa453d7); the node lane carries the verdict into the 23:30 freeze | 22:30 | RUNNING tonight (main's dispatch, 18:5x BST) | docs/analysis/review-2026-10-08/ | POW-02 (the review's harness as cross-check; the native test decides) |
|
||||
| 113 | External source review of the mining algorithm (docs/analysis/review-2026-10-08/, on master at 0ae450bd; it examined the Mac checkout's older V2 to V4 crate, not class v6, and says so) | Finding A09 "A naive stronger rejection test can exhaust all candidates" (on master at 0ae450bd, the harness run on build-2 to its end with every anchor it asserts agreeing with the tree, the v5 and v6 vectors outside its model); the review's harness is the cross-check evidence; the verdict reads fixed by construction, not applicable, or known open with a clock, and nothing reads PASS without the native test | hash lane (a690540514aa453d7); the node lane carries the verdict into the 23:30 freeze | 22:30 | RUNNING tonight (main's dispatch, 18:5x BST) | docs/analysis/review-2026-10-08/ | POW-04 (the review's harness as cross-check; the native test decides) |
|
||||
|
||||
| 114 | External review B (docs/analysis/review-2026-10-08-b/dispatch.md, 8 October 19:44 UK; fourteen findings F01 to F14) | F04 recovery lock weaker than final: THE FOUNDER'S RULING (19:57 UK): the recovery lock is kept and is always labelled "recovery", never "final", on every surface (the checkpoint field, the explorer, receipts, the light client, the oracle, the site) | node lane (a283f5f0d364ceef0) with the reference-apps lane and the site lane | the node field on successor-2.0.1 e9ab052f (pair about 20:45); the reference apps by 23:00; the explorer with them | RULED; in flight | docs/analysis/review-2026-10-08-b/dispatch.md; successor-2.0.1 e9ab052f | FIN-01 to FIN-08, VER-03, VER-05, VER-06, VER-08 |
|
||||
| 114 | External review B (docs/analysis/review-2026-10-08-b/dispatch.md, 8 October 19:44 UK; fourteen findings F01 to F14) | F04 recovery lock weaker than final: THE FOUNDER'S RULING (19:57 UK): the recovery lock is kept and is always labelled "recovery", never "final", on every surface (the checkpoint field, the explorer, receipts, the light client, the oracle, the site) | node lane (a283f5f0d364ceef0) with the reference-apps lane and the site lane | the node field on successor-2.0.1 e9ab052f (pair about 20:45); the reference apps by 23:00; the explorer with them | RULED; in flight. FORMING NODE ONLY on the 2.0.2 line: the recovery kind is stamped only by the node that formed the certificate; a node that received it records an ordinary lock and reports "final" (the finality runs lane rows 1b and 1c on real nodes, master 4566eb1e4). The fix (the kind derived at ingest from the anchored table; a node holding two certificates at one index reports "conflict" and locks no further, spec 3.11.4) is on finality-2.0.3-kind-and-conflict; the label comes off in the landing that cites its sha on master. The explorer's four-words note and the block page carry the same qualifier until then (coordinator's ruling 9 October 01:0x UK) | docs/analysis/review-2026-10-08-b/dispatch.md; successor-2.0.1 e9ab052f | FIN-01 to FIN-08, VER-03, VER-05, VER-06, VER-08 |
|
||||
| 115 | External review B (the same) | F14 lab fleet control is not the public trust model: THE FOUNDER'S RULING (19:57 UK): the public miner ships from 2.0.2 without remote jobs; our own fleet runs the lab build with its own signing root | shipper (ae892a8b0f78fe31c) with the relay lane (a22d765a2e0355a9f) | 2.0.2's cut (the app and relay lanes, 23:00 for the split's plan) | RULED; in flight | docs/analysis/review-2026-10-08-b/dispatch.md | UX-01, UX-07, OPS-02, OPS-04, OPS-06 |
|
||||
| 116 | External review B (the same) | F01 the proof-verdict cache omits the statement (P0): the cache holds immutable verified facts per proof hash and every lookup compares the carried statement and the accepted identities; no zero accepted id; a context refusal never cached | enforced-proving lane (a6e8f84588b809d62) with the node lane (the two-node cache-history test) | verdict-cache-fix off 5eab958f, suites green by 21:30; rides 2.0.2 | RUNNING, dispatched | docs/analysis/review-2026-10-08-b/dispatch.md | ZKP-01, ZKP-05, ZKP-06 |
|
||||
| 117 | External review B (the same) | F02 the proof rule fails open: the test bypass behind a build feature off in every release build (a CI check); a missing oracle or keys after activation is not-ready and never passes | enforced-proving lane with the steward | with F01 by 21:30 | RUNNING, dispatched | the same | ZKP-01, ZKP-03, GOV-05 |
|
||||
|
|
|
|||
|
|
@ -7525,15 +7525,15 @@
|
|||
"owner_lane": "finality lane (aca0f5ed924a2a99b)",
|
||||
"run_status": "PASS",
|
||||
"evidence_path": "sim/finality-attacks-results/native-2026-10-09/s1b2.md",
|
||||
"run_id": "fin-native-20261008T2300Z",
|
||||
"updated": "2026-10-09T00:03:51.641Z",
|
||||
"run_id": "fin-recovery-note-20261009-01",
|
||||
"updated": "2026-10-09T00:13:52.356Z",
|
||||
"evidence_record": {
|
||||
"requirement_id": "FIN-02",
|
||||
"decision": "PASS",
|
||||
"method": "native",
|
||||
"cell": "node:finality-realnode",
|
||||
"manifest_sha": "e189afb4",
|
||||
"run_id": "fin-native-20261008T2300Z",
|
||||
"run_id": "fin-recovery-note-20261009-01",
|
||||
"evidence": "sim/finality-attacks-results/native-2026-10-09/s1b2.md",
|
||||
"in_progress": false,
|
||||
"coverage": "partial: the real-node half; independent operators and the review remain",
|
||||
|
|
@ -7545,9 +7545,9 @@
|
|||
"activation": "",
|
||||
"profile_hashes": ""
|
||||
},
|
||||
"claim_impact": "",
|
||||
"claim_impact": "FIN-02 and FIN-08 keep their decisions; the recovery certificate's kind on non-forming nodes and the conflicting-certificate report are 2.0.3 items (known-failed tests ride it)",
|
||||
"reviewer": "",
|
||||
"at": "2026-10-09T00:03:51.641Z"
|
||||
"at": "2026-10-09T00:13:52.356Z"
|
||||
},
|
||||
"approvals": {
|
||||
"scope_approved": null,
|
||||
|
|
@ -7562,7 +7562,7 @@
|
|||
"method": "native",
|
||||
"cell": "node:finality-realnode",
|
||||
"manifest_sha": "e189afb4",
|
||||
"run_id": "fin-native-20261008T2300Z",
|
||||
"run_id": "fin-recovery-note-20261009-01",
|
||||
"evidence": "sim/finality-attacks-results/native-2026-10-09/s1b2.md",
|
||||
"in_progress": false,
|
||||
"coverage": "partial: the real-node half; independent operators and the review remain",
|
||||
|
|
@ -7574,9 +7574,9 @@
|
|||
"activation": "",
|
||||
"profile_hashes": ""
|
||||
},
|
||||
"claim_impact": "",
|
||||
"claim_impact": "FIN-02 and FIN-08 keep their decisions; the recovery certificate's kind on non-forming nodes and the conflicting-certificate report are 2.0.3 items (known-failed tests ride it)",
|
||||
"reviewer": "",
|
||||
"at": "2026-10-09T00:03:51.641Z"
|
||||
"at": "2026-10-09T00:13:52.356Z"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
@ -8044,17 +8044,17 @@
|
|||
"owner_lane": "fast-time lane (a8be71a0db962911c)",
|
||||
"run_status": "NOT RUN",
|
||||
"evidence_path": "sim/results_v2.md",
|
||||
"run_id": "fin-native-20261008T2300Z",
|
||||
"updated": "2026-10-09T00:03:51.641Z",
|
||||
"run_id": "fin-recovery-note-20261009-01",
|
||||
"updated": "2026-10-09T00:13:52.356Z",
|
||||
"evidence_record": {
|
||||
"requirement_id": "FIN-08",
|
||||
"decision": "NOT RUN",
|
||||
"method": "native",
|
||||
"cell": "harness:finality-sim",
|
||||
"manifest_sha": "e189afb4",
|
||||
"run_id": "fin-native-20261008T2300Z",
|
||||
"run_id": "fin-recovery-note-20261009-01",
|
||||
"evidence": "sim/results_v2.md",
|
||||
"in_progress": true,
|
||||
"in_progress": false,
|
||||
"coverage": "partial: the combined boundary and fault scenarios in the simulator with adversarial schedules; model checking is the formal review",
|
||||
"release_identity": {
|
||||
"commit": "e189afb4",
|
||||
|
|
@ -8064,9 +8064,9 @@
|
|||
"activation": "",
|
||||
"profile_hashes": ""
|
||||
},
|
||||
"claim_impact": "",
|
||||
"claim_impact": "FIN-02 and FIN-08 keep their decisions; the recovery certificate's kind on non-forming nodes and the conflicting-certificate report are 2.0.3 items (known-failed tests ride it)",
|
||||
"reviewer": "",
|
||||
"at": "2026-10-09T00:03:51.641Z"
|
||||
"at": "2026-10-09T00:13:52.356Z"
|
||||
},
|
||||
"in_progress_since": "2026-10-08T19:43:19.697Z",
|
||||
"approvals": {
|
||||
|
|
@ -8082,9 +8082,9 @@
|
|||
"method": "native",
|
||||
"cell": "harness:finality-sim",
|
||||
"manifest_sha": "e189afb4",
|
||||
"run_id": "fin-native-20261008T2300Z",
|
||||
"run_id": "fin-recovery-note-20261009-01",
|
||||
"evidence": "sim/results_v2.md",
|
||||
"in_progress": true,
|
||||
"in_progress": false,
|
||||
"coverage": "partial: the combined boundary and fault scenarios in the simulator with adversarial schedules; model checking is the formal review",
|
||||
"release_identity": {
|
||||
"commit": "e189afb4",
|
||||
|
|
@ -8094,9 +8094,9 @@
|
|||
"activation": "",
|
||||
"profile_hashes": ""
|
||||
},
|
||||
"claim_impact": "",
|
||||
"claim_impact": "FIN-02 and FIN-08 keep their decisions; the recovery certificate's kind on non-forming nodes and the conflicting-certificate report are 2.0.3 items (known-failed tests ride it)",
|
||||
"reviewer": "",
|
||||
"at": "2026-10-09T00:03:51.641Z"
|
||||
"at": "2026-10-09T00:13:52.356Z"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -291,7 +291,7 @@ main{padding-bottom:100px}.card{background:var(--row);border:1px solid var(--lin
|
|||
<div class="tbl"><table><thead><tr><th>Block</th><th class="n">Number</th><th class="n">DAA</th><th class="n">Blue score</th><th>Colour</th><th class="n">Subsidy</th><th class="n">Txs</th><th>Time</th></tr></thead><tbody id="blocks"></tbody></table></div>
|
||||
</div>
|
||||
</div>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. <b>Recovery lock</b>: after a full weight window with no lock, a checkpoint signed by more than half of the anchored weight; shown as a recovery lock, never as finalised. On the devnet’s current node line the lock kind is reported by the forming node only: a node that received the certificate records an ordinary lock, so a recovery lock can read as final on a receiving node until the 2.0.3 node line lands. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
</main>
|
||||
<!-- footer:start -->
|
||||
<footer class="site-footer">
|
||||
|
|
|
|||
|
|
@ -284,7 +284,7 @@ main{padding-bottom:100px}.card{background:var(--row);border:1px solid var(--lin
|
|||
<div class="card"><div class="viz-head"><h2>Shard plan and proofs</h2><div class="eyebrow" id="proof-eyebrow"></div></div><div id="proofs"></div></div>
|
||||
<div class="card"><div class="viz-head"><h2>Finality</h2><div class="eyebrow" id="fin-eyebrow"></div></div><div id="finality"></div><div id="recheck"></div></div>
|
||||
</div>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. <b>Recovery lock</b>: after a full weight window with no lock, a checkpoint signed by more than half of the anchored weight; shown as a recovery lock, never as finalised. On the devnet’s current node line the lock kind is reported by the forming node only: a node that received the certificate records an ordinary lock, so a recovery lock can read as final on a receiving node until the 2.0.3 node line lands. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
</main>
|
||||
<!-- footer:start -->
|
||||
<footer class="site-footer">
|
||||
|
|
@ -387,7 +387,7 @@ async function load() {
|
|||
$('title').textContent = b.hash;
|
||||
const chips = [b.chain ? (b.chain_now === false ? '<span class="chip" title="the observer saw it as the chain block of its number; a tip reorg gave the number to another block">chain block, replaced</span>' : '<span class="chip hot">chain block</span>') : `<span class="chip">${esc(b.color)}</span>`, `<span class="chip" title="the hash program family this block was mined under">class ${esc(b.class ? b.class.class : 'v4')}</span>`];
|
||||
if (j.checkpoint) chips.push(`<span class="chip ${j.checkpoint.state === 'locked' ? 'ok' : ''}">checkpoint ${j.checkpoint.index}, ${esc(j.checkpoint.state)}</span>`);
|
||||
chips.push(b.lock && b.lock.final ? `<span class="chip ok" title="${esc(b.lock.reason)}">finalised under lock ${int(b.lock.index)}</span>` : `<span class="chip" title="${esc(b.lock ? b.lock.reason : '')}">not yet finalised</span>`);
|
||||
chips.push(b.lock && b.lock.final && b.lock.kind === 'recovery' ? `<span class="chip" title="${esc(b.lock.reason)}; the kind is the forming node’s report">under recovery lock ${int(b.lock.index)}, not final</span>` : b.lock && b.lock.final ? `<span class="chip ok" title="${esc(b.lock.reason)}">finalised under lock ${int(b.lock.index)}</span>` : `<span class="chip" title="${esc(b.lock ? b.lock.reason : '')}">not yet finalised</span>`);
|
||||
if (b.chain) chips.push(sum.total ? `<span class="chip ${sum.paid === sum.total ? 'ok' : ''}">${sum.paid} of ${sum.total} shards paid</span>` : '<span class="chip">plan not read yet</span>');
|
||||
if (b.proof_records) chips.push(`<span class="chip">carries ${b.proof_records} proof record${b.proof_records === 1 ? '' : 's'}</span>`);
|
||||
if (j.txs.length) chips.push(`<span class="chip">${j.txs.length} transaction${j.txs.length === 1 ? '' : 's'} executed</span>`);
|
||||
|
|
|
|||
|
|
@ -249,7 +249,7 @@ td.mono{font-family:var(--f-mono);font-size:12.5px;min-width:180px}td.iv{color:v
|
|||
<main id="main" class="wrap">
|
||||
<div class="head">
|
||||
<div class="breadcrumb"><a href="/">Igneum</a><span>/</span><span>Facts</span></div>
|
||||
<div class="eyebrow"><span class="line"></span>9 claims · 6 labels · 8 Oct 2026</div>
|
||||
<div class="eyebrow"><span class="line"></span>9 claims · 6 labels · 9 Oct 2026</div>
|
||||
<h1>Igneum facts<span class="accent">.</span></h1>
|
||||
<p class="lead">A GPU-secured network for Ethereum-compatible applications and verifiable computation.</p>
|
||||
</div>
|
||||
|
|
@ -287,7 +287,7 @@ td.mono{font-family:var(--f-mono);font-size:12.5px;min-width:180px}td.iv{color:v
|
|||
<tr><td>reproduced externally</td><td>reviewed independently</td><td>A named reviewer's published finding on that version. Funding for review is <code>docs/plans/funding.md</code></td></tr>
|
||||
<tr><td>any</td><td>the row's status falls back</td><td>A new version of the code or rule the row names</td></tr>
|
||||
</tbody></table></div>
|
||||
<p class="asof">Statuses are honest as of 8 October 2026, the day this page was generated from docs/evidence.md, and change only through that file.</p>
|
||||
<p class="asof">Statuses are honest as of 9 October 2026, the day this page was generated from docs/evidence.md, and change only through that file.</p>
|
||||
</main>
|
||||
<!-- footer:start -->
|
||||
<footer class="site-footer">
|
||||
|
|
|
|||
|
|
@ -326,7 +326,7 @@ main{padding-bottom:100px}.card{background:var(--row);border:1px solid var(--lin
|
|||
<p class="note">Every answer names the network (the Igneum 2.0 devnet) and the chain id the node reports (4465). The RPC itself is at rpc.devnet.igneum.network (read methods and eth_sendRawTransaction, 20 requests per second per address).</p>
|
||||
</div>
|
||||
</div>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. <b>Recovery lock</b>: after a full weight window with no lock, a checkpoint signed by more than half of the anchored weight; shown as a recovery lock, never as finalised. On the devnet’s current node line the lock kind is reported by the forming node only: a node that received the certificate records an ordinary lock, so a recovery lock can read as final on a receiving node until the 2.0.3 node line lands. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
</main>
|
||||
<!-- footer:start -->
|
||||
<footer class="site-footer">
|
||||
|
|
|
|||
|
|
@ -513,7 +513,7 @@ details.tablebar summary{display:flex;align-items:center}
|
|||
</details>
|
||||
|
||||
<div class="obs-foot"><span>Igneum / observatory</span><span>One node read every 2 s. Nothing here is a replay.</span></div>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. <b>Recovery lock</b>: after a full weight window with no lock, a checkpoint signed by more than half of the anchored weight; shown as a recovery lock, never as finalised. On the devnet’s current node line the lock kind is reported by the forming node only: a node that received the certificate records an ordinary lock, so a recovery lock can read as final on a receiving node until the 2.0.3 node line lands. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
</main>
|
||||
|
||||
<!-- footer:start -->
|
||||
|
|
|
|||
|
|
@ -303,7 +303,7 @@ main{padding-bottom:100px}.card{background:var(--row);border:1px solid var(--lin
|
|||
<dl id="totals"></dl>
|
||||
</div>
|
||||
</div>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. <b>Recovery lock</b>: after a full weight window with no lock, a checkpoint signed by more than half of the anchored weight; shown as a recovery lock, never as finalised. On the devnet’s current node line the lock kind is reported by the forming node only: a node that received the certificate records an ordinary lock, so a recovery lock can read as final on a receiving node until the 2.0.3 node line lands. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
</main>
|
||||
<!-- footer:start -->
|
||||
<footer class="site-footer">
|
||||
|
|
|
|||
|
|
@ -265,7 +265,7 @@
|
|||
<p class="note">One node is read every 2 s; the window is the last 120 s. Under reduced motion each scene draws a still frame on every reply. Add <code>?only=a</code>, <code>b</code> or <code>c</code> to the address for one scene full width.</p>
|
||||
</div>
|
||||
</section>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. <b>Recovery lock</b>: after a full weight window with no lock, a checkpoint signed by more than half of the anchored weight; shown as a recovery lock, never as finalised. On the devnet’s current node line the lock kind is reported by the forming node only: a node that received the certificate records an ordinary lock, so a recovery lock can read as final on a receiving node until the 2.0.3 node line lands. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
</main>
|
||||
<!-- footer:start -->
|
||||
<footer class="site-footer">
|
||||
|
|
|
|||
|
|
@ -279,7 +279,7 @@ main{padding-bottom:100px}.card{background:var(--row);border:1px solid var(--lin
|
|||
<div class="card"><div class="viz-head"><h2>Block and proof</h2><div class="eyebrow" id="blk-eyebrow"></div></div><dl id="blk"></dl></div>
|
||||
<div class="card"><div class="viz-head"><h2>Logs</h2><div class="eyebrow" id="log-n"></div></div><div class="tbl" id="logs"></div></div>
|
||||
</div>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
<p class="note" data-four-words><b>Four words, used exactly.</b> <b>Included</b>: the block carries the transaction. <b>Executed</b>: the EVM ran it and the result is on the record. <b>Proven</b>: a valid proof record for its block was carried and paid. <b>Finalised</b>: the block sits under a certified checkpoint, two thirds of active and of total weight. A pause in finality is shown as a pause, never as a block losing its lock. <b>Recovery lock</b>: after a full weight window with no lock, a checkpoint signed by more than half of the anchored weight; shown as a recovery lock, never as finalised. On the devnet’s current node line the lock kind is reported by the forming node only: a node that received the certificate records an ordinary lock, so a recovery lock can read as final on a receiving node until the 2.0.3 node line lands. The definitions are the finality specification’s: <a href="https://git.igneum.network/igneum-network/igneum/src/branch/master/docs/spec/finality-guarantees.md">section 9, the guarantees</a>.</p>
|
||||
</main>
|
||||
<!-- footer:start -->
|
||||
<footer class="site-footer">
|
||||
|
|
|
|||
32
tools/ci/batches/fin-recovery-note-20261009-01.json
Normal file
32
tools/ci/batches/fin-recovery-note-20261009-01.json
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
{
|
||||
"run_id": "fin-recovery-note-20261009-01",
|
||||
"manifest_sha": "e189afb4",
|
||||
"method": "native",
|
||||
"evidence_dir": "docs/analysis (the finality runs lane's rows 4566eb1e4)",
|
||||
"boxes": [],
|
||||
"claim_impact": "FIN-02 and FIN-08 keep their decisions; the recovery certificate's kind on non-forming nodes and the conflicting-certificate report are 2.0.3 items (known-failed tests ride it)",
|
||||
"note": "Dated note, 9 October 2026 01:0x UK (the coordinator, from the finality runs lane's native rows 4566eb1e4): a received recovery certificate reads lockKind \"final\" on every node but the forming one (recovery_lock is stamped only in evaluate), and a node holding two certificates at one index reports \"active\" and keeps locking; both ride 2.0.3 with known-failed tests (the node lane's 06:00 line). Recovery kind correct on the forming node only until 2.0.3; conflicting-certificate reporting open. No decision changed by this note.",
|
||||
"cells": [
|
||||
{
|
||||
"cell": "node:finality-realnode",
|
||||
"cases": [
|
||||
"FIN-02"
|
||||
],
|
||||
"status": "PASS",
|
||||
"method": "native",
|
||||
"evidence": "sim/finality-attacks-results/native-2026-10-09/s1b2.md",
|
||||
"note": "Dated note, 9 October 2026 01:0x UK (the coordinator, from the finality runs lane's native rows 4566eb1e4): a received recovery certificate reads lockKind \"final\" on every node but the forming one (recovery_lock is stamped only in evaluate), and a node holding two certificates at one index reports \"active\" and keeps locking; both ride 2.0.3 with known-failed tests (the node lane's 06:00 line). Recovery kind correct on the forming node only until 2.0.3; conflicting-certificate reporting open. No decision changed by this note."
|
||||
},
|
||||
{
|
||||
"cell": "harness:finality-sim",
|
||||
"cases": [
|
||||
"FIN-08"
|
||||
],
|
||||
"status": "NOT RUN",
|
||||
"in_progress": true,
|
||||
"method": "native",
|
||||
"evidence": "sim/results_v2.md",
|
||||
"note": "Dated note, 9 October 2026 01:0x UK (the coordinator, from the finality runs lane's native rows 4566eb1e4): a received recovery certificate reads lockKind \"final\" on every node but the forming one (recovery_lock is stamped only in evaluate), and a node holding two certificates at one index reports \"active\" and keeps locking; both ride 2.0.3 with known-failed tests (the node lane's 06:00 line). Recovery kind correct on the forming node only until 2.0.3; conflicting-certificate reporting open. No decision changed by this note."
|
||||
}
|
||||
]
|
||||
}
|
||||
Loading…
Reference in a new issue