
contracts/script/Deploy.s.sol (packages/abis/deployments/<chainId>.json, which every off-chain service reads; see ABIs and the chain registry). Arc mainnet (5042) is in the chain registry but has no deployment yet.
Synthetic currencies are named per deployment: Robinhood Chain uses the
w prefix (wINR, “Windrose Indian Rupee”); both testnets use the older ac prefix (acINR, “Arc Indian Rupee”). Names and symbols are immutable once deployed. Underwriter share tokens are named <name> Underwriter with the symbol uw-<symbol>.Chains at a glance
| Chain | Id | Dollar | Gas | Oracle | Uniswap v4 |
|---|---|---|---|---|---|
| Robinhood Chain | 4663 | USDG (Paxos), 6 decimals | ETH | KeeperFxOracle | official (shared PoolManager) |
| Robinhood testnet | 46630 | test USDG (mintable mock), 6 decimals | ETH | KeeperFxOracle | launchpad’s own |
| Arc testnet | 5042002 | USDC (native, 6-decimal ERC-20 view), EURC for EUR | USDC | KeeperFxOracle (PythFxOracle deployed, unused) | launchpad’s own |
| Arc | 5042 | USDC | USDC | not deployed | official |
"USD" as tier 1 with the dollar as quote asset, and the oracle returns 1e18 for it.
Robinhood Chain (4663)
Production. The public site windrose.market defaults to this chain. RPChttps://rpc.mainnet.chain.robinhood.com, explorer robinhoodchain.blockscout.com, gas paid in ETH.
| Contract | Address |
|---|---|
| CurrencyRegistry | 0xc3A0ac0eF92392A37287AfE99D401679BA00988a |
| LaunchFactory | 0x3057566F58742B113Db615b2cb0E1085E766Ac54 |
| Router | 0xae4E359895B7a232eEA55238256dcbDa9851c1CF |
| BondingCurve implementation | 0x0470BD70BD89C67b5C8959799e3174Bf2C6388a5 |
| LiquidityLocker | 0xD8ED4424B402181fa7D224Deb187191E1eA3Bf77 |
| KeeperFxOracle (registry oracle) | 0x213cC7E5268563a05dbB8C7eF11680E595c7e63e |
Dollar USDG (usdc in the contracts) | 0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168 |
| Permit2 | 0x000000000022D473030F116dDEE9F6B43aC78BA3 |
| Uniswap v4 PoolManager | 0x8366a39CC670B4001A1121B8F6A443A643e40951 |
| Uniswap v4 PositionManager | 0x58daec3116aae6D93017bAAea7749052E8a04fA7 |
| Uniswap v4 StateView | 0xF3334192D15450CdD385c8B70e03f9A6bD9E673b |
| Uniswap v4 Quoter | 0x8Dc178eFB8111BB0973Dd9d722ebeFF267c98F94 |
| Deployer (owner of registry, factory, locker, oracle and vaults) | 0x4f49EdFdBbc1c9bb8F42FB7094F7219DE90224C7 |
| Deployment block (indexer start) | 65830670 |
60 synthetic currencies on Robinhood Chain (wXXX tokens and their vaults)
60 synthetic currencies on Robinhood Chain (wXXX tokens and their vaults)
Robinhood testnet (46630)
The dollar is a mintable test USDG deployed by the launchpad (anyone can callmint(address,uint256)); the Uniswap v4 contracts are the launchpad’s own deployment. RPC https://rpc.testnet.chain.robinhood.com, explorer explorer.testnet.chain.robinhood.com, gas paid in ETH (faucet: https://faucet.quicknode.com/robinhood/testnet).
| Contract | Address |
|---|---|
| CurrencyRegistry | 0x48b847958B47927129525b2B14694560834F1A8d |
| LaunchFactory | 0x9AAA140604d4dd69Fc40AD2E6991CA3ca6D1A135 |
| Router | 0x503997BbF02881AF9C3e3672117622b2Ff72f306 |
| BondingCurve implementation | 0x18a3fb5cd55CA8C1b22DD0FaFfcd894163435c86 |
| LiquidityLocker | 0x01245DcaE263823a10f5418c5A8b20B5Be756CA5 |
| KeeperFxOracle (registry oracle) | 0xc55EDF2420d148C11f20Ce6e6EdC40FB326Bbd2D |
Dollar USDG (usdc in the contracts) | 0xd594d4A6bFD57Ba907cd5fB4Fa9bDc57C138738f |
| Permit2 | 0x000000000022D473030F116dDEE9F6B43aC78BA3 |
| Uniswap v4 PoolManager | 0xfd260C4C69Feb5101AB2858855BDEA25477897EB |
| Uniswap v4 PositionManager | 0x7e3875c1474cA90Fd79a36D5918F203783a90F36 |
| Uniswap v4 StateView | 0x0be28A4d7355bB7244298380eebDBbee4CDD99b6 |
| Uniswap v4 Quoter | 0xB3BFFc6E2ba21A90D9D452f7ef01bb1AE52724B3 |
| Deployer (owner of registry, factory, locker, oracle and vaults) | 0xb816cb034521053503e80b780951b6Fbb480a542 |
60 synthetic currencies on Robinhood testnet (acXXX tokens and their vaults)
60 synthetic currencies on Robinhood testnet (acXXX tokens and their vaults)
Arc testnet (5042002)
Gas is USDC. EURC is registered as the EUR quote asset. The Uniswap v4 contracts are the launchpad’s own deployment (Uniswap has no official Arc testnet deployment). APythFxOracle is deployed but the registry points at the keeper oracle. RPC https://rpc.testnet.arc.io, explorer explorer.testnet.arc.io, gas paid in USDC (faucet: https://faucet.circle.com).
60 synthetic currencies on Arc testnet (acXXX tokens and their vaults)
60 synthetic currencies on Arc testnet (acXXX tokens and their vaults)
Reading addresses programmatically
Off-chain code should never hard-code these tables.@launchpad/abis ships the same JSON:
import type { Deployment } from "@launchpad/abis";
import robinhood from "@launchpad/abis/deployments/4663.json";
const d = robinhood as Deployment;
d.factory; // LaunchFactory
d.currencies.INR.vault; // FxVault of wINR
d.currencies.INR.synth; // wINR token
https://windrose.market/api/deployment?chainId=4663 (see the HTTP endpoints), and the CurrencyRegistry is the on-chain source of truth: allCodes() lists every registered code and get(code) returns its quote asset and vault.