Genesis forward-compatibility: the results section (the suites, the gate build, both harness cases, the cross-binary digest, the 60x keeper line, the two faults found and fixed, the one open test-binary row) and the harness folder (both summaries, the three digest logs)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
parent
8b7de9f0f6
commit
1865e1da07
6 changed files with 1258 additions and 2 deletions
29
docs/design/genesis-forward-harness/digest-base-dc141409.log
Normal file
29
docs/design/genesis-forward-harness/digest-base-dc141409.log
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
Latency ladder inactive (no activation in the override file): every class v4 program at rung 0, 27 shadow passes; no ladder bits in the header
|
||||
Program class signal inactive (the window or the floor is absent from the override file): headers carry block version 2 exactly
|
||||
Fees on igneum-devnet-973: pgas table v0, B_p 30000000 pgas, S_p 7500000 pgas, floors 1000000000 wei per gas and 1000000000 wei per pgas; calibrated v1 from DAA score never
|
||||
Consensus params digest: 079d8a7e736abbd4b135eb1d652466ca7906ea1b200e22eac97f795e626356e7 (exchanged in the p2p handshake; a peer with another digest is refused)
|
||||
2026-10-07 15:14:29.331+02:00 [INFO ] igneumd/2.1.0-dc141409
|
||||
2026-10-07 15:14:29.331+02:00 [INFO ] Application directory: gf-digest/d-base
|
||||
2026-10-07 15:14:29.331+02:00 [INFO ] Data directory: gf-digest/d-base/igneum-devnet-973/datadir
|
||||
2026-10-07 15:14:29.331+02:00 [INFO ] Logs to console only
|
||||
2026-10-07 15:14:29.350+02:00 [INFO ] Finality v2 (igneum-devnet-973): interval 30 depth 20 window 7200 DAA dust 5 presence 20 aggregators 8 ban 7200 fold 3; rule v3 (frozen table, certificate fold) from checkpoint DAA never; 0 checkpoints known, next index 1, 0 locks, 0 keys; C1 in DAA seconds from DAA never; weight-gated deep fork choice from DAA never; leave rule (W7, delay 3600 DAA) from checkpoint DAA never, 0 leaves
|
||||
2026-10-07 15:14:29.363+02:00 [INFO ] [igneum-exec] proving v0: payouts from DAA score never, window 7200 DAA, dust 5, verifier Off
|
||||
2026-10-07 15:14:29.363+02:00 [INFO ] [igneum-exec] proving v1: segment records from DAA score never, 8 blocks a segment, unproven after 600 DAA, aggregator share 1000 bps, shard program id unknown, aggregator id unknown
|
||||
2026-10-07 15:14:29.364+02:00 [INFO ] [igneum-exec] verifying keys embedded: shard program id 0x2b1a81cb413236cf063077b46ed3111628f6c41036bcf6e23ee4cbbf5679ef7a aggregator id 0x474678f35f7545db28055d5e5bbc308231d84a5a072202087a2a8d5b09123896
|
||||
2026-10-07 15:14:29.370+02:00 [INFO ] template prewarm: on (the cached block template is rebuilt on every virtual change; IGNEUM_TEMPLATE_PREWARM=0 turns it off)
|
||||
2026-10-07 15:14:29.371+02:00 [INFO ] GRPC Server starting on: 127.0.0.1:29770
|
||||
2026-10-07 15:14:29.372+02:00 [INFO ] P2P Server starting on: 127.0.0.1:29771
|
||||
2026-10-07 15:14:29.373+02:00 [INFO ] [igneum-exec] chain follower started
|
||||
2026-10-07 15:14:29.373+02:00 [INFO ] [igneum-exec] proof verifier: Off (no SP1 verification on this node)
|
||||
2026-10-07 15:14:29.373+02:00 [INFO ] [igneum-exec] exec sync: sink edc4fa844da9dc98d37e965176f6558a31560e40502ab3ae5491b21aaaabfb07 is chain block 0; pruning point edc4fa844da9dc98d37e965176f6558a31560e40502ab3ae5491b21aaaabfb07 is chain block Some(0) (DAA 0); retention root edc4fa844da9dc98d37e965176f6558a31560e40502ab3ae5491b21aaaabfb07 is chain block Some(0) (DAA 0), its body held
|
||||
2026-10-07 15:14:29.373+02:00 [INFO ] [igneum-exec] eth_ JSON-RPC listening on 127.0.0.1:26790
|
||||
2026-10-07 15:14:29.373+02:00 [INFO ] [igneum-exec] exec sync: no snapshot to resume from (no snapshot file); the follower starts at genesis
|
||||
2026-10-07 15:14:29.373+02:00 [INFO ] [igneum-exec] exec sync: waiting for consensus to sync before the executor starts (the sink is 393269 s old)
|
||||
2026-10-07 15:14:29.373+02:00 [WARN ] [igneum-exec] cannot bind the eth_ JSON-RPC server on 127.0.0.1:26790: Address already in use (os error 98)
|
||||
2026-10-07 15:14:29.374+02:00 [INFO ] WRPC Server starting on: 127.0.0.1:29772
|
||||
2026-10-07 15:14:29.474+02:00 [INFO ] [igneum-exec] chain follower stopped
|
||||
^SIGTERM - shutting down...
|
||||
2026-10-07 15:14:54.316+02:00 [INFO ] P2P Server stopped: 127.0.0.1:29771
|
||||
2026-10-07 15:14:54.316+02:00 [INFO ] WRPC Server stopped on: 127.0.0.1:29772
|
||||
2026-10-07 15:14:54.317+02:00 [INFO ] GRPC Server stopped on: 127.0.0.1:29770
|
||||
2026-10-07 15:14:54.824+02:00 [INFO ] igneumd has stopped...
|
||||
29
docs/design/genesis-forward-harness/digest-no-file.log
Normal file
29
docs/design/genesis-forward-harness/digest-no-file.log
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
Latency ladder inactive (no activation in the override file): every class v4 program at rung 0, 27 shadow passes; no ladder bits in the header
|
||||
Program class signal inactive (the window or the floor is absent from the override file): headers carry block version 2 exactly
|
||||
Fees on igneum-devnet-973: pgas table v0, B_p 30000000 pgas, S_p 7500000 pgas, floors 1000000000 wei per gas and 1000000000 wei per pgas; calibrated v1 from DAA score never
|
||||
Consensus params digest: 079d8a7e736abbd4b135eb1d652466ca7906ea1b200e22eac97f795e626356e7 (exchanged in the p2p handshake; a peer with another digest is refused)
|
||||
2026-10-07 15:12:35.092+02:00 [INFO ] igneumd/2.1.0-75810130
|
||||
2026-10-07 15:12:35.093+02:00 [INFO ] Application directory: gf-digest/d-none
|
||||
2026-10-07 15:12:35.093+02:00 [INFO ] Data directory: gf-digest/d-none/igneum-devnet-973/datadir
|
||||
2026-10-07 15:12:35.093+02:00 [INFO ] Logs to console only
|
||||
2026-10-07 15:12:35.128+02:00 [INFO ] Finality v2 (igneum-devnet-973): interval 30 depth 20 window 7200 DAA dust 5 presence 20 aggregators 8 ban 7200 fold 3; rule v3 (frozen table, certificate fold) from checkpoint DAA never; 0 checkpoints known, next index 1, 0 locks, 0 keys; C1 in DAA seconds from DAA never; weight-gated deep fork choice from DAA never; leave rule (W7, delay 3600 DAA) from checkpoint DAA never, 0 leaves; key succession (W5) from checkpoint DAA never, 0 successions; signature scheme 0 (0 = BLS12-381), any other refused until a class names it
|
||||
2026-10-07 15:12:35.136+02:00 [INFO ] [igneum-exec] proving v0: payouts from DAA score never, window 7200 DAA, dust 5, verifier Off
|
||||
2026-10-07 15:12:35.136+02:00 [INFO ] [igneum-exec] proving v1: segment records from DAA score never, 8 blocks a segment, unproven after 600 DAA, aggregator share 1000 bps, shard program id unknown, aggregator id unknown
|
||||
2026-10-07 15:12:35.136+02:00 [INFO ] [igneum-exec] proof archive at gf-digest/d-none/igneum-devnet-973/datadir/evm/proofs: 0 proofs
|
||||
2026-10-07 15:12:35.136+02:00 [INFO ] [igneum-exec] verifying keys embedded: shard program id 0x2b1a81cb413236cf063077b46ed3111628f6c41036bcf6e23ee4cbbf5679ef7a aggregator id 0x474678f35f7545db28055d5e5bbc308231d84a5a072202087a2a8d5b09123896
|
||||
2026-10-07 15:12:35.141+02:00 [INFO ] template prewarm: on (the cached block template is rebuilt on every virtual change; IGNEUM_TEMPLATE_PREWARM=0 turns it off)
|
||||
2026-10-07 15:12:35.141+02:00 [INFO ] GRPC Server starting on: 127.0.0.1:29760
|
||||
2026-10-07 15:12:35.141+02:00 [INFO ] P2P Server starting on: 127.0.0.1:29761
|
||||
2026-10-07 15:12:35.141+02:00 [INFO ] [igneum-exec] eth_ JSON-RPC listening on 127.0.0.1:26790
|
||||
2026-10-07 15:12:35.141+02:00 [INFO ] [igneum-exec] proof verifier: Off (no SP1 verification on this node)
|
||||
2026-10-07 15:12:35.142+02:00 [INFO ] [igneum-exec] chain follower started
|
||||
2026-10-07 15:12:35.142+02:00 [INFO ] WRPC Server starting on: 127.0.0.1:29762
|
||||
2026-10-07 15:12:35.142+02:00 [WARN ] [igneum-exec] cannot bind the eth_ JSON-RPC server on 127.0.0.1:26790: Address already in use (os error 98)
|
||||
2026-10-07 15:12:35.142+02:00 [INFO ] [igneum-exec] exec sync: sink edc4fa844da9dc98d37e965176f6558a31560e40502ab3ae5491b21aaaabfb07 is chain block 0; pruning point edc4fa844da9dc98d37e965176f6558a31560e40502ab3ae5491b21aaaabfb07 is chain block Some(0) (DAA 0); retention root edc4fa844da9dc98d37e965176f6558a31560e40502ab3ae5491b21aaaabfb07 is chain block Some(0) (DAA 0), its body held
|
||||
2026-10-07 15:12:35.142+02:00 [INFO ] [igneum-exec] exec sync: no snapshot to resume from (no snapshot file); the follower starts at genesis
|
||||
2026-10-07 15:12:35.142+02:00 [INFO ] [igneum-exec] chain follower stopped
|
||||
^SIGTERM - shutting down...
|
||||
2026-10-07 15:13:00.089+02:00 [INFO ] P2P Server stopped: 127.0.0.1:29761
|
||||
2026-10-07 15:13:00.089+02:00 [INFO ] GRPC Server stopped on: 127.0.0.1:29760
|
||||
2026-10-07 15:13:00.089+02:00 [INFO ] WRPC Server stopped on: 127.0.0.1:29762
|
||||
2026-10-07 15:13:00.597+02:00 [INFO ] igneumd has stopped...
|
||||
32
docs/design/genesis-forward-harness/digest-testnet-shape.log
Normal file
32
docs/design/genesis-forward-harness/digest-testnet-shape.log
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
Signature scheme byte from the override file: genesis scheme 0 (0 = BLS12-381); every vote item and key reveal carries its scheme byte on the wire from DAA score 0; any other scheme refused until a class the 95 percent signal moves to names it
|
||||
Key succession (W5) from the override file: a vote key hands its window weight and its forfeit term to a successor key once, from checkpoint DAA score 0; the successor inherits the window
|
||||
Latency ladder from the override file: rungs 27, 35, 53, [88], [173], [267] shadow passes, cache [512 MiB] beside them (brackets: inadmissible, never entered), active from epoch 0 (DAA score 0 rounded up to the epoch boundary at 0), one rung per decision at 90 percent of blue blocks in each of 7 consecutive windows of 86400 DAA ending at an epoch's seed block
|
||||
Latency ladder active: rungs 27, 35, 53, [88], [173], [267] shadow passes, cache [512 MiB] beside them, this node signals none (header version bits 15 and 14; both set asks for the cache rung)
|
||||
Program class signal inactive (the window or the floor is absent from the override file): headers carry block version 2 exactly
|
||||
Fees on igneum-devnet-973: pgas table v0, B_p 30000000 pgas, S_p 7500000 pgas, floors 1000000000 wei per gas and 1000000000 wei per pgas; calibrated v1 from DAA score never
|
||||
Consensus params digest: 60e842a738c7dea04543af93e990fb962618ace0b76b38013a63cb29dd45644a (exchanged in the p2p handshake; a peer with another digest is refused)
|
||||
2026-10-07 15:13:26.156+02:00 [INFO ] igneumd/2.1.0-75810130
|
||||
2026-10-07 15:13:26.156+02:00 [INFO ] Application directory: gf-digest/d-testnet-shape
|
||||
2026-10-07 15:13:26.156+02:00 [INFO ] Data directory: gf-digest/d-testnet-shape/igneum-devnet-973/datadir
|
||||
2026-10-07 15:13:26.156+02:00 [INFO ] Logs to console only
|
||||
2026-10-07 15:13:26.172+02:00 [INFO ] Finality v2 (igneum-devnet-973): interval 30 depth 20 window 7200 DAA dust 5 presence 20 aggregators 8 ban 7200 fold 3; rule v3 (frozen table, certificate fold) from checkpoint DAA never; 0 checkpoints known, next index 1, 0 locks, 0 keys; C1 in DAA seconds from DAA never; weight-gated deep fork choice from DAA never; leave rule (W7, delay 3600 DAA) from checkpoint DAA never, 0 leaves; key succession (W5) from checkpoint DAA 0, 0 successions; signature scheme 0 (0 = BLS12-381), any other refused until a class names it
|
||||
2026-10-07 15:13:26.180+02:00 [INFO ] [igneum-exec] proving v0: payouts from DAA score never, window 7200 DAA, dust 5, verifier Off
|
||||
2026-10-07 15:13:26.180+02:00 [INFO ] [igneum-exec] proving v1: segment records from DAA score never, 8 blocks a segment, unproven after 600 DAA, aggregator share 1000 bps, shard program id unknown, aggregator id unknown
|
||||
2026-10-07 15:13:26.180+02:00 [INFO ] [igneum-exec] proof archive at gf-digest/d-testnet-shape/igneum-devnet-973/datadir/evm/proofs: 0 proofs
|
||||
2026-10-07 15:13:26.181+02:00 [INFO ] [igneum-exec] verifying keys embedded: shard program id 0x2b1a81cb413236cf063077b46ed3111628f6c41036bcf6e23ee4cbbf5679ef7a aggregator id 0x474678f35f7545db28055d5e5bbc308231d84a5a072202087a2a8d5b09123896
|
||||
2026-10-07 15:13:26.185+02:00 [INFO ] template prewarm: on (the cached block template is rebuilt on every virtual change; IGNEUM_TEMPLATE_PREWARM=0 turns it off)
|
||||
2026-10-07 15:13:26.186+02:00 [INFO ] GRPC Server starting on: 127.0.0.1:29760
|
||||
2026-10-07 15:13:26.186+02:00 [INFO ] P2P Server starting on: 127.0.0.1:29761
|
||||
2026-10-07 15:13:26.186+02:00 [INFO ] [igneum-exec] eth_ JSON-RPC listening on 127.0.0.1:26790
|
||||
2026-10-07 15:13:26.186+02:00 [INFO ] WRPC Server starting on: 127.0.0.1:29762
|
||||
2026-10-07 15:13:26.186+02:00 [INFO ] [igneum-exec] chain follower started
|
||||
2026-10-07 15:13:26.186+02:00 [INFO ] [igneum-exec] proof verifier: Off (no SP1 verification on this node)
|
||||
2026-10-07 15:13:26.186+02:00 [WARN ] [igneum-exec] cannot bind the eth_ JSON-RPC server on 127.0.0.1:26790: Address already in use (os error 98)
|
||||
2026-10-07 15:13:26.186+02:00 [INFO ] [igneum-exec] exec sync: sink edc4fa844da9dc98d37e965176f6558a31560e40502ab3ae5491b21aaaabfb07 is chain block 0; pruning point edc4fa844da9dc98d37e965176f6558a31560e40502ab3ae5491b21aaaabfb07 is chain block Some(0) (DAA 0); retention root edc4fa844da9dc98d37e965176f6558a31560e40502ab3ae5491b21aaaabfb07 is chain block Some(0) (DAA 0), its body held
|
||||
2026-10-07 15:13:26.186+02:00 [INFO ] [igneum-exec] exec sync: no snapshot to resume from (no snapshot file); the follower starts at genesis
|
||||
2026-10-07 15:13:26.186+02:00 [INFO ] [igneum-exec] chain follower stopped
|
||||
^SIGTERM - shutting down...
|
||||
2026-10-07 15:13:51.152+02:00 [INFO ] P2P Server stopped: 127.0.0.1:29761
|
||||
2026-10-07 15:13:51.152+02:00 [INFO ] WRPC Server stopped on: 127.0.0.1:29762
|
||||
2026-10-07 15:13:51.152+02:00 [INFO ] GRPC Server stopped on: 127.0.0.1:29760
|
||||
2026-10-07 15:13:51.660+02:00 [INFO ] igneumd has stopped...
|
||||
|
|
@ -0,0 +1,695 @@
|
|||
{
|
||||
"expect": "no-succession",
|
||||
"pass": false,
|
||||
"checks": {
|
||||
"window_filled_before_the_succession": true,
|
||||
"succession_accepted_on_submit": true,
|
||||
"carried_once_on_every_node": false,
|
||||
"successor_inherits_on_every_node": false,
|
||||
"old_key_handed_over_on_every_node": false,
|
||||
"nodes_agree_on_the_successor_weight": false,
|
||||
"refused_old_again_on_n2": false,
|
||||
"refused_old_again_on_n0": false,
|
||||
"refused_successor_that_handed_over": false,
|
||||
"scheme_1_refused_by_every_node": true,
|
||||
"locks_continue_after_the_fold": true,
|
||||
"zero_rejected_by_nodes": true,
|
||||
"sinks_agree": true
|
||||
},
|
||||
"old_key": "e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d",
|
||||
"new_key": "2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8",
|
||||
"old_blocks_before": 41,
|
||||
"succeeded_at_daa": 261,
|
||||
"carried_seen_at_daa": null,
|
||||
"new_mined_alone": 112,
|
||||
"rows": [
|
||||
{
|
||||
"new": {
|
||||
"blocks": 37,
|
||||
"keyHash": "2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8",
|
||||
"participation": 1,
|
||||
"pubkey": "80ab38c523736ad8944c7d3375e7563ba3b0d5a3ab149bec568cf207edcc9e1ab1ee2566e06ff422a5ec4c85a4049976",
|
||||
"strippedUntilDaa": 0,
|
||||
"succeededFrom": "",
|
||||
"succeededTo": "",
|
||||
"voter": true
|
||||
},
|
||||
"old": {
|
||||
"blocks": 0,
|
||||
"keyHash": "e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d",
|
||||
"participation": 0,
|
||||
"pubkey": "b0fd8eebbbaad96268e5f7b8a86090ca0c723954a0a5cb81c92b633094c1742b2505c4f7cea646c5c96bb52e57400067",
|
||||
"strippedUntilDaa": 0,
|
||||
"succeededFrom": "",
|
||||
"succeededTo": "6543d321fd61aedb7f9587b277a47a63471ac1c0a403559bc7fcd91809b1fd93",
|
||||
"voter": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"new": {
|
||||
"blocks": 0,
|
||||
"keyHash": "2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8",
|
||||
"participation": 0,
|
||||
"pubkey": "80ab38c523736ad8944c7d3375e7563ba3b0d5a3ab149bec568cf207edcc9e1ab1ee2566e06ff422a5ec4c85a4049976",
|
||||
"strippedUntilDaa": 0,
|
||||
"succeededFrom": "",
|
||||
"succeededTo": "e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d",
|
||||
"voter": false
|
||||
},
|
||||
"old": {
|
||||
"blocks": 0,
|
||||
"keyHash": "e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d",
|
||||
"participation": 0,
|
||||
"pubkey": "b0fd8eebbbaad96268e5f7b8a86090ca0c723954a0a5cb81c92b633094c1742b2505c4f7cea646c5c96bb52e57400067",
|
||||
"strippedUntilDaa": 0,
|
||||
"succeededFrom": "",
|
||||
"succeededTo": "6543d321fd61aedb7f9587b277a47a63471ac1c0a403559bc7fcd91809b1fd93",
|
||||
"voter": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"new": {
|
||||
"blocks": 37,
|
||||
"keyHash": "2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8",
|
||||
"participation": 1,
|
||||
"pubkey": "80ab38c523736ad8944c7d3375e7563ba3b0d5a3ab149bec568cf207edcc9e1ab1ee2566e06ff422a5ec4c85a4049976",
|
||||
"strippedUntilDaa": 0,
|
||||
"succeededFrom": "",
|
||||
"succeededTo": "",
|
||||
"voter": true
|
||||
},
|
||||
"old": {
|
||||
"blocks": 0,
|
||||
"keyHash": "e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d",
|
||||
"participation": 0,
|
||||
"pubkey": "b0fd8eebbbaad96268e5f7b8a86090ca0c723954a0a5cb81c92b633094c1742b2505c4f7cea646c5c96bb52e57400067",
|
||||
"strippedUntilDaa": 0,
|
||||
"succeededFrom": "",
|
||||
"succeededTo": "6543d321fd61aedb7f9587b277a47a63471ac1c0a403559bc7fcd91809b1fd93",
|
||||
"voter": false
|
||||
}
|
||||
}
|
||||
],
|
||||
"locks": [
|
||||
12,
|
||||
12,
|
||||
12
|
||||
],
|
||||
"locks_at_fold": 9,
|
||||
"refusals": [
|
||||
{
|
||||
"what": "w5-old -> w5-third on n2",
|
||||
"code": 0,
|
||||
"line": "1791378723.612 SUCCEED old=e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d new=6543d321fd61aedb7f9587b277a47a63471ac1c0a403559bc7fcd91809b1fd93 daa=502 (accepted: carried in this node's next block)"
|
||||
},
|
||||
{
|
||||
"what": "w5-old -> w5-third on n0",
|
||||
"code": 0,
|
||||
"line": "1791378723.629 SUCCEED old=e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d new=6543d321fd61aedb7f9587b277a47a63471ac1c0a403559bc7fcd91809b1fd93 daa=502 (accepted: carried in this node's next block)"
|
||||
},
|
||||
{
|
||||
"what": "w5-new -> w5-old on n1",
|
||||
"code": 0,
|
||||
"line": "1791378723.645 SUCCEED old=2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8 new=e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d daa=502 (accepted: carried in this node's next block)"
|
||||
}
|
||||
],
|
||||
"probes": [
|
||||
{
|
||||
"node": 0,
|
||||
"code": 0,
|
||||
"line": "1791378723.659 SCHEME 1 REFUSED key=b875b095c1b5d55914820300c34a2dd53ff6ae68fbac192b1c9e6ded524a9dc8 index=16 (refused: vote carries signature scheme 1; the active scheme is 0 (BLS12-381); another scheme is named only by a program class the 95 percent signal moves to, and none names one)"
|
||||
},
|
||||
{
|
||||
"node": 1,
|
||||
"code": 0,
|
||||
"line": "1791378723.672 SCHEME 1 REFUSED key=b875b095c1b5d55914820300c34a2dd53ff6ae68fbac192b1c9e6ded524a9dc8 index=16 (refused: vote carries signature scheme 1; the active scheme is 0 (BLS12-381); another scheme is named only by a program class the 95 percent signal moves to, and none names one)"
|
||||
},
|
||||
{
|
||||
"node": 2,
|
||||
"code": 0,
|
||||
"line": "1791378723.687 SCHEME 1 REFUSED key=b875b095c1b5d55914820300c34a2dd53ff6ae68fbac192b1c9e6ded524a9dc8 index=16 (refused: vote carries signature scheme 1; the active scheme is 0 (BLS12-381); another scheme is named only by a program class the 95 percent signal moves to, and none names one)"
|
||||
}
|
||||
],
|
||||
"samples": [
|
||||
{
|
||||
"t": 5.7,
|
||||
"daa": 0,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"?",
|
||||
"?",
|
||||
"?"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 20.7,
|
||||
"daa": 7,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"?",
|
||||
"?",
|
||||
"?"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 35.7,
|
||||
"daa": 17,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"?",
|
||||
"?",
|
||||
"?"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 50.7,
|
||||
"daa": 36,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"?",
|
||||
"?",
|
||||
"?"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 65.7,
|
||||
"daa": 57,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"29/3",
|
||||
"29/3",
|
||||
"29/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 80.8,
|
||||
"daa": 79,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"29/3",
|
||||
"29/3",
|
||||
"29/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 95.8,
|
||||
"daa": 92,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"59/3",
|
||||
"59/3",
|
||||
"59/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 110.8,
|
||||
"daa": 104,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"59/3",
|
||||
"59/3",
|
||||
"59/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 125.8,
|
||||
"daa": 114,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"89/3",
|
||||
"89/3",
|
||||
"89/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 140.8,
|
||||
"daa": 123,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"89/3",
|
||||
"89/3",
|
||||
"89/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 155.8,
|
||||
"daa": 135,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"89/3",
|
||||
"89/3",
|
||||
"89/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 170.9,
|
||||
"daa": 152,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"119/3",
|
||||
"119/3",
|
||||
"119/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 185.9,
|
||||
"daa": 173,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 200.9,
|
||||
"daa": 187,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 215.9,
|
||||
"daa": 203,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
2,
|
||||
2,
|
||||
2
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 230.9,
|
||||
"daa": 224,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
2,
|
||||
2,
|
||||
2
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 246,
|
||||
"daa": 242,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
3,
|
||||
3,
|
||||
3
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 261,
|
||||
"daa": 258,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
3,
|
||||
3,
|
||||
3
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 276.5,
|
||||
"daa": 270,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
4,
|
||||
4,
|
||||
4
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 291.6,
|
||||
"daa": 285,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
4,
|
||||
4,
|
||||
4
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 306.6,
|
||||
"daa": 308,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"118/3",
|
||||
"118/3",
|
||||
"118/3"
|
||||
],
|
||||
"locks": [
|
||||
4,
|
||||
4,
|
||||
4
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 321.7,
|
||||
"daa": 338,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/4",
|
||||
"120/4",
|
||||
"120/4"
|
||||
],
|
||||
"locks": [
|
||||
4,
|
||||
4,
|
||||
4
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 336.7,
|
||||
"daa": 357,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/4",
|
||||
"120/4",
|
||||
"120/4"
|
||||
],
|
||||
"locks": [
|
||||
4,
|
||||
4,
|
||||
4
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 351.8,
|
||||
"daa": 368,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/4",
|
||||
"120/4",
|
||||
"120/4"
|
||||
],
|
||||
"locks": [
|
||||
4,
|
||||
4,
|
||||
4
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 366.9,
|
||||
"daa": 385,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/4",
|
||||
"120/4",
|
||||
"120/4"
|
||||
],
|
||||
"locks": [
|
||||
5,
|
||||
5,
|
||||
5
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 382,
|
||||
"daa": 406,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/4",
|
||||
"120/4",
|
||||
"120/4"
|
||||
],
|
||||
"locks": [
|
||||
5,
|
||||
5,
|
||||
5
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 397,
|
||||
"daa": 424,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
6,
|
||||
6,
|
||||
6
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 412.1,
|
||||
"daa": 441,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
7,
|
||||
7,
|
||||
7
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 427.2,
|
||||
"daa": 454,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
7,
|
||||
7,
|
||||
7
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 442.3,
|
||||
"daa": 469,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
7,
|
||||
7,
|
||||
7
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 457.3,
|
||||
"daa": 485,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
8,
|
||||
8,
|
||||
8
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 472.4,
|
||||
"daa": 494,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
8,
|
||||
8,
|
||||
8
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 487.6,
|
||||
"daa": 509,
|
||||
"phase": "after",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
9,
|
||||
9,
|
||||
9
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 502.6,
|
||||
"daa": 526,
|
||||
"phase": "after",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
9,
|
||||
9,
|
||||
9
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 517.6,
|
||||
"daa": 545,
|
||||
"phase": "after",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
10,
|
||||
10,
|
||||
10
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 532.7,
|
||||
"daa": 561,
|
||||
"phase": "after",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
11,
|
||||
11,
|
||||
11
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 547.7,
|
||||
"daa": 578,
|
||||
"phase": "after",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
11,
|
||||
11,
|
||||
11
|
||||
]
|
||||
}
|
||||
],
|
||||
"wall_s": 560.2,
|
||||
"binaries": {
|
||||
"igneumd": "/srv/builds/igneum-wt-genesis-forward/vendor/igneum-node-gf/target/release/igneumd",
|
||||
"miner": "/srv/builds/igneum-wt-genesis-forward/vendor/igneum-node-gf/target/release/igneum-miner"
|
||||
}
|
||||
}
|
||||
455
docs/design/genesis-forward-harness/pass-succession.json
Normal file
455
docs/design/genesis-forward-harness/pass-succession.json
Normal file
|
|
@ -0,0 +1,455 @@
|
|||
{
|
||||
"expect": "succession",
|
||||
"pass": true,
|
||||
"checks": {
|
||||
"window_filled_before_the_succession": true,
|
||||
"succession_accepted_on_submit": true,
|
||||
"carried_once_on_every_node": true,
|
||||
"successor_inherits_on_every_node": true,
|
||||
"old_key_handed_over_on_every_node": true,
|
||||
"nodes_agree_on_the_successor_weight": true,
|
||||
"refused_old_again_on_n2": true,
|
||||
"refused_old_again_on_n0": true,
|
||||
"refused_successor_that_handed_over": true,
|
||||
"scheme_1_refused_by_every_node": true,
|
||||
"locks_continue_after_the_fold": true,
|
||||
"zero_rejected_by_nodes": true,
|
||||
"sinks_agree": true
|
||||
},
|
||||
"old_key": "e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d",
|
||||
"new_key": "2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8",
|
||||
"old_blocks_before": 42,
|
||||
"succeeded_at_daa": 260,
|
||||
"carried_seen_at_daa": 266,
|
||||
"new_mined_alone": 29,
|
||||
"rows": [
|
||||
{
|
||||
"new": {
|
||||
"blocks": 37,
|
||||
"keyHash": "2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8",
|
||||
"participation": 1,
|
||||
"pubkey": "80ab38c523736ad8944c7d3375e7563ba3b0d5a3ab149bec568cf207edcc9e1ab1ee2566e06ff422a5ec4c85a4049976",
|
||||
"strippedUntilDaa": 0,
|
||||
"succeededFrom": "e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d",
|
||||
"succeededTo": "",
|
||||
"voter": true
|
||||
},
|
||||
"old": {
|
||||
"blocks": 0,
|
||||
"keyHash": "e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d",
|
||||
"participation": 0,
|
||||
"pubkey": "b0fd8eebbbaad96268e5f7b8a86090ca0c723954a0a5cb81c92b633094c1742b2505c4f7cea646c5c96bb52e57400067",
|
||||
"strippedUntilDaa": 0,
|
||||
"succeededFrom": "",
|
||||
"succeededTo": "2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8",
|
||||
"voter": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"new": {
|
||||
"blocks": 37,
|
||||
"keyHash": "2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8",
|
||||
"participation": 1,
|
||||
"pubkey": "80ab38c523736ad8944c7d3375e7563ba3b0d5a3ab149bec568cf207edcc9e1ab1ee2566e06ff422a5ec4c85a4049976",
|
||||
"strippedUntilDaa": 0,
|
||||
"succeededFrom": "e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d",
|
||||
"succeededTo": "",
|
||||
"voter": true
|
||||
},
|
||||
"old": {
|
||||
"blocks": 0,
|
||||
"keyHash": "e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d",
|
||||
"participation": 0,
|
||||
"pubkey": "b0fd8eebbbaad96268e5f7b8a86090ca0c723954a0a5cb81c92b633094c1742b2505c4f7cea646c5c96bb52e57400067",
|
||||
"strippedUntilDaa": 0,
|
||||
"succeededFrom": "",
|
||||
"succeededTo": "2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8",
|
||||
"voter": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"new": {
|
||||
"blocks": 37,
|
||||
"keyHash": "2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8",
|
||||
"participation": 1,
|
||||
"pubkey": "80ab38c523736ad8944c7d3375e7563ba3b0d5a3ab149bec568cf207edcc9e1ab1ee2566e06ff422a5ec4c85a4049976",
|
||||
"strippedUntilDaa": 0,
|
||||
"succeededFrom": "e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d",
|
||||
"succeededTo": "",
|
||||
"voter": true
|
||||
},
|
||||
"old": {
|
||||
"blocks": 0,
|
||||
"keyHash": "e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d",
|
||||
"participation": 0,
|
||||
"pubkey": "b0fd8eebbbaad96268e5f7b8a86090ca0c723954a0a5cb81c92b633094c1742b2505c4f7cea646c5c96bb52e57400067",
|
||||
"strippedUntilDaa": 0,
|
||||
"succeededFrom": "",
|
||||
"succeededTo": "2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8",
|
||||
"voter": false
|
||||
}
|
||||
}
|
||||
],
|
||||
"locks": [
|
||||
7,
|
||||
7,
|
||||
7
|
||||
],
|
||||
"locks_at_fold": 4,
|
||||
"refusals": [
|
||||
{
|
||||
"what": "w5-old -> w5-third on n2",
|
||||
"code": 3,
|
||||
"line": "1791379651.057 SUCCEED REFUSED old=e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d new=6543d321fd61aedb7f9587b277a47a63471ac1c0a403559bc7fcd91809b1fd93 daa=290 (refused: key e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d has already handed its weight to 2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8; a key hands over once)"
|
||||
},
|
||||
{
|
||||
"what": "w5-old -> w5-third on n0",
|
||||
"code": 3,
|
||||
"line": "1791379651.072 SUCCEED REFUSED old=e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d new=6543d321fd61aedb7f9587b277a47a63471ac1c0a403559bc7fcd91809b1fd93 daa=290 (refused: key e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d has already handed its weight to 2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8; a key hands over once)"
|
||||
},
|
||||
{
|
||||
"what": "w5-new -> w5-old on n1",
|
||||
"code": 3,
|
||||
"line": "1791379651.085 SUCCEED REFUSED old=2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8 new=e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d daa=290 (refused: successor e4036b1e79c817f2f0e6bf2f222d3b356d56451cb8736b1530ff7ef46e8c6c8d has itself handed its weight to 2f031ed35a29ced8a92b04a0a54639ebf1ea26035748ba83e060dd7f396c14a8; it signs nothing and can inherit nothing)"
|
||||
}
|
||||
],
|
||||
"probes": [
|
||||
{
|
||||
"node": 0,
|
||||
"code": 0,
|
||||
"line": "1791379651.097 SCHEME 1 REFUSED key=b875b095c1b5d55914820300c34a2dd53ff6ae68fbac192b1c9e6ded524a9dc8 index=9 (refused: vote carries signature scheme 1; the active scheme is 0 (BLS12-381); another scheme is named only by a program class the 95 percent signal moves to, and none names one)"
|
||||
},
|
||||
{
|
||||
"node": 1,
|
||||
"code": 0,
|
||||
"line": "1791379651.110 SCHEME 1 REFUSED key=b875b095c1b5d55914820300c34a2dd53ff6ae68fbac192b1c9e6ded524a9dc8 index=9 (refused: vote carries signature scheme 1; the active scheme is 0 (BLS12-381); another scheme is named only by a program class the 95 percent signal moves to, and none names one)"
|
||||
},
|
||||
{
|
||||
"node": 2,
|
||||
"code": 0,
|
||||
"line": "1791379651.123 SCHEME 1 REFUSED key=b875b095c1b5d55914820300c34a2dd53ff6ae68fbac192b1c9e6ded524a9dc8 index=9 (refused: vote carries signature scheme 1; the active scheme is 0 (BLS12-381); another scheme is named only by a program class the 95 percent signal moves to, and none names one)"
|
||||
}
|
||||
],
|
||||
"samples": [
|
||||
{
|
||||
"t": 5.6,
|
||||
"daa": 0,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"?",
|
||||
"?",
|
||||
"?"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 20.6,
|
||||
"daa": 37,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"?",
|
||||
"?",
|
||||
"?"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 35.6,
|
||||
"daa": 56,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"28/3",
|
||||
"28/3",
|
||||
"28/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 50.6,
|
||||
"daa": 71,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"28/3",
|
||||
"28/3",
|
||||
"28/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 65.6,
|
||||
"daa": 85,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"58/3",
|
||||
"58/3",
|
||||
"58/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 80.6,
|
||||
"daa": 106,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"58/3",
|
||||
"58/3",
|
||||
"58/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 95.6,
|
||||
"daa": 126,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"88/3",
|
||||
"88/3",
|
||||
"88/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 110.6,
|
||||
"daa": 141,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"118/3",
|
||||
"118/3",
|
||||
"118/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 125.6,
|
||||
"daa": 155,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"118/3",
|
||||
"118/3",
|
||||
"118/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 140.6,
|
||||
"daa": 166,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"118/3",
|
||||
"118/3",
|
||||
"118/3"
|
||||
],
|
||||
"locks": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 155.7,
|
||||
"daa": 185,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
1,
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 170.7,
|
||||
"daa": 202,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
2,
|
||||
2,
|
||||
2
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 185.7,
|
||||
"daa": 213,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
2,
|
||||
2,
|
||||
2
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 200.7,
|
||||
"daa": 229,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
2,
|
||||
2,
|
||||
2
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 215.7,
|
||||
"daa": 244,
|
||||
"phase": "fill",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
3,
|
||||
3,
|
||||
3
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 233.2,
|
||||
"daa": 261,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
4,
|
||||
4,
|
||||
4
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 248.3,
|
||||
"daa": 280,
|
||||
"phase": "carry",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
4,
|
||||
4,
|
||||
4
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 263.4,
|
||||
"daa": 300,
|
||||
"phase": "after",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
5,
|
||||
5,
|
||||
5
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 278.4,
|
||||
"daa": 316,
|
||||
"phase": "after",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
5,
|
||||
5,
|
||||
5
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 293.4,
|
||||
"daa": 328,
|
||||
"phase": "after",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
6,
|
||||
6,
|
||||
6
|
||||
]
|
||||
},
|
||||
{
|
||||
"t": 308.4,
|
||||
"daa": 343,
|
||||
"phase": "after",
|
||||
"weights": [
|
||||
"120/3",
|
||||
"120/3",
|
||||
"120/3"
|
||||
],
|
||||
"locks": [
|
||||
6,
|
||||
6,
|
||||
6
|
||||
]
|
||||
}
|
||||
],
|
||||
"wall_s": 317,
|
||||
"binaries": {
|
||||
"igneumd": "/srv/builds/igneum-wt-genesis-forward/vendor/igneum-node-gf/target/release/igneumd",
|
||||
"miner": "/srv/builds/igneum-wt-genesis-forward/vendor/igneum-node-gf/target/release/igneum-miner"
|
||||
}
|
||||
}
|
||||
|
|
@ -60,9 +60,25 @@ Flagged in spec 04 section 4.8, not sized: Shor computes the class-group order,
|
|||
| The ladder rung visible in the RPC | `powEpoch.latencyLadderCache*` on `getBlockTemplate`, the daemon line; unit: `latency_ladder_rule` (an inadmissible cache rung never entered; with the flag, 90 percent in seven windows enters it, N still steps after it, one rung, never back) | section 6 |
|
||||
| The codec | `scheme_byte_and_succession_items_round_trip_and_an_older_decoder_stops_at_them` | section 6 |
|
||||
|
||||
## 6. Results
|
||||
## 6. Results (7 October 2026, 12:5x to 14:3x UK; igneum-build-1 for the gate build, the harness and the digests, igneum-build-2 for the suites)
|
||||
|
||||
Filled in when the box runs are green (build and test lines, the harness summaries copied to `docs/design/genesis-forward-harness/`).
|
||||
| Gate | Run | Result |
|
||||
|---|---|---|
|
||||
| The digest test | `cargo test --release -p kaspa-consensus-core --lib` on build-2 at 75810130 | 124 passed, 0 failed, 2 ignored (`consensus_digest_covers_every_consensus_field_and_nothing_else` with 30 edits, `override_params_carry_the_genesis_forward_fields_and_the_digest_moves_only_when_set`, `latency_ladder_rule` with the cache rung) |
|
||||
| The 60x keeper test | `fast_time_60x_file_is_the_devnet_at_60x` on build-2 against the completed file (repo 9c9a1f52) | 1 passed (the file had lacked 17 fields on master, `emission` and `proving_consensus_verify_daa` among them; the box mirrors carry no `infra/`, so the test skips there unless the file is shipped) |
|
||||
| Scheme 1 refused by every node | unit `a_vote_reveal_or_successor_of_another_signature_scheme_is_refused_until_a_class_names_it`; fast-time `probe-scheme` on three nodes, both harness cases | green in the suite runs; every node: `SCHEME 1 REFUSED ... (refused: vote carries signature scheme 1; the active scheme is 0 (BLS12-381); another scheme is named only by a program class the 95 percent signal moves to, and none names one)` |
|
||||
| A succession carried once and refused twice | unit `a_key_hands_its_window_to_a_successor_once_and_a_second_succession_is_refused` (two nodes); fast-time `infra/fast-time/key-succession.mjs` on build-1 (3 nodes, one CPU miner each, override-60x with the three switches at 0) | known-failed case first (`--expect no-succession`, 13:04 to 13:13 UK, `genesis-forward-harness/known-failed-no-succession.json`): FAIL as it must on every carried-once check with the probe, the locks and the sinks holding. Pass case (`--expect succession`, node bdb34f62, 13:23 to 13:28 UK, `pass-succession.json`): PASS, every check holds: w5-old held 42 blocks at DAA 260; the succession accepted on n2 at DAA 261 and carried by a block at DAA 266 on every node; at the fold (DAA 290) every node reads w5-new 37 blocks (7 mined alone) and w5-old 0 with `succeededTo`; w5-old to w5-third refused on n2 and n0 (`already handed`), w5-new to w5-old refused on n1 (`has itself handed`); locks 4 to 7 on every node after the fold; 0 rejected blocks, sinks agree; 317 s wall |
|
||||
| The cache rung visible in the RPC | `powEpoch.latencyLadderCache*` (proto fields 37 to 43); the daemon's ladder line | the testnet-shaped file prints `rungs 27, 35, 53, [88], [173], [267] shadow passes, cache [512 MiB] beside them` (`digest-testnet-shape.log`) |
|
||||
| The codec | `scheme_byte_and_succession_items_round_trip_and_an_older_decoder_stops_at_them` | green in the suite runs |
|
||||
| The digest, cross-binary | igneumd 75810130 against the 0.3.20 base dc141409 (bs0319's build), both with no file, devnet suffix 973 | both `079d8a7e736abbd4` (`digest-no-file.log`, `digest-base-dc141409.log`): the three fields at never move nothing; the ladder alone at 0 reads `772f9f8e3ef59ca1`, the testnet-shaped file (ladder at 0, scheme switch at 0, succession at 0, the cache rung) `60e842a738c7dea0`, on devnet params; the testnet lane's own number comes from `TESTNET_PARAMS` at its cut. The 0.3.18 line's `c562d70e` is behind the decimals, tail-emission and subsidy fields of the 0.3.19 and 0.3.20 lines, not behind these |
|
||||
| The gate build | `tools/build-remote.sh --priority gate` on build-1 at bdb34f62 | igneumd 57,554,336 B sha256 6d0aa37b..., igneum-miner 10,240,768 B sha256 69fc3c63... (commit string carried) |
|
||||
| The consensus suite | `cargo test --release -p kaspa-consensus` on build-2 | 114 passed, 0 failed, 3 ignored at 13:16 UK (bdb34f62's code); two later runs at 14:2x UK failed 1 of 114 on the pre-existing two-node F23 test (`ban_is_decided_by_the_carrying_block...`: node 1 refuses block 61 at DAA 60 with `UnexpectedDifficulty`, bits apart by about 17,000 in the mantissa), the same shape the succession test showed once at 13:0x UK before it passed; the refusal moves between the two-node tests and between runs, and no static on the bits path was found (the memos are keyed by block hash and sit on the class, ladder and era paths), so it is OPEN as a test-binary class, probed as F23 alone three times and the two-node tests together three times (section 6a) |
|
||||
|
||||
Faults found on the way, both mine: (1) rule v3's frozen table stood at the lock before the carrier, where the old key still weighed and signed nothing, so nothing locked after the fold (fixed in `frozen_table`, 9322cc1d); (2) the template read the explicit-form switch from the process-wide static that only the daemon installs, so `TestConsensus` wrote the plain form (the manager holds the activation now, daa61847).
|
||||
|
||||
### 6a. The two-node refusal probe
|
||||
|
||||
Filled from `probe.out` (F23 alone three times, the three two-node tests together three times, build-2).
|
||||
|
||||
## 7. For the testnet lane
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue