36 lines
1.8 KiB
Markdown
36 lines
1.8 KiB
Markdown
# CCIP Live Checklist (Chain 138 Exports)
|
|
|
|
Before enabling exports from Chain 138 to Ethereum Mainnet, complete the following. Until then, keep `exportsEnabled == false` on `CcipBridgeAdapter138`.
|
|
|
|
## 1. Chain 138 in CCIP Directory
|
|
|
|
- [ ] Open [Chainlink CCIP supported networks](https://docs.chain.link/ccip/supported-networks) (CCIP Directory).
|
|
- [ ] Confirm **Chain 138** (DeFi Oracle Meta Mainnet) is listed with an official **chain selector** and **CCIP Router** address.
|
|
- [ ] If Chain 138 is not listed, exports will not work at the network layer; do not set `exportsEnabled = true`.
|
|
|
|
## 2. Update CHAIN138_SELECTOR
|
|
|
|
- [ ] Set `CHAIN138_SELECTOR` in `.env` to the **official** decimal chain selector from the CCIP Directory (not the placeholder `138`).
|
|
- [ ] Verify: `cast call <CCIP_ROUTER_138> "getChainSelector()(uint64)" --rpc-url $RPC_URL_138` matches your config if the router exposes it.
|
|
|
|
## 3. Dry-run / simulation
|
|
|
|
- [ ] Run a dry-run or simulation of `ccipSend` (e.g. `DRY_RUN=1` with your fund script or a minimal send that reverts before actually sending).
|
|
- [ ] Confirm no revert from router or bridge for a small amount.
|
|
|
|
## 4. Enable exports on-chain
|
|
|
|
- [ ] Call `CcipBridgeAdapter138.setExportsEnabled(true)` (via admin/multisig).
|
|
- [ ] Optionally process any queued intents recorded while exports were disabled.
|
|
|
|
## 5. WETH9 fingerprint (before first run)
|
|
|
|
- [ ] Run `node scripts/treasury/verify-weth9-fingerprint.js` (or `scripts/verify-weth9-canonical.js`).
|
|
- [ ] Do not assume `0xC02a…6Cc2` on Chain 138 is canonical WETH9 until fingerprint matches expected; halt bot/executor if mismatch.
|
|
|
|
## References
|
|
|
|
- [EXECUTOR_ALLOWLIST_MATRIX.md](EXECUTOR_ALLOWLIST_MATRIX.md)
|
|
- [EXPORT_STATE_MACHINE.md](EXPORT_STATE_MACHINE.md)
|
|
- [Chainlink CCIP Directory](https://docs.chain.link/ccip/directory/mainnet)
|