Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.auora.gg/llms.txt

Use this file to discover all available pages before exploring further.

Every round settles against a cryptographically signed result from an independent oracle. The smart contract verifies the signature before paying anyone. There is no manual override.

Asset prices — Pyth Network

Up/down markets (crypto, metals, stocks) settle with Pyth Network price feeds.
  • Publishers are the same exchanges and trading firms that originate the prices.
  • Prices are signed by the Wormhole guardian set — the contract verifies the signature on-chain.
  • Each market has a confidence gate (maxConfBps). If the oracle’s spread is too wide (e.g., metals during a holiday weekend), settlement is delayed automatically.
  • The operator’s role is liveness only — carry signed bytes from Pyth to the contract. Cannot fabricate or substitute prices.

Real-world events — UMA / ResolverAdapter

Sports, esports, and event-based game modes (playoffs, parlays, rolling pot) settle through one of two resolvers: ResolverAdapter (optimistic oracle with challenge window):
  1. Proposer submits the outcome + posts a bond.
  2. A challenge window runs (minimum 1 hour). Anyone can dispute by posting a counter-bond.
  3. If undisputed, outcome finalizes automatically. If disputed, an arbiter resolves it.
UMA Optimistic Oracle V3 (decentralized dispute resolution):
  1. Same propose-and-challenge flow, but disputes go to UMA’s DVM (decentralized token-holder vote) instead of a single arbiter.
  2. Bond currency is ERC-20 (typically USDC).
Both resolvers expose the same interface (getStatus, getFinalOutcome), so game contracts work with either one.

The operator cannot

  • Substitute a different price or outcome.
  • Forge an oracle signature.
  • Settle at a timestamp the oracle did not sign.
  • Bypass the confidence gate or challenge window.
  • Change which oracle the contract trusts (immutable at deploy).