The dispute game involves 2 parties. The parties agree on an initial state but disagree on a final state. Initial and final states are separated by a sequence of transitions. Once initiated, the dispute game forces the participants to narrow the dispute to a single transition. The transition can then be validated by the rules of the system.
The aim is to create a formally verified, generic implementation not tied to a specific virtual machine.
The ts-prototype folder contains a prototype of the:
-
dispute game contract
-
dispute game agent
There is a suite of tests that test the typescript prototype that can be run via yarn test:ts
The solidity prototype implements the dispute manager contract.
There is currently no dispute agent that works with solidity prototype but there is a test suite that can be with the command yarn test:sol
Many more details about the dispute game are described in the design document.
This prototype is inspired by the Arbitrum implementation.