Timeline
| T+ | Event | Owner | Side-effect |
|---|---|---|---|
| 0 | Real-world event concludes | — | Match result available at source |
| ~15 min | Oracle posts proposeOutcome | oracle-service | PredictStreetOracle emits OutcomeProposed |
| 16 min | Challenge window opens | Contract | Book writes paused for this market |
| 16–136 min | Challenge can be lodged | Any user | 10 USDC bond required |
| 136 min | Challenge window closes | Contract | If no challenge → ready to finalise |
| 137 min | finalizeOutcome | oracle-service | ConditionalTokens.reportPayouts, redemption unlocked |
Step 1 — Oracle consensus
Step 2 — On-chain proposal
Step 3 — Challenge window
Step 4a — No challenge, finalise
ConditionalTokens.reportPayouts, unlocking
redemption.
Step 4b — Challenge, re-verify
What you observe as a partner
| Phase | Your REST | Your WebSocket |
|---|---|---|
Market OPEN | Normal trading | orderbook deltas |
| Event close | status: CLOSED | market.status → CLOSED |
| Proposal on-chain | → PENDING_RESOLUTION | market.status |
| Finalised | → RESOLVED | oracle.market_resolved |
| Voided | → VOIDED | oracle.market_resolved |
| Delayed | → DELAYED | market.status with reason |