Skip to content

Supported assets and integrations

The registry lives in config/supported-assets.json. Every address below was verified by reading the account on the named network on 2026-10-19.

Mainnet-beta

AssetMintReference (Pyth sponsored account)
SOL (wrapped)So111111111111111111111111111111111111111127UVimffxr9ow1uXYxsr4LHAcV58mLzhmwaeKvJ1pjLiE (feed ef0d…b56d)
USDCEPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1vDpw1EAVrSB1ibxiDQyTAW6Zip3J4Btk2x4SgApQCeFbX (feed eaa0…c94a)

Venue: Orca Whirlpool SOL/USDC, tick spacing 4, fee 0.04%, pool Czfq3xZZDmsdGdUyrNLtRhGc47cXcZtLG4crryfu44zE.

Observed update cadence of the sponsored feeds on mainnet: about every 50 seconds (sampled over three minutes). Default policy freshness on mainnet: 180 seconds.

Devnet

AssetMintReference
SOL (wrapped)So111111111111111111111111111111111111111127UVimffxr9ow1uXYxsr4LHAcV58mLzhmwaeKvJ1pjLiE (same sponsored account exists on devnet)
devUSDC (Orca test token)BRjpCHtyQLNCo8gqRUr8jtdAj5AjPYQaoqbvcZiHok1knone — a test token with no USD reference

Venue: Orca Whirlpool SOL/devUSDC, tick spacing 64, fee 0.2%, pool 3KBZiL2g8C7tiJ32hTv5v3KM7aK9htpqTw4cTXz1HvPt. At the time of writing the pool priced SOL near 22 devUSDC while Pyth priced SOL above 100 USD, so reference-price protection is unsupported for this market: a devnet policy must switch the protection off (shown explicitly) to trade this pair. Devnet sponsored feeds update less often (SOL about every two minutes, USDC rarely), hence the 30-minute default freshness.

Local validator

The on-chain test suite (onchain/) runs solana-test-validator with the Orca Whirlpool program, the mainnet SOL/USDC pool, its vaults, 17 tick arrays around the current tick and the two Pyth accounts cloned from mainnet-beta. The production adapter path is therefore tested against the real program bytecode and real pool state.

Programs

ProgramIdRole
Ohge Guard3Qxczmd9oWJre9ZERhkBjXjCdkQueuCoXQALivnzkM45 (deployed on devnet 2026-10-20; also the local test keypair; no mainnet deployment)Vault and policy enforcement
Orca WhirlpoolwhirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCcExecution venue (direct swap, SPL Token only)
pyth-solana-receiverrec5EKMGg6MxZYaMdyBfgwp4d5rB9T1VQH5pJv5LtFJOwner of the price-update accounts the guard reads

Aggregators

Routing aggregators are not used for execution. The guard never signs or forwards a serialized transaction from a third party. Quotes come from the Orca SDK (server side) with a spot-price fallback; the chain enforces the minimum output either way.