Oracle-mode dispute resolution Human-mode dispute resolution
Best for Machine-verifiable criteria Subjective criteria
Decision makers Declared bonded oracles Random bonded jurors
Input External data source Evidence and judgment
Escalation Conflicts escalate to human-mode dispute resolution One re-panel, then governance edge case

Maker chooses the dispute resolution mode

When creating a bounty, the maker will choose dispute resolution mode - either oracle-mode or human-mode. In oracle-mode, oracles are declared at bounty posting time, but in human-mode, maker is only committing to a random function that selects the jury when a dispute is opened. This means the selection is reproducible but unknown before dispute time, to mitigate influencing the jury beforehand.

Oracle-mode dispute resolution

Oracle-mode works best with machine-verifiable criteria, which suits AI specified bounties. They will sign and publish attestations to Nostr based on external data sources (e.g. CI pipeline statuses or merged PRs). If oracle attestations conflict, dispute will enter human-mode as a fallback.

Human-mode dispute resolution

Human-mode is more suitable for subjective acceptance criteria. A verifiable random function will select the jury of either 3, 5 or 7 people (panel size scales with bounty value). The panel of jurors will view maker's and taker's evidence, and sign their vote and reasoning.

Arbiter spending escrow

Both oracles in oracle-mode, and the panel of jurors in human-mode will sign and publish attestations/votes to Nostr. A watcher service assembles these votes, producing a k-of-n multisig for the arbiter key in escrow vTXO's leaf B/C, spending the funds for either maker or taker.

Slashing bonds

Both oracles and human jurors can enter the registry by staking a bond in Bitcoin. This produces a monetary incentive to behave honestly. Governance holds keys to slash oracle or human juror bonds as a means of punishing dishonest behavior.