Disputable API

The Disputable parent contract is a contract which enables its children to easily interact with Celeste. It does this by packaging common patterns into internal methods which can be used by your contracts.

Inheriting from Disputable will allow you to easily create disputes and query their rulings while automatically syncing with Celeste's Manifest.


constructor(address, address)


  • address _arbitrator: address of the Celeste AragonCourt instance. Not hard coded for test purposes. This allows the instance to be initialized with the address of the mock during testing

  • address _arbitratorManifest: address of the Celeste CourtManifest instance.

Emitted events:

The constructor does not emit any events.

General function

Initializes instance.


IArbitrator immutable public arbitrator

Celeste AragonCourt instance as specified during initialization. Can be used if your contract wants to directly interact with Celeste.


external submitEvidenceFor(uint256, bytes) -> ()


  • uint256 _disputeId: The dispute ID for which evidence is to be submitted

  • bytes calldata _evidence: Evidence to be evaluated by the jurors in the form of plain text.

Emitted Events:

This method does not directly emit any events but may indirectly trigger events in the DisputeManager. (view step 2. "Submitting Evidence" here for more info).

General function

Will submit evidence for the case. Will submit evidence on behalf of the defendant or challenger depending on the caller. Will revert if the caller not a participating party or is a representative for both or neither parties.

Last updated