feat(scripts): CCIP destination matrix + ccip-destinations helper
- Add config/ccip-destination-matrix.json (selectors, bridges, public RPCs) - Drive configure-all-*-destinations scripts from matrix via jq - Extend config/README; wire check-bridge-config and pre-flight-check Made-with: Cursor
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# config — reference JSON (non-secret)
|
||||
|
||||
Files such as `address-inventory.json` and `runtime-env.json` are **reference snapshots** of address and runtime surface fields that were previously carried only in `.env`. They must **not** contain API keys or other secrets.
|
||||
Files such as `address-inventory.json`, `runtime-env.json`, and `ccip-destination-matrix.json` are **reference snapshots** of address and runtime surface fields that were previously carried only in `.env` or duplicated across scripts. They must **not** contain API keys or other secrets.
|
||||
|
||||
- Keep **real secrets** in `.env` (gitignored) or your secret store.
|
||||
- After changing explorer-related env or CCIP addresses, update these JSON files if scripts or docs depend on them.
|
||||
|
||||
55
config/ccip-destination-matrix.json
Normal file
55
config/ccip-destination-matrix.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"description": "Canonical CCIP destination selector and bridge matrix used by explorer-monorepo operator scripts.",
|
||||
"updated": "2026-03-27",
|
||||
"chains": [
|
||||
{
|
||||
"name": "BSC",
|
||||
"selector": "11344663589394136015",
|
||||
"weth9Bridge": "0x8078a09637e47fa5ed34f626046ea2094a5cde5e",
|
||||
"weth10Bridge": "0x105f8a15b819948a89153505762444ee9f324684",
|
||||
"rpcUrl": "https://bsc-dataseed.binance.org"
|
||||
},
|
||||
{
|
||||
"name": "Polygon",
|
||||
"selector": "4051577828743386545",
|
||||
"weth9Bridge": "0xa780ef19a041745d353c9432f2a7f5a241335ffe",
|
||||
"weth10Bridge": "0xdab0591e5e89295ffad75a71dcfc30c5625c4fa2",
|
||||
"rpcUrl": "https://polygon-rpc.com"
|
||||
},
|
||||
{
|
||||
"name": "Avalanche",
|
||||
"selector": "6433500567565415381",
|
||||
"weth9Bridge": "0x8078a09637e47fa5ed34f626046ea2094a5cde5e",
|
||||
"weth10Bridge": "0x105f8a15b819948a89153505762444ee9f324684",
|
||||
"rpcUrl": "https://api.avax.network/ext/bc/C/rpc"
|
||||
},
|
||||
{
|
||||
"name": "Base",
|
||||
"selector": "15971525489660198786",
|
||||
"weth9Bridge": "0x8078a09637e47fa5ed34f626046ea2094a5cde5e",
|
||||
"weth10Bridge": "0x105f8a15b819948a89153505762444ee9f324684",
|
||||
"rpcUrl": "https://mainnet.base.org"
|
||||
},
|
||||
{
|
||||
"name": "Arbitrum",
|
||||
"selector": "4949039107694359620",
|
||||
"weth9Bridge": "0x8078a09637e47fa5ed34f626046ea2094a5cde5e",
|
||||
"weth10Bridge": "0x105f8a15b819948a89153505762444ee9f324684",
|
||||
"rpcUrl": "https://arb1.arbitrum.io/rpc"
|
||||
},
|
||||
{
|
||||
"name": "Optimism",
|
||||
"selector": "3734403246176062136",
|
||||
"weth9Bridge": "0x8078a09637e47fa5ed34f626046ea2094a5cde5e",
|
||||
"weth10Bridge": "0x105f8a15b819948a89153505762444ee9f324684",
|
||||
"rpcUrl": "https://mainnet.optimism.io"
|
||||
},
|
||||
{
|
||||
"name": "Ethereum",
|
||||
"selector": "5009297550715157269",
|
||||
"weth9Bridge": "0x2A0840e5117683b11682ac46f5CF5621E67269E3",
|
||||
"weth10Bridge": "0xb7721dD53A8c629d9f1Ba31a5819AFe250002b03",
|
||||
"rpcUrl": "https://eth.llamarpc.com"
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user