189 lines
4.8 KiB
Markdown
189 lines
4.8 KiB
Markdown
# 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
|
|
|