Presage — Arc Mainnet Operational Architecture

Presage — Arc Mainnet Operational Architecture An architecture diagram generated by Archify. OpenWeather API · Informational only · Architecture component · not wired on-chain OpenWeather API Informational only not wired on-chain Owner / Dev Wallet · Manual operator (EOA) · Owner-operated (manual, no automation) Owner / Dev Wallet Manual operator (EOA) /admin Panel · Admin.tsx + useAdminMarkets · Owner-operated (manual, no automation) /admin Panel Admin.tsx + useAdminMarkets Hardhat CLI Scripts · scripts/*.ts against Arc Mainnet · Owner-operated (manual, no automation) Hardhat CLI Scripts scripts/*.ts against Arc Mainnet MarketFactory · Deployment-time only · Arc Mainnet contracts · nextMarketId unused on mainnet MarketFactory Deployment-time only nextMarketId unused on mainnet WeatherMarket · Funds pool + market logic · Arc Mainnet contracts · core market logic + USDC custody WeatherMarket Funds pool + market logic core market logic + USDC custody AdminOracle · Settlement forwarding layer · Arc Mainnet contracts · onlyOwner → forwards to WeatherMarket AdminOracle Settlement forwarding layer onlyOwner → forwards to WeatherMarket Presage Frontend · Bettor-facing app · Bettor-facing Presage Frontend Bettor-facing app Bettor · Wallet-connected user · Bettor-facing Bettor Wallet-connected user Arc Mainnet USDC · Funds rail · Architecture component Arc Mainnet USDC Funds rail owner manually checks temp operates runs (Hardhat) createMarket / lockMarket / withdrawFees submitResult — manual trigger only submitResult(marketId, finalTemp) — onlyOracle deploys WeatherMarket + AdminOracle pair (one-time) connects wallet placeBet(marketId, bucket, amount) claimWinnings(marketId) claimRefund(marketId) — timeout escape USDC custody & transfers pays / receives in Owner-operated (manual, no automation) Arc Mainnet contracts Bettor-facing

No automated oracle

  • • No scheduler, cron, or bot triggers settlement
  • • n8n workflow archived — see README
  • • Owner checks weather, then submits via /admin or CLI
  • • Both channels can call either contract; typical call shown

On-chain roles

  • • WeatherMarket = funds pool + market logic
  • • AdminOracle = settlement forwarding, owner-authorized only
  • • MarketFactory = deployment utility, idle after initial deploy

Bettor flow

  • • placeBet with Arc Mainnet USDC
  • • claimWinnings after manual settlement
  • • claimRefund if a locked market times out unsettled

External dependencies

  • • OpenWeather API — informational only, not wired on-chain
  • • Arc Mainnet USDC — the funds rail for all value transfer