59ac32e3b2
- Replace 68 "[here]" links with descriptive text (MD059) - Fix table separator spacing in 6 project files (MD060) - Add trailing newlines to 2 files (MD047) - Disable MD060 rule for .claude/ internal files - Update markdownlint config with MD060: false All project files now pass markdownlint --config .github/.markdownlint.yaml 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Disputes Subsystems
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
resilient way.