Agora Docs

Contracts

Robinhood Chain testnet, chain ID 46630. Mainnet is not deployed.

Contract Address
AgoraVault 0x62FE0Dd6c79Fd5c3BD71324a9381A5dA7bCF6343
AgoraOracle 0xDf639c3Da24F570B343e30501c423Aac4078A2b7
AgoraPerps 0xDC58a5638dc9c64473D61DB0E065EE2Df6590184
AgoraLend 0xC253bD503Bfb6bB105EFecBDA26712d185d9B0e8
AgoraGacha 0x88217977C7B290Ff74B663074CA9C52DecedAe8f
MockUSDG 0x90426f3b86d32e662b758b2b3E9902aFA77373c1

The testnet deployment settles in a mintable test token, not real USDG. Testnet balances are valueless.

Upgradeability

Non-upgradeable. No proxy, no delegatecall, no admin key that can change contract logic after deployment. Ownership is Ownable2Step, so a transfer must be accepted by the incoming owner; production deploys hand ownership to a Safe.

The owner can configure market parameters within hard caps, pause draws, set royalties up to 10%, and rotate the treasury. The owner cannot mint tokens without a signed voucher, alter a settled position, change a committed draw sequence, or move a user's balance.

Oracle

Prices are posted by an N-of-M signer quorum. Each post carries a market id, price and timestamp, signed EIP-712 by each signer. The contract requires signatures from distinct signers in sorted order so the same key cannot be counted twice, rejects a price deviating from the previous one by more than the market's deviation cap, rejects posts closer together than the market's minimum interval measured on wall-clock time, and rejects timestamps more than 60 seconds in the future.

A single compromised signer cannot move a price. A quorum can, within the deviation cap and rate limit.

Audit

Not independently audited. The contracts carry a unit, fuzz and invariant test suite and an adversarial review was run against them, but no third-party audit has been performed.