# CCIP ChainID 138 Deployment Checklist **Date**: 2025-01-27 **Network**: ChainID 138 (DeFi Oracle Meta Mainnet) --- ## Pre-Deployment Checklist ### Environment Setup - [ ] ChainID 138 network is running and accessible - [ ] RPC endpoint configured (`RPC_URL_138` or `CHAIN138_RPC_URL`) - [ ] Private key configured (`PRIVATE_KEY`) - [ ] Sufficient native token balance for deployment - [ ] Foundry/Forge installed and working - [ ] `cast` command available ### Configuration - [ ] `.env` file exists and is configured - [ ] Chain selector calculated (run `./scripts/ccip/calculate-chain-selector.sh`) - [ ] Fee token decision made (LINK or native ETH) - [ ] Fee amounts configured (`CCIP_BASE_FEE`, `CCIP_DATA_FEE_PER_BYTE`) --- ## Phase 1: Core Infrastructure ### Chain Selector - [ ] Run chain selector calculation script - [ ] Verify selector value: `138` (or `0x000000000000008a`) - [ ] Update `.env` with `CHAIN138_SELECTOR` - [ ] Document selector in all relevant files ### Fee Token - [ ] Decide: LINK token or native ETH - [ ] If LINK: Deploy LINK token contract - [ ] Update `.env` with `CCIP_CHAIN138_LINK_TOKEN` - [ ] If native ETH: Set to `address(0)` ### CCIP Router - [ ] Deploy CCIPRouter contract - [ ] Verify deployment on explorer - [ ] Update `.env` with `CCIP_CHAIN138_ROUTER` - [ ] Configure router with supported chains - [ ] Add supported tokens - [ ] Verify configuration --- ## Phase 2: Bridge Deployment ### CCIPWETH9Bridge - [ ] Deploy CCIPWETH9Bridge contract - [ ] Verify deployment on explorer - [ ] Update `.env` with `CCIPWETH9_BRIDGE_CHAIN138` - [ ] Verify bridge configuration (router, WETH9, fee token) ### CCIPWETH10Bridge - [ ] Deploy CCIPWETH10Bridge contract - [ ] Verify deployment on explorer - [ ] Update `.env` with `CCIPWETH10_BRIDGE_CHAIN138` - [ ] Verify bridge configuration (router, WETH10, fee token) --- ## Phase 3: Bridge Configuration ### CCIPWETH9Bridge Destinations - [ ] Add Ethereum Mainnet as destination on ChainID 138 bridge - [ ] Add ChainID 138 as destination on Ethereum Mainnet bridge - [ ] Verify bidirectional configuration - [ ] Test connectivity ### CCIPWETH10Bridge Destinations - [ ] Add Ethereum Mainnet as destination on ChainID 138 bridge - [ ] Add ChainID 138 as destination on Ethereum Mainnet bridge - [ ] Verify bidirectional configuration - [ ] Test connectivity --- ## Phase 4: Verification ### Contract Verification - [ ] Verify CCIPRouter on explorer - [ ] Verify CCIPWETH9Bridge on explorer - [ ] Verify CCIPWETH10Bridge on explorer - [ ] Verify LINK token (if deployed) on explorer ### Configuration Verification - [ ] Run verification script: `./scripts/deployment/verify-ccip-deployment.sh` - [ ] Verify router supports Ethereum Mainnet - [ ] Verify bridges have destinations configured - [ ] Verify chain selector is correct ### Functional Testing - [ ] Test router message sending - [ ] Test bridge token transfer (WETH9) - [ ] Test bridge token transfer (WETH10) - [ ] Test fee payment - [ ] Test error handling --- ## Phase 5: Documentation ### Update Documentation - [ ] Update `docs/ETH_WETH_CHAINLINK_GUIDE.md` with deployed addresses - [ ] Update `docs/CCIP_CHAIN138_REVIEW.md` with deployment status - [ ] Update `docs/deployment/ENV_EXAMPLE_CONTENT.md` with actual values - [ ] Create deployment summary document ### Create Guides - [ ] Deployment guide (created) - [ ] User guide (created) - [ ] Developer guide (created) - [ ] Monitoring guide (created) - [ ] Security guide (created) - [ ] Runbooks (created) --- ## Phase 6: Operations ### Monitoring Setup - [ ] Set up event monitoring - [ ] Configure alerts - [ ] Create dashboards - [ ] Test alerting ### Security - [ ] Review security measures - [ ] Set up admin key management - [ ] Document security procedures - [ ] Schedule security audit ### Operational Procedures - [ ] Create deployment runbook - [ ] Create configuration runbook - [ ] Create troubleshooting guide - [ ] Create emergency response procedures --- ## Post-Deployment ### Testing - [ ] End-to-end cross-chain transfer test - [ ] Error handling tests - [ ] Load testing - [ ] Security testing ### Monitoring - [ ] Monitor for 24-48 hours - [ ] Review all events - [ ] Check for errors - [ ] Verify performance ### Documentation - [ ] Finalize all documentation - [ ] Update status in all files - [ ] Create deployment report - [ ] Archive deployment artifacts --- ## Success Criteria - [ ] All contracts deployed and verified - [ ] All bridges configured with destinations - [ ] Cross-chain transfers working bidirectionally - [ ] All documentation updated - [ ] Monitoring and alerting operational - [ ] Security measures in place - [ ] Operational procedures documented --- ## Related Documentation - [Deployment Guide](DEPLOYMENT_GUIDE_CHAIN138.md) - [Chain Selector Calculation](CHAIN_SELECTOR_CALCULATION.md) - [CCIP Review](../CCIP_CHAIN138_REVIEW.md) --- **Last Updated**: 2025-01-27