Zombienet tests - disputes on finalized blocks (#2184)
**Overview:** Adding an extra malus variant focusing on disputing finalized blocks. It will: - wrap around approval-voting - listen to `OverseerSignal::BlockFinalized` and when encountered start a dispute for the `dispute_offset`th ancestor - simply pass through all other messages and signals Add zombienet tests testing various edgecases: - disputing freshly finalized blocks - disputing stale finalized blocks - disputing eagerly pruned finalized blocks (might be separate PR) **TODO:** - [x] Register new malus variant - [x] Simple pass through wrapper (approval-voting) - [x] Simple network definition - [x] Listen to block finalizations - [x] Fetch ancestor hash - [x] Fetch session index - [x] Fetch candidate - [x] Construct and send dispute message - [x] zndsl test 1 checking that disputes on fresh finalizations resolve valid Closes #1365 - [x] zndsl test 2 checking that disputes for too old finalized blocks are not possible Closes #1364 - [ ] zndsl test 3 checking that disputes for candidates with eagerly pruned relay parent state are handled correctly #1359 (deferred to a separate PR) - [x] Unit tests for new malus variant (testing cli etc) - [x] Clean/streamline error handling - [ ] ~~Ensure it tests properly on session boundaries~~ --------- Co-authored-by:Javier Viola <javier@parity.io> Co-authored-by:
Marcin S. <marcin@realemail.net> Co-authored-by:
Tsvetomir Dimitrov <tsvetomir@parity.io>
parent
4f8048b9
Showing
- .gitlab/pipeline/zombienet/polkadot.yml 16 additions, 0 deletions.gitlab/pipeline/zombienet/polkadot.yml
- polkadot/node/malus/src/malus.rs 46 additions, 0 deletionspolkadot/node/malus/src/malus.rs
- polkadot/node/malus/src/variants/common.rs 2 additions, 2 deletionspolkadot/node/malus/src/variants/common.rs
- polkadot/node/malus/src/variants/dispute_finalized_candidates.rs 265 additions, 0 deletions...t/node/malus/src/variants/dispute_finalized_candidates.rs
- polkadot/node/malus/src/variants/mod.rs 2 additions, 0 deletionspolkadot/node/malus/src/variants/mod.rs
- polkadot/node/malus/src/variants/suggest_garbage_candidate.rs 1 addition, 1 deletion...adot/node/malus/src/variants/suggest_garbage_candidate.rs
- polkadot/zombienet_tests/functional/0007-dispute-freshly-finalized.toml 40 additions, 0 deletions...enet_tests/functional/0007-dispute-freshly-finalized.toml
- polkadot/zombienet_tests/functional/0007-dispute-freshly-finalized.zndsl 29 additions, 0 deletions...net_tests/functional/0007-dispute-freshly-finalized.zndsl
- polkadot/zombienet_tests/functional/0008-dispute-old-finalized.toml 40 additions, 0 deletions...ombienet_tests/functional/0008-dispute-old-finalized.toml
- polkadot/zombienet_tests/functional/0008-dispute-old-finalized.zndsl 21 additions, 0 deletions...mbienet_tests/functional/0008-dispute-old-finalized.zndsl
Please register or sign in to comment