Align default bridge routes with Wemix and config-ready CCIP receivers.
Some checks failed
CI/CD Pipeline / Solidity Contracts (push) Failing after 1m2s
CI/CD Pipeline / Security Scanning (push) Successful in 2m36s
CI/CD Pipeline / Lint and Format (push) Failing after 33s
CI/CD Pipeline / Terraform Validation (push) Failing after 21s
CI/CD Pipeline / Kubernetes Validation (push) Successful in 25s
HYBX OMNL TypeScript & anchor / token-aggregation build + reconcile artifact (push) Failing after 48s
Validation / validate-genesis (push) Successful in 26s
Validation / validate-terraform (push) Failing after 25s
Validation / validate-kubernetes (push) Failing after 8s
Validation / validate-smart-contracts (push) Failing after 8s
Validation / validate-security (push) Failing after 1m36s
Validation / validate-documentation (push) Failing after 13s
Verify Deployment / Verify Deployment (push) Failing after 48s
OMNL reconcile anchor / Run omnl:reconcile and upload artifacts (push) Failing after 22s

Add the runtime JSON mirror and update token-aggregation fallbacks for Gnosis, Cronos, Celo, and Wemix (1111) lanes.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
defiQUG
2026-05-23 02:21:38 -07:00
parent 6c0328b040
commit 9a83aa2034
2 changed files with 83 additions and 2 deletions

View File

@@ -0,0 +1,59 @@
{
"description": "Canonical CCIP WETH9/WETH10 destination receivers and Chain 138 bridge contracts. Consumed by token-aggregation (BRIDGE_LIST_JSON_PATH), info.defi-oracle.io SPA fallback, and public-site verification scripts.",
"updated": "2026-05-23",
"routes": {
"weth9": {
"Ethereum Mainnet (1)": "0xF9A32F37099c582D28b4dE7Fca6eaC1e5259f939",
"BNB Chain (56)": "0x886C6A4ABC064dbf74E7caEc460b7eeC31F1b78C",
"Polygon (137)": "0xF7736443f02913e7e0773052103296CfE1637448",
"Avalanche C-Chain (43114)": "0x3f8C409C6072a2B6a4Ff17071927bA70F80c725F",
"Base (8453)": "0x24293CA562aE1100E60a4640FF49bd656cFf93B4",
"Arbitrum One (42161)": "0x937824f2516fa58f25aeAb92E7BFf7D74F463B4c",
"Optimism (10)": "0x6e94e53F73893b2a6784Df663920D31043A6dE07",
"Gnosis (100)": "0xc8656F24488cb90c452058da92d1a25BA464eaAE",
"Cronos (25)": "0x3Cc23d086fCcbAe1e5f3FE2bA4A263E1D27d8Cab",
"Celo (42220)": "0xAb57BF30F1354CA0590af22D8974c7f24DB2DbD7",
"Wemix (1111)": "0xD3AD6831aacB5386B8A25BB8D8176a6C8a026f04"
},
"weth10": {
"Ethereum Mainnet (1)": "0x04E1e22B0D41e99f4275bd40A50480219bc9A223",
"BNB Chain (56)": "0x937824f2516fa58f25aeAb92E7BFf7D74F463B4c",
"Polygon (137)": "0x0CA60e6f8589c540200daC9D9Cb27BC2e48eE66A",
"Avalanche C-Chain (43114)": "0x937824f2516fa58f25aeAb92E7BFf7D74F463B4c",
"Base (8453)": "0x937824f2516fa58f25aeAb92E7BFf7D74F463B4c",
"Arbitrum One (42161)": "0x73376eB92c16977B126dB9112936A20Fa0De3442",
"Optimism (10)": "0x24293CA562aE1100E60a4640FF49bd656cFf93B4",
"Gnosis (100)": "0xa846aeAD3071df1b6439d5D813156aCE7C2c1DA1",
"Cronos (25)": "0x105F8A15b819948a89153505762444Ee9f324684",
"Celo (42220)": "0xa780ef19A041745d353c9432f2a7f5A241335ffE",
"Wemix (1111)": "0xa4B9DD039565AeD9641D45b57061f99d9cA6Df08"
}
},
"chain138Bridges": {
"weth9": "0xcacfd227A040002e49e2e01626363071324f820a",
"weth10": "0xe0E93247376aa097dB308B92e6Ba36bA015535D0",
"trustless": "0xFce6f50B312B3D936Ea9693C5C9531CF92a3324c",
"cwMultiTokenL1": "0x152ed3e9912161b76bdfd368d0c84b7c31c10de7",
"ccipRouter": "0x42DAb7b888Dd382bD5Adcf9E038dBF1fD03b4817",
"alltraAdapter": "0x66FEBA2fC9a0B47F26DD4284DAd24F970436B8Dc"
},
"mainnetContracts": {
"ccipRelayRouter": "0xAd9A228CcEB4cbB612cD165FFB72fE090ff10Afb",
"ccipRelayBridge": "0xF9A32F37099c582D28b4dE7Fca6eaC1e5259f939",
"ccipWeth9Hub": "0xc9901ce2Ddb6490FAA183645147a87496d8b20B6",
"ccipWeth10Hub": "0x04E1e22B0D41e99f4275bd40A50480219bc9A223",
"cwBridgeL2": "0x2bF74583206A49Be07E0E8A94197C12987AbD7B5"
},
"tokenMappingApi": {
"basePath": "/api/v1/token-mapping",
"pairs": "/api/v1/token-mapping/pairs",
"resolve": "/api/v1/token-mapping/resolve",
"note": "Resolve bridged token addresses between chains; requires monorepo config/token-mapping-multichain.json on server."
},
"notes": {
"ethereumMainnetWeth9": "138→1 WETH9 uses relay release at CCIPRelayBridge (0xF9A32F…). CCIPWETH9 hub 0xc9901ce2… is the on-chain CCIP receiver for hub traffic.",
"deprecatedChain138Weth9": "Do not use 0x971cD9D156f193df8051E48043C476e53ECd4693 or 0x89dd12025bfCD38A168455A44B400e913ED33BE2 on Chain 138.",
"arbitrum": "Arbitrum hub leg may revert until mainnet hub path is repaired; treat as route-blocked for operators.",
"configReadyChains": "Gnosis, Cronos, Celo, and Wemix use deployed CCIPWETH9/10 bridge receivers from smom-dbis-138/.env (2026-05-23 alignment). Fund LINK on each remote bridge before live traffic."
}
}

View File

@@ -34,11 +34,33 @@ const DEFAULT_WETH9_138 = '0xcacfd227A040002e49e2e01626363071324f820a';
const DEFAULT_WETH10_138 = '0xe0E93247376aa097dB308B92e6Ba36bA015535D0';
const DEFAULT_LOCKBOX_138 = '0xFce6f50B312B3D936Ea9693C5C9531CF92a3324c';
/** Destination-side WETH9 receivers (relay-backed where noted in CCIP docs). */
/** Destination-side WETH9 receivers (relay-backed on mainnet per CCIP_BRIDGE_MAINNET_CONNECTION.md). */
const WETH9_DESTINATIONS: Record<string, string> = {
'Ethereum Mainnet (1)': '0xF9A32F37099c582D28b4dE7Fca6eaC1e5259f939',
'BNB Chain (56)': '0x886C6A4ABC064dbf74E7caEc460b7eeC31F1b78C',
'Polygon (137)': '0xF7736443f02913e7e0773052103296CfE1637448',
'Avalanche C-Chain (43114)': '0x3f8C409C6072a2B6a4Ff17071927bA70F80c725F',
'Base (8453)': '0x24293CA562aE1100E60a4640FF49bd656cFf93B4',
'Arbitrum One (42161)': '0x937824f2516fa58f25aeAb92E7BFf7D74F463B4c',
'Optimism (10)': '0x6e94e53F73893b2a6784Df663920D31043A6dE07',
'Gnosis (100)': '0xc8656F24488cb90c452058da92d1a25BA464eaAE',
'Cronos (25)': '0x3Cc23d086fCcbAe1e5f3FE2bA4A263E1D27d8Cab',
'Celo (42220)': '0xAb57BF30F1354CA0590af22D8974c7f24DB2DbD7',
'Wemix (1111)': '0xD3AD6831aacB5386B8A25BB8D8176a6C8a026f04',
};
const WETH10_DESTINATIONS: Record<string, string> = {
'Ethereum Mainnet (1)': '0x04E1e22B0D41e99f4275bd40A50480219bc9A223',
'BNB Chain (56)': '0x937824f2516fa58f25aeAb92E7BFf7D74F463B4c',
'Polygon (137)': '0x0CA60e6f8589c540200daC9D9Cb27BC2e48eE66A',
'Avalanche C-Chain (43114)': '0x937824f2516fa58f25aeAb92E7BFf7D74F463B4c',
'Base (8453)': '0x937824f2516fa58f25aeAb92E7BFf7D74F463B4c',
'Arbitrum One (42161)': '0x73376eB92c16977B126dB9112936A20Fa0De3442',
'Optimism (10)': '0x24293CA562aE1100E60a4640FF49bd656cFf93B4',
'Gnosis (100)': '0xa846aeAD3071df1b6439d5D813156aCE7C2c1DA1',
'Cronos (25)': '0x105F8A15b819948a89153505762444Ee9f324684',
'Celo (42220)': '0xa780ef19A041745d353c9432f2a7f5A241335ffE',
'Wemix (1111)': '0xa4B9DD039565AeD9641D45b57061f99d9cA6Df08',
};
function envAddr(key: string, fallback: string): string {
@@ -58,7 +80,7 @@ export function buildDefaultBridgeRoutes(): BridgeRoutesPayload {
return {
routes: {
weth9: { ...WETH9_DESTINATIONS },
weth10: { ...WETH9_DESTINATIONS },
weth10: { ...WETH10_DESTINATIONS },
...(Object.keys(trustlessRoutes).length > 0 ? { trustless: trustlessRoutes } : {}),
},
chain138Bridges: {