Smart Contracts
Overview of all AGON contracts deployed on Base, grouped by module with addresses and explorer links.
AGON deploys a modular suite of smart contracts on Base chain. The architecture covers permissionless prediction markets, a CPMM AMM, AI oracle resolution, staking and fee distribution, arena competitions, and governance. All contracts are written in Solidity 0.8.28+ using Foundry, with OpenZeppelin 5.x for standard patterns (ERC-20, ERC-1155, ReentrancyGuard, Ownable). The test suite at packages/contracts/test/ covers 315+ unit and integration tests, with 17 end-to-end scenarios passing on Base Sepolia.
Networks
| Network | Chain ID | Status | Explorer |
|---|---|---|---|
| Base Sepolia (testnet) | 84532 | Active (V2.2) | sepolia.basescan.org |
| Base Mainnet | 8453 | TBD (per S93 roadmap) | basescan.org |
All addresses below are on Base Sepolia. Mainnet addresses will be published after the S93 mainnet deployment sprint.
Token
AgonToken is the AGON ERC-20 governance and reward token, implementing ERC20Votes for snapshot-safe on-chain voting and ERC20Permit for gasless approvals. Total supply is 1 billion AGON (18 decimals). VestingSchedule enforces linear and cliff vesting for team and advisor allocations with owner-revocable schedules.
| Contract | Address | Explorer |
|---|---|---|
| AgonToken | 0x97Bf82DACf44C19c272af228166B920928CEE4f0 | View on BaseScan |
| VestingSchedule | 0x2B8B8a26A1Cdea332c25662Fe90923A584B3ca4a | View on BaseScan |
| VeAGON | Not yet deployed | -- |
| TokenDistributor | Not yet deployed | -- |
Markets
MarketFactory is the permissionless entry point: anyone can create a binary prediction market by staking USDC. It routes resolution to one of several resolver backends (admin, ChainlinkResolver, OracleDAO, PolymarketMirror). ConditionalTokens is the ERC-1155 contract that mints YES/NO outcome tokens and runs the constant-product market maker (CPMM AMM) for each market, handling split, merge, redeem, buy, sell, and LP operations.
| Contract | Address | Explorer |
|---|---|---|
| MarketFactory | 0xC8Cb6Bffc18Fe8A97c974A2082e3431c31dc38A6 | View on BaseScan |
| ConditionalTokens | 0x8F3c5371db89407dFeC3935440973Fa3939156f3 | View on BaseScan |
Oracle and Resolution
OracleDAO implements Schelling-point dispute resolution where staked validators propose, challenge, and vote on market outcomes. ChainlinkResolver auto-resolves price markets from Chainlink data feeds with configurable thresholds. PolymarketMirror maps Polymarket condition IDs to AGON market IDs and mirrors their resolution via cross-chain reads.
| Contract | Address | Explorer |
|---|---|---|
| OracleDAO | 0x3827b4c1C0DF77904E2137516afD01E7c26F2eBd | View on BaseScan |
| ChainlinkResolver | 0x0a470D826802c7991D7a72D3EB5a93B3e6BC4212 | View on BaseScan |
| PolymarketMirror | 0xab85d893d91f56A51829d0b7e9bA156919d83a3a | View on BaseScan |
| AIOracleHub | Not yet deployed | -- |
| GenesisAttestationRegistry | Not yet deployed | -- |
Trading
HybridExchange routes orders between the on-chain CLOB (limit orders) and the CPMM AMM, with maker rebate tiers and LP sync. ParimutuelPool supports multi-outcome parimutuel betting with a close window and auto-invalidation. BetQueue handles deferred large-order overflow with a 5% pool cap and permissionless crank execution.
| Contract | Address | Explorer |
|---|---|---|
| HybridExchange | 0x49c6e8f4013a232646aCf11c231720f751168De8 | View on BaseScan |
| ParimutuelPool | 0x18975cb2c89b5A1c6D10c4404f7cBa56c13391bB | View on BaseScan |
| BetQueue | 0x47A40efad92821ee2dB6eb5c13c27D5544d0dFEe | View on BaseScan |
| ConcentratedPool | Not yet deployed | -- |
Rewards
FeeDistributor receives all trading fees and splits them: 20% to BuybackBurn (USDC swapped to AGON via Aerodrome and burned), 50% to ReputationStaking (USDC yield distributed to AGON stakers by tier), and 30% to the Treasury (Founders Safe). ArenaRewards distributes budgeted AGON for tournament prizes, daily check-in bonuses, oracle bonuses, and season rewards via EIP-712 signed claims. LpStaking runs Masterchef-style AGON emissions to liquidity providers and HybridExchange makers.
| Contract | Address | Explorer |
|---|---|---|
| FeeDistributor | 0x53c0D754A2f09cF35A74889B4555D57852f1d419 | View on BaseScan |
| BuybackBurn | 0xc2ECB2905E90308c6fAc98B1B80a5388079C503A | View on BaseScan |
| ReputationStaking | 0x53DD0fe2C1E01ec785a9D74eF5bEC2a69703DD3d | View on BaseScan |
| ArenaRewards | 0xBe2d8A5DB34eAfFD02163888AF356A8fa8933d54 | View on BaseScan |
| LpStaking | 0xC24503B63BCF197EBc9d23Bd63D9254D4d105f24 | View on BaseScan |
Governance
GovernanceDAO enables on-chain proposal creation, AGON-weighted voting, and automatic scheduling via the TimelockController. TimelockController enforces a 48-hour delay on all admin operations, protecting against governance attacks by giving the community time to react.
| Contract | Address | Explorer |
|---|---|---|
| GovernanceDAO | 0x6365DDc1edf6e52F094080D24468B9543361848f | View on BaseScan |
| TimelockController | 0xDcB7d35751dCf447cFDf4D2defCf7838449ca60b | View on BaseScan |
Arenas
MarketArena powers 1v1 head-to-head duels where two players take opposing sides on a single market with a protocol fee. FootballDuel is a Chainlink-fed sports duel contract. TeamBattle enables 3v3 team prediction battles scored by sum-of-distances to a Chainlink scalar. PricePool runs "closest to the pin" price prediction pools with top-3 payouts. Parlay allows 3-to-10-pick parlay bets settled via Chainlink feeds and MarketFactory resolution.
| Contract | Address | Explorer |
|---|---|---|
| MarketArena | 0xE206cdb45E1816E14E9b71B218c5E5B924D78C39 | View on BaseScan |
| TournamentEscrow | 0x226A655bEa2F2139093DacB738F5aC5B673dfF39 | View on BaseScan |
| FootballDuel | 0x9852C0f1B0A0DE50CC35951252bDA499cD0aEc77 | View on BaseScan |
| TeamBattle | 0xc9c438d8673f401a6c416d2d7553351630ebff4f | View on BaseScan |
| PricePool | 0x38d27180c1109f3293af5ce3cccc054dbd795adf | View on BaseScan |
| Parlay | 0x361b73e37d7B89A74D7C3E1d180F7F69F3aBc0eA | View on BaseScan |
| BracketTournament | Not yet deployed | -- |
Streaming
The streaming module enables on-chain creator identity, curation, auctions, and oracle rewards for AGON streamers. These contracts have source code in the repository but are not yet deployed to Base Sepolia.
| Contract | Address | Explorer |
|---|---|---|
| StreamerRegistry | Not yet deployed | -- |
| StreamCurationDAO | Not yet deployed | -- |
| StreamSlotAuction | Not yet deployed | -- |
| StreamerOracleRewards | Not yet deployed | -- |
Infrastructure
TokenRegistry maintains the allowlist of collateral tokens (USDC approved with a 100 USDC minimum stake). TradingMarket runs on-chain linear bonding curves for entity staking. TradeAuctionEscrow and TradeIntentRegistry power the Chainlink Functions-based trade auction settlement pipeline. CrossChainRouter handles CCTP and LayerZero V2 bridging between Base and Polygon.
| Contract | Address | Explorer |
|---|---|---|
| TokenRegistry | 0x34fc017586C17295895F847C36F52f27D583e723 | View on BaseScan |
| TradingMarket | 0x5bEe442c97a7D06Ae2f0288DC7bBf9ca7E59c728 | View on BaseScan |
| TradeAuctionEscrow | 0xC0920969320B1D5483462eEF14C1A6F1359c44c3 | View on BaseScan |
| TradeIntentRegistry | 0x3ef4680F82b775ba4eF7376Ab0F4A69f68D0D0EE | View on BaseScan |
| CrossChainRouter | Not yet deployed | -- |
Ownership and access control
AGON uses a layered ownership model to balance iteration speed on testnet with mainnet security guarantees.
MarketFactory is owned by the deployer EOA on Base Sepolia (deliberate testnet change to unblock iteration). On mainnet, ownership will transfer to the TimelockController with a 48-hour delay on all admin operations (market type changes, fee updates, resolver whitelist modifications).
Rewards stack (FeeDistributor, BuybackBurn, ReputationStaking, ArenaRewards, LpStaking, ParimutuelPool, HybridExchange, and AgonToken supply management) is owned by the Founders Safe (0x14cb3C3D...eC9), a 2-of-2 multisig. Admin operations are executed through Safe, not direct EOA transactions.
TokenRegistry and ChainlinkResolver are owned by the deployer EOA (testnet only). Mainnet will transfer to the TimelockController or Founders Safe.
GovernanceDAO schedules proposals through TimelockController. The timelock enforces minDelay = 172800s (48 hours) on all governance-executed actions.
Source code
The contract source code lives in packages/contracts/src/ within the AGON monorepo. Public repository link: TBD (pending open-source release).
The canonical deployment address registry is maintained at packages/contracts/deployments.json.
Phase 2 deep-dives
Market Factory
Market creation flow, resolver routing, fee configuration, and admin operations.
Oracle Contracts
OracleDAO Schelling-point resolution, ChainlinkResolver auto-resolution, and PolymarketMirror cross-chain mirroring.
Trading Contracts
HybridExchange CLOB+AMM routing, ParimutuelPool multi-outcome betting, and ConcentratedPool liquidity.
Rewards Contracts
FeeDistributor split logic, BuybackBurn mechanics, ReputationStaking tiers, and ArenaRewards claim flow.
Security
Audit reports, security patterns, reentrancy protections, and access control matrix.
