Files
smom-dbis-138/docs/bridge/CHAIN138_ONLY_TO_CANONICAL_OTHER_NETWORKS.md
2026-03-02 12:14:09 -08:00

6.1 KiB
Raw Blame History

Pathway: Chain 138 Only → Canonical Tokens on Other Networks (User Does Not Prefund; Operator Prefunds Destination)

Prefunding = Mainnet or an L2 being funded — i.e. someone holds or sends ETH/tokens there so that transfers can complete. If Mainnet or L2 must be funded, that is prefunding (whether the user or the operator does it).

Question: Is there a route where you only use ChainID 138 tokens and receive canonical tokens on other networks, without you having to fund Mainnet or L2?

Answer: Yes — but the destination is still prefunded. In both pathways below, you (the end-user) never fund Mainnet or L2. The operator does: they prefund the destination (relayer + LiquidityPool, or Relay Bridge) so you can receive there. So prefunding is required; it is done by the operator, not by you. If you deployed the contracts and fund that destination side, you are the operator doing the prefunding.

Who is the operator? The party that runs and funds the destination-side infrastructure: for Trustless, the relayer and the liquidity providers who fund LiquidityPoolETH on Mainnet/L2; for Relay, the party that runs the relay service and prefunds the Relay Bridge with WETH9 on Mainnet. If you deployed these contracts and you fund the relayer/LP or the Relay Bridge, you are the operator (and you are doing the prefunding).


1. Trustless Bridge (138 → Ethereum Mainnet or L2)

User experience: Chain 138 only; user does not prefund destination (operator does).

Step Where Who pays
1. Deposit Chain 138 User: native ETH or WETH into Lockbox138
2. Claim Ethereum (or L2) Relayer (operator): gas + bond on destination
3. Payout Ethereum (or L2) LiquidityPoolETH: WETH/ETH on destination (operator-funded)
4. Optional swap Ethereum (or L2) User can swap to canonical USDC/USDT via DApp “Bridge & Swap”
  • User never needs ETH or tokens on mainnet/L2; they only sign on Chain 138.
  • Operator must fund: relayer (ETH for gas + bonds on destination), LiquidityPool (WETH/ETH on destination).
  • Canonical tokens: User receives WETH on destination; optionally canonical USDC/USDT via in-app swap.

References:
Trustless Integration, Bridge User Guide, Trustless Architecture.


2. Custom CCIP Relay (138 → Ethereum Mainnet)

User experience: Chain 138 only; user does not prefund mainnet (operator does).

Step Where Who pays
1. Send Chain 138 User: WETH9 via bridge + fee on 138
2. Relay Off-chain Relay service (operator): gas on mainnet
3. Delivery Mainnet Relay Bridge must hold WETH9 on mainnet (operator-funded)
  • User only interacts on Chain 138; no mainnet balance required.
  • Operator must prefund the Relay Bridge with WETH9 on mainnet so it can complete transfers.
  • Canonical tokens: User receives canonical WETH9 on mainnet (0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2).

References:
Relay Architecture — “Bridge Funding: The relay bridge MUST be funded with WETH9 tokens.”


3. Official CCIP (138 → other chains)

Not a pathway today.

  • CCIP returns “chain not supported” when using Chain 138 as source (or as a hop). No repo change can fix this until Chainlink supports 138.
  • When/if supported: user would pay fees on Chain 138 (LINK or native); destination bridges would still need to be configured and funded by the operator.

Summary

Pathway Prefunding of Mainnet/L2? Who prefunds? Canonical tokens on destination?
Trustless (Lockbox138 → Mainnet/L2) Yes Operator (LP + relayer on destination) Yes (WETH; optional swap to USDC/USDT)
Relay (138 → Mainnet) Yes Operator (Relay Bridge on mainnet) Yes (WETH9)
CCIP (138 → other) N/A N/A Not supported for 138 today

Bottom line: The destination (Mainnet/L2) is prefunded — by the operator. You (as end-user) use only Chain 138 and never fund the destination yourself; the operators prefunding is what allows you to receive canonical tokens there. If you deployed and fund the contracts, you are the operator and you are doing that prefunding.


Estimated costs (pathway)

Rough cost breakdown for the two pathways. Gas is variable; assume ~30 gwei on mainnet and chain-specific gas on 138 for illustration.

User (Chain 138 only)

Item Trustless (138 → Mainnet/L2) Relay (138 → Mainnet)
On Chain 138 Deposit: Lockbox138 gas (~72k) Send WETH9 via bridge + fee (bridge-dependent)
LP / bridge fee 0.05% of bridge amount (deducted from received amount) Per-bridge fee on 138 (if any)
On destination None None

Operator (destination side)

Item Trustless (138 → Mainnet/L2) Relay (138 → Mainnet)
Relayer / service Gas on destination: submitClaim ~380k, finalize ~50100k, release ~100150k; bond 110% of deposit (min 1 ETH), returned after finalization Relay tx gas on mainnet (e.g. up to ~1M gas per message)
Liquidity / bridge LiquidityPool: WETH/ETH to cover payouts; min liquidity ratio 110% of pending claims Relay Bridge: WETH9 balance to cover all transferred amounts
One-time / setup Deployment ~510 ETH (gas); initial LP funding Relay Bridge prefund with expected WETH9 volume

Example (Trustless, 10 ETH bridge at 30 gwei mainnet)

Party Cost
User (138 only) Chain 138 gas (~72k) + 0.05% × 10 ETH = 0.005 ETH deducted from receive → receives 9.995 ETH (equiv.) on destination
Operator Relayer: bond 11 ETH (110% of 10 ETH), returned after finalization; gas ~0.020.05 ETH per claim+finalize+release; LP must hold ≥ 11 ETH (110% of 10) for this claim