Files
proxmox/docs/11-references/ROUTES_NO_PREFUNDED_BRIDGE_REQUIRED.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

9.0 KiB
Raw Blame History

Routes: No Pre-Funded Bridge Required

Historical note (2026-03-26): verify live PMM pool addresses against LIQUIDITY_POOLS_MASTER_MAP.md. Earlier route examples may reference a superseded PMM stack.

Last Updated: 2026-03-31
Purpose: Routes from the deployer wallet (or any user) to public-network stablecoins (or between tokens) where pre-funding a destination bridge is not required. These use lock-mint (source locks, destination mints), same-chain (no bridge), or DEX-only flows. For routes that do require bridge pre-funding, or routes that are not a proven direct first hop from the current Chain 138 router, see DEPLOYER_TO_PUBLIC_STABLECOIN_ROUTES.

Deployer address: 0x4A666F96fC8764181194447A7dFdb7d471b301C8

Why this doc: The 138 → Ethereum Mainnet, BSC, and Avalanche WETH paths currently use relay + release models: the destination bridge releases WETH from inventory and must already hold enough WETH. Other public-chain native bridge deployments should not be treated as live no-prefund first hops from Chain 138 unless a matching native delivery path is proven.

Sources: DEPLOYER_TO_PUBLIC_STABLECOIN_ROUTES, DEPLOYED_TOKENS_BRIDGES_LPS_AND_ROUTING_STATUS, 07-ccip/CW_BRIDGE_APPROACH, 07-ccip/CCIP_BRIDGE_MAINNET_CONNECTION, 07-ccip/NON_PREFUNDED_AVAX_MIGRATION_RUNBOOK, CONTRACT_ADDRESSES_REFERENCE.


1. Excluded: routes that require a pre-funded bridge

Route Reason
138 WETH → Ethereum Mainnet (1) CCIPRelayBridge on chain 1 releases WETH (does not mint). Mainnet WETH must be sent to the bridge before 138→Mainnet transfers can complete. See DEPLOYER_TO_PUBLIC_STABLECOIN_ROUTES §3.2 and CCIP_BRIDGE_MAINNET_CONNECTION.
138 WETH → BSC (56) Current live BSC delivery is relay-backed and releases WETH from BSC bridge inventory. Do not treat the deployed native BSC bridge as proof of a direct no-prefund first hop from Chain 138.
138 WETH → Avalanche (43114) Current live AVAX delivery is relay-backed and releases WETH from AVAX bridge inventory. A native Avalanche bridge test on 2026-03-30 failed because the Chain 138 router and Avalanche bridge router do not match. See NON_PREFUNDED_AVAX_MIGRATION_RUNBOOK.
138 WETH → Gnosis / Cronos / Celo / Polygon / Arbitrum / Optimism / Base Native bridge deployments exist, but they are not proven direct first hops from the current Chain 138 router. Use the Mainnet hub or a cW mint path instead of treating them as no-prefund direct routes.

All routes below do not require pre-funding the destination bridge.


2. Same-chain (no bridge)

No bridge is used; no pre-fund requirement.

From (chain) To (same chain) Mechanism Status
138 cUSDT 138 cUSDC DODOPMMIntegration / pool 0xff8d3b8fDF7B112759F076B69f4271D4209C0849 Live
138 cUSDC 138 cUSDT Same pool Live
Any chain Same chain public stable Native DEX (Uniswap, etc.) — deployer or user holds token on that chain, swaps on DEX Standard

3. Cross-chain: lock-mint (destination mints)

Destination bridge mints (or releases from lock) on receive; no need to pre-fund a liquidity pool on the destination.

3.1 Chain 138 ↔ ALL Mainnet (651940) — AlltraAdapter

Design: lock on 138 → relayer mints on 651940 (and reverse). No destination bridge pre-fund.

From To Route Status
138 (cUSDT, cUSDC, WETH, etc.) 651940 AUSDT, USDC, WETH, WALL AlltraAdapter 0x66FEBA2fC9a0B47F26DD4284DAd24F970436B8Dc (138↔651940) → then DEX on 651940 if needed Live
651940 138 AlltraAdapter 651940→138

Source: DEPLOYED_TOKENS_BRIDGES_LPS_AND_ROUTING_STATUS, CROSS_CHAIN_ARBITRAGE_DESIGN (lock on 138, relayer mints on 651940).

3.2 Chain 138 → public chains: current live correction

There is no blanket no-prefund WETH rule for public-chain first hops from the current Chain 138 router.

From (138) To (chain) Current reality Include in this no-prefund doc?
WETH9 / WETH10 Mainnet, BSC, Avalanche Relay-backed release path from destination inventory No
WETH9 / WETH10 Gnosis, Cronos, Celo, Polygon, Arbitrum, Optimism, Base Native bridge deployments exist, but not as proven direct first hops from current Chain 138 routing No
WETH9 / WETH10 Wemix Pending deployment / gas seeding No

Per-chain, per-token confirmation: See CCIP_138_DESTINATION_RECEIVER_BY_CHAIN_AND_TOKEN for the distinction between native bridge contract behavior and the current live Chain 138 route.

3.3 cW* (c* → cW* on public chains) — live AVAX corridor plus broader design

Design rule: lock cUSDT/cUSDC on 138, mint cWUSDT/cWUSDC on destination in ccipReceive. No pre-funded pool; receiver has MINTER_ROLE and mints. The repo now proves that model end to end for the dedicated Avalanche cUSDT -> cWUSDT corridor, but it does not assert blanket live status for every cW destination chain.

From (138) To (destination chain) Route Status
cUSDT 43114 cWUSDT Dedicated avax-cw path: Chain 138 relay router 0xe75d26bc558a28442f30750c6d97bffb46f39abc → AVAX cW bridge 0x635002c5fb227160cd2eac926d1baa61847f3c75 → recipient mint Live and proven E2E
cUSDT / cUSDC cWUSDT / cWUSDC on chain (e.g. 56, 137, 1) UniversalCCIPBridge or dedicated lock-and-send → destination TwoWayTokenBridgeL2 (or CCIPReceiverCW) → ccipReceivecW*.mint(recipient, amount) Design / partial outside the proven AVAX corridor

Sources: CW_BRIDGE_APPROACH — “lock c* on 138, mint cW* on destination”; receiver implements ccipReceivecW*.mint(recipient, amount). NON_PREFUNDED_AVAX_MIGRATION_RUNBOOK records the live AVAX contract set and tx proofs.


4. Reverse: inbound to 138 (no pre-fund)

From (chain) To (138) Route Pre-fund?
651940 138 AlltraAdapter 651940→138 No (lock-mint / adapter design)
Other chains (56, 137, 10, etc.) WETH 138 CCIP receiver on 138 → WETH9/WETH10 No (138 side mints or credits)
Mainnet (1) WETH 138 Via relay: Mainnet burns/locks, 138 receives. 138 side does not require a pre-funded pool for inbound; the relays outbound (138→1) is what requires Mainnet bridge pre-fund. Inbound to 138: no pre-fund

5. Summary: no pre-fund required

Category Routes Pre-funded bridge required?
Same-chain 138 (cUSDT↔cUSDC) DODO PMM pool No
Same-chain any (DEX swap) User holds token on chain, swap on DEX No
138 ↔ 651940 AlltraAdapter (lock / mint) No
138 → 43114 cUSDT -> cWUSDT Dedicated AVAX cW lock / mint route No
138 → public chains via generic cW path (other chains / assets) Lock c* on 138, mint cW* on destination No by design; live status still partial
138 → Mainnet (1) WETH CCIP relay → CCIPRelayBridge releases Yes — excluded from this doc
Inbound to 138 AlltraAdapter, CCIP receiver on 138 No

6. References

Document Use
CCIP_138_DESTINATION_RECEIVER_BY_CHAIN_AND_TOKEN Per chain and token: confirms receiver mints vs receive+forward vs release (pre-fund)
DEPLOYER_TO_PUBLIC_STABLECOIN_ROUTES Full route list including routes that do require pre-funded bridge (138→Mainnet WETH)
DEPLOYED_TOKENS_BRIDGES_LPS_AND_ROUTING_STATUS Bridges and routing by chain
07-ccip/CW_BRIDGE_APPROACH cW* lock-mint flow (no pre-fund)
07-ccip/CCIP_BRIDGE_MAINNET_CONNECTION Why Mainnet WETH requires bridge pre-fund (relay + release)
07-ccip/NON_PREFUNDED_AVAX_MIGRATION_RUNBOOK Why AVAX non-prefunded is cW-based, not native WETH from current 138 router
CONTRACT_ADDRESSES_REFERENCE AlltraAdapter, CCIP bridges, CCIPRelayBridge