Skip to content

Optimistic Oracle

Overview

The Optimistic Oracle enables subjective market resolution through a propose → challenge → vote flow, inspired by UMA Protocol.

Flow

Step 1: Propose

Anyone can submit a resolution proposal (Yes or No) by posting a bond (default: 500 KP).

Step 2: Challenge period

After proposal, there is a challenge window (typically 24-48 hours). During this time:

  • If no one challenges → the proposal is accepted automatically
  • If someone challenges → they post a counter-bond and the process moves to voting

Step 3: Vote (if challenged)

All KP holders can vote on the correct resolution:

  • Votes are KP-weighted (more KP = more voting power)
  • Users with 0 KP cannot vote (Sybil resistance)
  • Voting period: typically 24-48 hours

Step 4: Resolve

After voting closes:

  • The side with more weighted votes wins
  • Winner gets their bond back + the loser’s bond
  • Market settles based on the winning outcome

Bond system

ActionBond required
Propose500 KP (default)
Challenge500 KP (matches proposer)

Bonds create an economic incentive to propose honestly and only challenge when genuinely disputed.

Weighted voting

Vote weight equals the voter’s KP balance at the time of voting:

vote_weight = voter KP balance

This prevents Sybil attacks — creating multiple accounts doesn’t help unless each account holds KP.

Edge cases

  • If no proposal is submitted after market expiration, an admin can resolve
  • If voting results in a tie, the original proposal stands
  • Void conditions (if defined) can invalidate the market entirely