Pre-launch · Built on Radix DLT
The truth
will out.
OTER is an optimistic oracle on Radix: ask any verifiable question on-chain. A bonded answer settles unchallenged after a public challenge window — or goes to a jury of staked voters casting timelock-sealed ballots.
“ETH traded above $4,000 at the strike time.”
TRUE · settles unchallengedThe lifecycle
How OTER works
Three stages take a question to the fork. Almost every question takes the quiet branch — the vote exists so that nobody ever needs to call it.
A question is posted
Any dApp or person posts a verifiable question — an election, a price level, a real-world event — with a reward for resolving it.
A bonded answer lands
A proposer posts the answer and locks a bond behind it. The bond is skin in the game: it pays whoever proves the answer wrong.
The challenge window opens
The answer sits in public. Disputing it costs a counter-bond, so challenges only come when someone expects to win.
Time passes. Nothing happens.
The window closes untouched and the answer stands. Honest answers are built to take this branch — that is what makes the oracle optimistic.
Staked voters decide, sealed
Timelock-encrypted ballots: no peeking while voting is open, no burying a losing vote after it.
The verdict lands on-chain
A losing bond is slashed 80 / 15 / 5 — winner, correct voters, protocol. Any Radix contract reads the settled outcome atomically.
A question is posted
Any dApp or person posts a verifiable question — an election, a price level, a real-world event — with a reward for resolving it.
A bonded answer lands
A proposer posts the answer and locks a bond behind it. The bond is skin in the game: it pays whoever proves the answer wrong.
The challenge window opens
The answer sits in public. Disputing it costs a counter-bond, so challenges only come when someone expects to win.
Time passes. Nothing happens.
The window closes untouched and the answer stands. Honest answers are built to take this branch — that is what makes the oracle optimistic.
Staked voters decide, sealed
Timelock-encrypted ballots: no peeking while voting is open, no burying a losing vote after it.
The verdict lands on-chain
A losing bond is slashed 80 / 15 / 5 — winner, correct voters, protocol. Any Radix contract reads the settled outcome atomically.
Under the hood
Same optimism.
Harder guarantees.
Optimistic oracles live or die on their dispute game. OTER rebuilds that game with sealed ballots, bonded incentives, faster cycles, and Radix-native atomic settlement.
Ballots stay sealed until reveal
Votes are timelock-encrypted to a future round of drand’s distributed beacon. While voting is open, no one — juror, whale, or the platform itself — can read a single ballot. Once the beacon fires, reveal is permissionless: no last-mover advantage, no quietly burying a losing vote.
Randomness, done honestly
Anti-whale jury sampling is built into the tally engine — and deliberately switched off until its randomness can be verified on-chain. We upstreamed the BLS verification that makes drand beacons checkable in-contract into the Radix engine itself, rather than shipping a sampler anyone could game.
Consumers read verdicts atomically
A Radix contract pulls the settled outcome inside its own transaction — no callbacks, no keeper bots, no push queue to stall or front-run. One settled truth can drive any number of dApps at once.
Being wrong costs real money
Answers and disputes are both bonded, and stake backs every vote. On settlement the losing bond is slashed: 80% to the winner, 15% to correct voters, 5% to the protocol. If a round fails quorum instead, bonds refund and no committed vote is rewarded or slashed.
Escalations catch the next cycle
A full cycle is 24 h of sealed voting, a 12 h reveal, and 12 h to re-propose and dispute. A question that fails quorum re-enters the very next cycle — roughly twice the turnaround of classic optimistic-oracle schedules, where a 24 h reveal pushes it a full extra round. Reveal itself takes minutes; the window is sized to split the day so there is always a re-entry slot.
Whales get the square root
Voting power grows with the square root of stake: doubling a position buys about 41% more vote, not twice as much. Capital still counts — domination doesn’t scale.
Participate as a voter
Put your stake behind the truth
Stake
Stake into the voter pool to join the jury. Voting power scales with the square root of stake — a deliberately concave curve that blunts whales and keeps small jurors relevant.
Vote
When a dispute goes to a vote, you cast a sealed ballot on the claim — timelock-encrypted so nobody sees your vote, or anyone else’s, until the reveal.
Earn
Voters on the winning side of a settled verdict earn vote rewards plus a 15% share of the slashed bond. Voting against a settled verdict costs you stake — paid to those who got it right.
Participate as a Builder
Launch products with the OTER Oracle as your backbone
OTER settles natural-language questions about real-world events — weather, sports, elections, prices, anything universally verifiable. That makes it a natural resolution backbone for prediction markets, and it is exactly how Tahuna will use it.
The kind of question a market settles on OTER
“Did the incumbent win the 2026 election?”
The oracle can decide whether a claim qualifies for a payout, and release it once the answer survives the challenge window — no manual adjuster in the loop, no trusted committee deciding who gets paid.
The kind of claim a cover product checks
Is this smart-contract-hack claim valid?
The oracle can verify any statement — including facts about data on other networks — and hand the settled answer to any other dApp on Radix, with no bridges in the middle. One question, asked once, can settle many products.
The kind of fact another dApp waits on
Did the deposit this contract is waiting on actually happen?
A companion resolver verifies Pyth signed price updates entirely on-chain — signer quorum, emitter check, Merkle inclusion proof — and settles up/down candle markets deterministically, no dispute round needed. FX rates, commodities, and crypto prices feed straight into settlement.
The kind of data a price market needs
Did BTC/USD close this candle higher than it opened?
use scrypto::prelude::*; /// Long / Short Pair — tokenizes bounded exposure to a single OTER request./// The Radix-native take on an optimistic-oracle settlement contract: it PULLS/// the settled outcome inside its own atomic transaction. No oracle callback,/// no keeper push — settlement can't be front-run, and a broken consumer can/// never brick the oracle for everyone else.#[blueprint]mod long_short_pair { struct LongShortPair { resolver: Global<OterResolver>, // the OTER resolver for this market request_id: String, // the question both tokens track collateral: Vault, // backs every minted long+short pair long: ResourceManager, // mint / burn the LONG side short: ResourceManager, // mint / burn the SHORT side } impl LongShortPair { /// Redeem long and/or short tokens for collateral, once OTER has settled. pub fn settle(&mut self, long: Bucket, short: Bucket) -> Bucket { // Read the outcome in-transaction; reverts cleanly until it's settled. let outcome = self .resolver .get_settled_request_outcome(self.request_id.clone()); assert!(outcome != RequestOutcome::TooEarly, "request not settled yet"); let (l, s) = (long.amount(), short.amount()); self.long.burn(long); self.short.burn(short); // Outcome1 -> longs take all, Outcome0 -> shorts take all, else split. let payout = match outcome { RequestOutcome::Outcome1 => l, RequestOutcome::Outcome0 => s, _ => (l + s) / dec!(2), // DrawOrInvalid }; self.collateral.take(payout) } }}Datasheet
Protocol specification
rev. 2026-06 · defaults
Challenge window
4 h
default — configurable per question
Vote cycle
48 h
24 h sealed commit · 12 h reveal · 12 h to re-propose and dispute
Re-vote latency
Next cycle
an escalated question re-enters immediately — it never waits out an extra round
Consensus
70%
supermajority of revealed voting power
Quorum
EMA
eases in at 5% for the cold start, then grows and settles to real participation — no hand-set constant
Voting power
√stake
concave weighting against plutocratic capture
Losing bond
80/15/5
100% slashed — winner / correct voters / protocol
Batch size
25
questions per vote cycle
Failed round
3 tries
bonds refund, nobody slashed; then a time-boxed close as invalid — admin can expedite, never decide
Unstake cooldown
7 days
unstaking starts a timer before withdrawal
Settlement
Atomic
consumers pull the verdict in their own transaction — no callbacks
Outcome types
Yes/No/Draw
plus DAO governance votes — new outcome types plug in as adapters
Early ecosystem
Projects building on the OTER Oracle
Launch updates
Be first to know when OTER goes live.
Mainnet milestones, testnet access, and protocol deep-dives. One email when it matters — nothing else.