Files
proxmox/docs/11-references/DEPLOYER_TO_PUBLIC_STABLECOIN_ROUTES.md
defiQUG 7ac74f432b chore: sync docs, config schemas, scripts, and meta task alignment
- Institutional / JVMTM / reserve-provenance / GRU transport + standards JSON
- Validation and verify scripts (Blockscout labels, x402, GRU preflight, P1 local path)
- Wormhole wiring in AGENTS, MCP_SETUP, MASTER_INDEX, 04-configuration README
- Meta docs, integration gaps, live verification log, architecture updates
- CI validate-config workflow updates

Operator/LAN items, submodule working trees, and public token-aggregation edge
routes remain follow-up (see TODOS_CONSOLIDATED P1).

Made-with: Cursor
2026-03-31 22:31:39 -07:00

14 KiB

Routes: Deployer Wallet → Public-Network Stablecoins

Historical note (2026-03-26): this route map originally captured a pre-correction PMM phase. The current canonical Chain 138 PMM stack is DODOPMMIntegration=0x5BDc62f1ae7D630c37A8B363a1d49845356Ee72d and DODOPMMProvider=0x5CAe6Ce155b7f08D3a956F5Dc82fC9945f29B381.

Last Updated: 2026-03-31
Purpose: Single reference for all possible routes from the deployer wallet as source (minted/held tokens on all blockchains) to public-network stablecoins (USDT, USDC, DAI, AUSDT, etc.) on each chain. Uses Master Documentation and verifiable sources only.

Deployer address (source): 0x4A666F96fC8764181194447A7dFdb7d471b301C8

Sources: MASTER_INDEX, EXPLORER_TOKEN_LIST_CROSSCHECK §5/§8, CONTRACT_ADDRESSES_REFERENCE, ADDRESS_MATRIX_AND_STATUS, DEPLOYED_TOKENS_BRIDGES_LPS_AND_ROUTING_STATUS, TOKENS_AND_NETWORKS_MINTABLE_TO_DEPLOYER, DEPLOYER_WALLET_FUNDING_PLAN_PMM_POOLS, LIQUIDITY_POOLS_MASTER_MAP, 07-ccip/NON_PREFUNDED_AVAX_MIGRATION_RUNBOOK.


1. Deployer-held / mintable tokens by chain

Tokens the deployer can hold as source (mintable to deployer on 138/Cronos, or acquirable on other chains):

Chain ID Chain name Source tokens (deployer as holder)
138 DeFi Oracle (SMOM-DBIS-138) cUSDT, cUSDC, cEURC, cEURT, cGBPC, cGBPT, cAUDC, cJPYC, cCHFC, cCADC, cXAUC, cXAUT, WETH, WETH10, LINK, native ETH
1 Ethereum Mainnet WETH (via CCIP from 138), USDT, USDC, DAI (acquire)
651940 ALL Mainnet (Alltra) AUSDT, USDC (AUSDC), WETH, WALL (via AlltraAdapter from 138 or acquire)
25 Cronos USDW, EURW, GBPW, AUDW, JPYW, CHFW, CADW (D-WIN W; mintable if MINTER_ROLE), WETH9, WETH10, LINK
56 BSC cWUSDT, cWUSDC (deployed; broader routing partial), USDT, USDC (acquire)
100 Gnosis cW* (deployed; broader routing partial), xDAI, USDC (acquire)
137 Polygon cW* (deployed; broader routing partial), USDT, USDC (acquire)
10 Optimism cW* (deployed; broader routing partial), USDT, USDC (acquire)
42161 Arbitrum One cW* (deployed; broader routing partial), USDT, USDC (acquire)
8453 Base cW* (deployed; broader routing partial), USDT, USDC (acquire)
43114 Avalanche C-Chain cW* (deployed; non-prefunded cUSDT -> cWUSDT corridor proven), USDT, USDC (acquire)
42220 Celo (CCIP config 2026-03-04); USDC, cEUR (acquire)
1111 Wemix (pending 0.4 WEMIX); WEMIX, USDT/USDC (acquire)

2. Public-network stablecoins (destination) by chain

Chain ID Chain name Public stablecoins (destination)
138 DeFi Oracle cUSDT, cUSDC (compliant stables; no native USDT/USDC contract on 138)
1 Ethereum USDT 0xdAC17F958D2ee523a2206206994597C13D831ec7, USDC 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48, DAI 0x6B175474E89094C44Da98b954EedeAC495271d0F
651940 ALL Mainnet AUSDT 0x015B1897Ed5279930bC2Be46F661894d219292A6, USDC (AUSDC) 0xa95EeD79f84E6A0151eaEb9d441F9Ffd50e8e881
25 Cronos USDW, EURW, GBPW, etc. (D-WIN W); native CRO; USDT/USDC if bridged
56 BSC USDT, USDC, BUSD (native)
100 Gnosis USDC, xDAI
137 Polygon USDT, USDC (native)
10 Optimism USDT, USDC (native)
42161 Arbitrum USDT, USDC (native)
8453 Base USDT, USDC (native)
43114 Avalanche USDT, USDC (native)
42220 Celo USDC, cEUR
1111 Wemix USDT, USDC (if listed)

3. Routes: deployer source token → public stablecoin

3.1 Chain 138 (same-chain)

From (deployer holds) To (public stable on 138) Route Status
cUSDT cUSDC DODOPMMIntegration / pool 0xff8d3b8fDF7B112759F076B69f4271D4209C0849 Live
cUSDC cUSDT Same pool Live
cUSDT “USDT (official)” Pool 0x6fc60DEDc92a2047062294488539992710b99D71 is the funded intended canonical route; official USDT mirror is deployed on 138 Live
cUSDC “USDC (official)” Pool 0x9f74Be42725f2Aa072a9E0CdCce0E7203C510263 exists; official USDC mirror is deployed on 138 Live

Note: On 138 the only “public” stablecoin destinations that exist are cUSDT and cUSDC. There is no native USDT/USDC contract on 138.


3.2 Chain 138 → Ethereum Mainnet (1)

Prerequisite: The route 138 WETH → CCIP → Ethereum requires that the Mainnet bridge be funded first. CCIPRelayBridge on chain 1 (0xF9A32F37099c582D28b4dE7Fca6eaC1e5259f939) releases WETH to recipients when relay messages are delivered; it does not mint WETH. So Mainnet WETH must be sent to CCIPRelayBridge (or the relay/release mechanism) before 138→Mainnet transfers can complete. Flow: fund bridge with Mainnet WETH → then 138 WETH can be locked/sent via CCIP → relay delivers message → bridge releases pre-funded Mainnet WETH to recipient.

From (138, deployer holds) To (Mainnet public stable) Route Status
WETH9 WETH (then DEX) → USDT / USDC / DAI CCIP WETH9 bridge 0xcacfd227A040002e49e2e01626363071324f820a → Mainnet → swap via native DEX Live (bridge); requires Mainnet WETH funding of CCIPRelayBridge; swap via DEX
WETH10 Same CCIP WETH10 bridge 0xe0E93247376aa097dB308B92e6Ba36bA015535D0 → Mainnet → DEX Live; same prerequisite
cUSDT USDT / USDC / DAI No direct bridge. Swap 138: cUSDT→cUSDC or cUSDT→WETH (no cUSDT→WETH pool documented); or cUSDT→cUSDC then no bridge for cUSDC. Indirect: cUSDT→cUSDC (DODO) then no 138→mainnet bridge for compliant stables. Use: cUSDT/cUSDC → swap to WETH on 138 (no pool today) then CCIP WETH→mainnet→DEX→USDT/USDC/DAI. ⚠️ Swap leg on 138 to WETH not documented; bridge leg
cUSDC USDT / USDC / DAI Same as cUSDT; need 138 cUSDC→WETH path (not in docs). Then CCIP WETH→mainnet→DEX. ⚠️ Same

Mainnet relay: CCIP messages to chain 1 go via CCIPRelayRouter 0xAd9A228CcEB4cbB612cD165FFB72fE090ff10Afb and CCIPRelayBridge 0xF9A32F37099c582D28b4dE7Fca6eaC1e5259f939 (releases WETH; must be funded with Mainnet WETH — see CONTRACT_ADDRESSES_REFERENCE).


3.3 Chain 138 → ALL Mainnet (651940)

From (138, deployer holds) To (651940 public stable) Route Status
Any (cUSDT, cUSDC, WETH, etc.) AUSDT, USDC (AUSDC) AlltraAdapter 0x66FEBA2fC9a0B47F26DD4284DAd24F970436B8Dc (138↔651940) → then DEX on 651940 (env placeholders; HYDX present) Bridge live; destination swap via ALL Mainnet DEX

3.4 Chain 138 → other public chains (56, 100, 137, 10, 42161, 8453, 43114, 25, 42220, 1111)

From (138) To (destination chain public stable) Bridge Status
WETH9 / WETH10 BSC WETH → USDT/USDC via DEX Relay-backed first hop to BSC relay bridge 0x886C6A4ABC064dbf74E7caEc460b7eeC31F1b78C Live; requires BSC relay WETH inventory
WETH9 / WETH10 Avalanche WETH → USDT/USDC via DEX Relay-backed first hop to AVAX relay bridge 0x3f8C409C6072a2B6a4Ff17071927bA70F80c725F Tiny-send live; requires AVAX relay WETH inventory. Native Avalanche bridge path failed on 2026-03-30.
WETH9 / WETH10 Gnosis, Polygon, Arbitrum, Optimism, Base, Cronos, Celo WETH → USDT/USDC via DEX Bootstrap Mainnet first, then send Mainnet → destination ⚠️ Use Mainnet hub, not a direct first hop from Chain 138
WETH9 / WETH10 Wemix USDT/USDC Deploy bridge and seed gas first (deployer needs 0.4 WEMIX) Pending
cUSDT / cUSDC Any dest public stable No direct bridge for compliant stables; must swap to WETH on 138 then CCIP (see 3.2). ⚠️ Same as 3.2

Live routing note (2026-03-30): The current Chain 138 router emits MessageSent but does not natively deliver into public-chain CCIPWETH9Bridge / CCIPWETH10Bridge contracts. That is why direct first-hop guidance is limited to the relay-backed lanes and the Mainnet hub.

Avalanche cW correction: Separately from the public-stable routes above, the repo now proves a non-prefunded cUSDT -> cWUSDT corridor on Avalanche. That is a live lock/mint route to project cWUSDT, not a direct route to native Avalanche USDT / USDC, so it is tracked in ROUTES_NO_PREFUNDED_BRIDGE_REQUIRED instead of being listed here as a public-stable destination.


3.5 Destination chain → public stable (when deployer holds asset on that chain)

Chain Deployer holds there To public stable (same chain) Route Status
1 WETH (after CCIP), USDT, USDC, DAI USDT, USDC, DAI Native DEX (Uniswap, etc.) Standard
651940 AUSDT, USDC, WETH, WALL AUSDT, USDC HYDX / Uniswap (env placeholders) DEX present
25 USDW, EURW, … (D-WIN W) USDW, EURW, etc. Same-chain swap / DEX If DEX exists
56, 100, 137, 10, 42161, 8453 cW* (deployed) USDT, USDC cW*/USDC, cW*/USDT edge pools (pool-matrix) Pools not deployed
43114 cW* (deployed; cUSDT -> cWUSDT corridor proven) USDT, USDC cW*/USDC, cW*/USDT edge pools (pool-matrix) Pools not deployed
42220, 1111 USDC, cEUR / USDT, USDC Acquire then DEX Standard (acquire + DEX)

4. Summary: deployer → public stablecoin route matrix

Source chain Deployer source token Destination chain Destination public stable Route Live?
138 cUSDT 138 cUSDC DODO PMM pool cUSDT/cUSDC
138 cUSDC 138 cUSDT Same pool
138 WETH9 1 USDT, USDC, DAI CCIP WETH9 → Mainnet → DEX; requires Mainnet WETH funding of CCIPRelayBridge first
138 WETH10 1 USDT, USDC, DAI Same; CCIPRelayBridge must be funded with Mainnet WETH
138 WETH9/10 56 WETH → USDT/USDC via DEX Relay-backed 138 → BSC → DEX; requires BSC relay inventory
138 WETH9/10 43114 WETH → USDT/USDC via DEX Relay-backed 138 → AVAX → DEX; requires AVAX relay inventory Tiny-send only unless re-funded
138 WETH9/10 100, 137, 10, 42161, 8453, 25, 42220 WETH → USDT/USDC via DEX Bootstrap Mainnet first, then Mainnet → dest → DEX ⚠️
138 Any 651940 AUSDT, USDC AlltraAdapter → 651940 DEX
138 cUSDT, cUSDC Any USDT, USDC (any chain) Swap to WETH on 138 (no c*→WETH pool in docs) + CCIP WETH → dest DEX ⚠️ Bridge leg ; 138 swap leg not documented
Dest (1, 651940, 25, …) Deployer-held token on that chain Same Public stable Native DEX
Dest (56, 100, 137, …) cW* Same USDT, USDC cW* edge pools Not deployed

5. Reverse: public stablecoin → deployer (inbound)

From (chain, public stable) To (deployer on 138) Route Status
Mainnet (1) USDT, USDC, DAI 138 No direct bridge for stables; WETH via CCIP receiver on 138 WETH only
651940 AUSDT, USDC 138 AlltraAdapter 651940→138
Other chains WETH 138 CCIP receiver bridge on 138 → WETH9/WETH10
Any chain USDT/USDC 138 cUSDT/cUSDC No canonical bridge; would require lock-mint or third-party bridge Not in docs

For routes where pre-funding a destination bridge is not required (same-chain, AlltraAdapter lock-mint, the proven AVAX cUSDT -> cWUSDT corridor, and broader cW mint paths), see ROUTES_NO_PREFUNDED_BRIDGE_REQUIRED.


7. References

Document Use
ROUTES_NO_PREFUNDED_BRIDGE_REQUIRED Routes that do not require bridge pre-funding
DEPLOYED_TOKENS_BRIDGES_LPS_AND_ROUTING_STATUS Full routing map, bridges, DODO/Uniswap LPs
EXPLORER_TOKEN_LIST_CROSSCHECK Canonical token addresses (§5), on-chain verification (§8)
CONTRACT_ADDRESSES_REFERENCE Deployer, DODOPMMIntegration, CCIP bridges, relay
TOKENS_AND_NETWORKS_MINTABLE_TO_DEPLOYER Mintable-to-deployer tokens (138, Cronos); acquire elsewhere
DEPLOYER_WALLET_FUNDING_PLAN_PMM_POOLS Deployer address, balances, tokens on all networks
LIQUIDITY_POOLS_MASTER_MAP Pool addresses (138, 651940)
MASTER_INDEX Master documentation entry point