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
| Action | Bond required |
|---|---|
| Propose | 500 KP (default) |
| Challenge | 500 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 balanceThis 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