If approval voting finds an invalid candidate, a dispute is raised. The disputes subsystems are concerned with the following:
- Disputes can be raised
- Disputes (votes) get propagated to all other validators
- Votes get recorded as necessary
- Nodes will participate in disputes in a sensible fashion
- Finality is stopped while a candidate is being disputed on chain
- Chains can be reverted in case a dispute concludes invalid
- Votes are provided to the provisioner for importing on chain, in order for slashing to work.
The dispute-coordinator subsystem interfaces with the provisioner and chain
selection to make the bulk of this possible.
dispute-distribution is concerned
with getting votes out to other validators and receiving them in a spam