Devnet β Mainnet
SportsPerp has been live on Solana devnet since early 2026. Mainnet is targeted before June 12, 2026 β the kickoff of the 2026 FIFA World Cup. This page documents whatβs done, what remains, and the order of operations.
Current state (as of 2026-06)
| Component | Status |
|---|---|
| On-chain program | Deployed β 38 base instructions (41 with devnet migration), ~940 KB, 8 PDA types, 59 error codes, 23 #[event] structs |
| Markets live | 68 (20 teams + 48 players) |
| OBV engine | Running β 5-min crank + live overlay on the partnerβs live event feed + Python obv-engine sidecar (XGBoost PV-GF/PV-GA) |
| Oracle pusher | Deployed β 2-of-N multi-source consensus (multi-oracle.mjs) live on devnet; mainnet cutover with a fully independent second feed still pending |
| Trigger keeper + funding crank | Deployed |
| Liquidation bot | Deployed |
| Monitoring | Deployed β health, on-chain, and solvency checks running; operator alert delivery is being finalized ahead of mainnet |
| Trade-history indexer | Live since 2026-05-11 (decoder wired; Anchor EventParser + BorshCoder against the regenerated IDL). Exposed publicly at https://api.sportsperp.xyz/indexer/* via the reverse proxy; frontend Trade History panel ships on /portfolio |
| LiveβREST ID bridge | Verified in production β V2 translation active; mappings validated by a periodic verification job during matchdays |
| Insurance fund | Live β 20 K USDC, 50 K max exposure, 10 K target |
| Liquidity pool | Live β singleton global pool (replaces per-market vaults) |
| SDK | Published β @sportsperp/sdk@0.2.0 on npm; 0.3.0 (B5 + SP-007 + SP-013 surface) staged on master, not yet published |
| Frontend | Deployed on managed hosting β www.sportsperp.xyz (apex sportsperp.xyz β www; reverse proxy at api.sportsperp.xyz) |
| Self-audit | Complete β 17 findings (1 Critical + 5 High, all fixed), plus Apr 2026 fix sweep (S4-01 LimitOpen expiry + 5 additional + 2 bonus) |
| External audit | Pending β engagement with two Solana-specialist firms targeted before mainnet |
Detail on every item is tracked in the internal product roadmap (PRD Β§14).
What βmainnet-readyβ means
Eight gates must close before mainnet (Switchboard PullFeeds is deferred post-launch β see βShips laterβ below):
1. External security audit (engagement pending)
Two Solana-specialist audit firms will be engaged before mainnet β names published here once engagement letters are signed. Scope: full on-chain program, oracle pipeline, SDK math parity, liquidation cascade. The mainnet date is gated on a clean final report, with remediation + re-review windows ahead of deploy.
2. Multi-source oracle deployed
A multi-source consensus pusher is deployed and live on devnet, replacing the single-source oracle with 2-of-N weighted-median consensus (24h soak-validated 2026-06-04). What remains is for mainnet: a fully independent second data feed β today both consensus legs are SportsPerp-derived β and the mainnet program deploy.
3. Admin keys β multi-sig + timelock
The hot oracle_authority key β which gates update_oracle and pause_market β was already separated from the admin in the B5 devnet cutover, so the key that publishes prices and can halt a market can no longer move funds. The admin keypair is still a single key today. For mainnet, admin operations (update_market_params, configure_insurance, unpause_market, treasury withdrawals, etc.) move behind a 3-of-5 multi-sig with a 48-hour timelock on parameter-changing instructions. The upgrade authority moves to the same multi-sig.
4. Insurance fund mainnet seeding
The 20K USDC devnet fund will scale to a mainnet-appropriate size, seeded from protocol treasury. Target: $250Kβ$500K at launch, sufficient to absorb normal Layer 2 flow without ADL risk during the initial low-liquidity window.
5. Mainnet USDC + roster migration
All 68 markets will be re-initialized on mainnet with the mainnet USDC mint (EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v). Insurance fund, oracle feeds, all PDAs β fresh. Devnet state does not carry over by design: mainnet is a clean slate for real capital.
6. Points program go-live
Points Program wires up at the same moment as mainnet. First trading activity earns points.
7. Frontend mainnet cutover
The frontend auto-switches when it detects the mainnet program ID. Users connect their Phantom / Solflare / Backpack wallets, approve mainnet USDC, trade.
8. Operational runbooks
Every admin operation (emergency pause, market initialization, sunset, insurance top-up) has a runbook. The on-call rotation is established. Telegram alerts point to the oncall channel.
Ships later (post-launch, not a mainnet gate)
Switchboard PullFeed integration. An optional TEE-backed third source layered on top of the 2-of-N consensus for hardware-attested redundancy. The mainnet oracle authority is the SportsPerp multi-source 2-of-N consensus (gate 2 above), not Switchboard. Adding it is a dedicated build/audit project β the Switchboard on-demand crate plus on-chain feed-account handling β sequenced after a genuinely independent second data source lands.
Target sequencing
Now (2026-04) ββββββββββββββββββββββββββββββββββββββββββ
β β
ββ External audit engagement (in flight) β
ββ Multi-source oracle 2nd deploy β 4-6
ββ Admin CLI + operational tooling β weeks
ββ Multi-sig + timelock setup β
β β
βββΊ 2026-05 (late May): Audit report received ββββββββ€
β β
ββ Remediation window (high-sev findings) β 1-2
ββ Re-review of fixes β weeks
β β
βββΊ 2026-06 (early June): Mainnet deploy βββββββββ€
β β
ββ Insurance fund seeded ($250Kβ$500K) β 1
ββ All 68 markets reinitialized β week
ββ Points program activates β
ββ Frontend mainnet cutover β
β β
βββΊ 2026-06-12: World Cup kickoff βββββββββββββThe window is tight but feasible. The biggest schedule risks are external-audit findings requiring structural changes (have mitigations drafted for likely scenarios) and the remaining multi-source-oracle work for mainnet β a fully independent second data feed plus the cutover onto mainnet infrastructure (the 2-of-N pusher itself is already live on devnet).
What ships later
These are post-mainnet additions, not mainnet blockers:
- Limit order book (currently trigger orders only)
- Cross-market portfolio margin
- Sub-accounts (multiple positions per trader per market)
- Mobile app (PWA today; native iOS/Android later)
- Keeper economic incentives tuning β live reward data will inform rebalancing
- Admin CLI consolidation
- Live match processor operational hardening β extended stress testing under sustained matchday load
What deliberately doesnβt ship
A few features weβve ruled out for v1, each for a specific reason:
- More leagues / sports. La Liga, Bundesliga, or NFL markets could launch, but doubling the market count before mainnet tests of EPL at scale would dilute focus. See Expansion.
- Token launch at mainnet. $SPERP launches post-mainnet. See $SPERP β Overview for the rationale.
- Non-USDC collateral. SOL, other stablecoins, LP tokens are plausible; none are v1.
- Leveraged staking or yield wrappers on $SPERP. Post-TGE conversation at earliest.
Discipline on the βnoβ list is what makes the timeline credible.
Devnet continues
Devnet stays live throughout mainnet. Itβs the canonical testing environment for SDK consumers, keeper development, and any protocol changes. Mainnet does not replace devnet β they coexist.
Further reading
- World Cup 2026 β why the launch date matters.
- Expansion β what ships after mainnet.
- Security β Audits β the audit process and status.
- PRD Β§14 Roadmap β canonical internal phase tracker.