class v5 harness: the miners stop before the final sink and count read (a node's own newest block is a tip its peers have not seen yet; the 19:50 UK run compared sinks mid-propagation)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
parent
5eb809a1e9
commit
08362bef2c
1 changed files with 5 additions and 0 deletions
|
|
@ -222,6 +222,11 @@ while (Date.now() - t0 < SECS * 1000) {
|
|||
if (firstV4 != null && daa != null && daa >= (firstV4.epoch + 3) * EPOCH) { endAt = +since(); break; }
|
||||
if (firstV4 == null && daa != null && daa >= EPOCHS * EPOCH) { endAt = +since(); break; }
|
||||
}
|
||||
// the miners stop before the final read: with every node mining at the fast-time rate a node's own newest block is
|
||||
// a tip its peers have not seen for a moment, and a read taken while they mine compares sinks mid-propagation (the
|
||||
// 19:50 UK run of 7 October 2026 read 666/665/665 blocks and two sinks on three agreeing nodes). Their logs stay.
|
||||
const nodeProcs = new Set(nodes.map(n => n.proc));
|
||||
for (const p of started) if (!nodeProcs.has(p)) { try { p.kill('SIGINT'); } catch { } }
|
||||
await sleep(3000);
|
||||
|
||||
const dag = await Promise.all(nodes.map(async n => { try { return await n.rpc.call('getBlockDagInfo'); } catch (e) { return { error: e.message }; } }));
|
||||
|
|
|
|||
Loading…
Reference in a new issue