# CCIP Verification Checklist **Date**: 2025-01-12 **Network**: ChainID 138 --- ## Overview This checklist provides a comprehensive verification procedure for the complete CCIP setup. --- ## Pre-Verification - [ ] RPC endpoint accessible - [ ] Private key available (if needed for transactions) - [ ] Required tools installed (cast, foundry, etc.) - [ ] Environment variables configured --- ## A) CCIP Lane Configuration ### A.1 Source Chain (ChainID 138) - [ ] **Router Deployment** (Task 1) - [ ] Router contract deployed - [ ] Router bytecode verified - [ ] Router functions accessible - **Script**: `./scripts/verify-ccip-router.sh` - [ ] **Sender Deployment** (Task 2) - [ ] Sender contract deployed - [ ] Sender bytecode verified - [ ] Sender router reference correct - **Script**: `./scripts/verify-ccip-sender.sh` - [ ] **App-Level Destination Routing** (Task 3) - [ ] All 7 destination chains configured - [ ] WETH9 bridge destinations configured - [ ] WETH10 bridge destinations configured - **Script**: `./scripts/check-bridge-config.sh` - [ ] **Stuck Transaction Resolved** (Task 4) - [ ] No stuck transactions in mempool - [ ] Ethereum Mainnet destination can be configured ### A.2 Destination Chain (Ethereum Mainnet) - [ ] **Bridge Contract Deployment** (Task 11) - [ ] WETH9 bridge deployed on Ethereum Mainnet - [ ] WETH10 bridge deployed on Ethereum Mainnet - [ ] Contracts verified on Etherscan - [ ] **Source Chain Destination Routing** (Task 12) - [ ] ChainID 138 configured as source on Ethereum Mainnet bridges --- ## B) Token Map Configuration ### B.1 TokenAdminRegistry - [ ] **TokenAdminRegistry Identified** (Task 19) - [ ] Registry address found - [ ] Registry accessible - [ ] **WETH9 Token Registration** (Task 20) - [ ] WETH9 registered in TokenAdminRegistry - [ ] Pool address configured - [ ] **WETH10 Token Registration** (Task 21) - [ ] WETH10 registered in TokenAdminRegistry - [ ] Pool address configured - **Script**: `./scripts/verify-token-admin-registry.sh` ### B.2 Token Pool Configuration - [ ] **Token Pool Addresses Identified** (Task 28) - [ ] WETH9 pool address known - [ ] WETH10 pool address known - [ ] **Pool Remote Chain Configuration** (Task 29) - [ ] Pools know about destination chains - [ ] Chain selectors configured - **Script**: `./scripts/verify-token-pool-config.sh ` --- ## C) Token Mechanism - [ ] **WETH9 1:1 Backing Verified** (Task 36) - [ ] Contract balance = total supply - **Script**: `./scripts/inspect-weth9-contract.sh` - [ ] **WETH10 1:1 Backing Verified** (Task 37) - [ ] Contract balance = total supply - **Script**: `./scripts/inspect-weth10-contract.sh` --- ## D) Rate Limits - [ ] **Rate Limit Configuration Identified** (Task 43) - [ ] Outbound limits known - [ ] Inbound limits known - [ ] Per-lane limits known --- ## E) App-Side Wiring - [ ] **WETH9 Bridge Destinations Configured** (Task 50) - [ ] All 7 destinations configured - **Script**: `./scripts/check-bridge-config.sh` - [ ] **WETH10 Bridge Destinations Configured** (Task 51) - [ ] All 7 destinations configured - **Script**: `./scripts/check-bridge-config.sh` - [ ] **Bridge Router Integration Verified** (Task 52) - [ ] Bridge contracts can call Router - [ ] Router address correct --- ## F) Fees - [ ] **Fee Payment Mechanism Identified** (Task 59) - [ ] Fee token known (LINK) - [ ] Payment method confirmed - [ ] **LINK Token Availability** (Task 60) - [ ] LINK tokens available - [ ] Bridge contracts have LINK balance - [ ] **Fee Calculation Fixed** (Task 61) - [ ] Fee calculation working in scripts - **Script**: `./scripts/verify-fee-calculation.sh` --- ## G) Receiver - [ ] **Receiver Verified** (Task 68) - [ ] Receiver address valid - [ ] Receiver is EOA or implements interface - [ ] Receiver accessible on destination chain --- ## H) Oracle Network - [ ] **Commit Oracle Nodes Deployed** (Task 72) - [ ] 16 nodes deployed (VMIDs 5410-5425) - [ ] Nodes configured and running - [ ] **Execute Oracle Nodes Deployed** (Task 73) - [ ] 16 nodes deployed (VMIDs 5440-5455) - [ ] Nodes configured and running - [ ] **RMN Nodes Deployed** (Task 74) - [ ] 5-7 nodes deployed (VMIDs 5470-5474 or 5470-5476) - [ ] Nodes configured and running - [ ] **Ops/Admin Nodes Deployed** (Task 75) - [ ] 2 nodes deployed (VMIDs 5400-5401) - [ ] Nodes configured and running - [ ] **Monitoring Nodes Deployed** (Task 76) - [ ] 2 nodes deployed (VMIDs 5402-5403) - [ ] Nodes configured and running --- ## I) Monitoring - [ ] **CCIP Monitor Service Started** (Task 83) - [ ] Container running (VMID 3501) - [ ] Systemd service active - **Script**: `./scripts/check-ccip-monitor-health.sh` - [ ] **CCIP Monitor Configuration Verified** (Task 84) - [ ] Configuration file exists - [ ] All required variables set - [ ] **Message Indexing Implemented** (Task 91) - [ ] Database schema exists - [ ] Indexing logic implemented - [ ] **MessageSent Events Indexed** (Task 92) - [ ] Source chain events indexed - [ ] Events stored in database - [ ] **MessageExecuted Events Indexed** (Task 93) - [ ] Destination chain events indexed - [ ] Events linked to source events --- ## J) Testing - [ ] **Bridge Configuration Scripts Tested** (Task 107) - [ ] All scripts tested - [ ] All destinations can be configured - [ ] **Bridge Operations Tested** (Task 108) - [ ] Small amount bridged successfully - [ ] End-to-end flow verified - [ ] **Complete Bridge Flow Verified** (Task 115) - [ ] Wrap → Approve → Bridge → Receive - [ ] All steps successful - [ ] **Message Delivery Verified** (Task 116) - [ ] Messages delivered to destination - [ ] Messages executed successfully --- ## K) Security - [ ] **Contract Ownership Verified** (Task 123) - [ ] All owners identified - [ ] Owners documented - [ ] **Access Control Documented** (Task 124) - [ ] Access control mechanisms documented - [ ] Permissions documented --- ## L) Documentation - [ ] **CCIP Configuration Documentation Complete** (Task 131) - [ ] All components documented - [ ] All settings documented - [ ] **Contract Addresses Documented** (Task 132) - [ ] All addresses documented - [ ] Addresses verified --- ## M) Scripts - [ ] **Comprehensive Verification Script Created** (Task 139) - [ ] Script verifies all components - [ ] Script generates report - **Script**: `./scripts/verify-complete-ccip-setup.sh` --- ## Comprehensive Verification Run the comprehensive verification script: ```bash ./scripts/verify-complete-ccip-setup.sh ``` This script checks: - Router and Sender deployment - Bridge destination configuration - Token configuration - Fee configuration - Overall system health --- ## Related Documentation - [Complete Task Catalog](./CCIP_COMPLETE_TASK_CATALOG.md) - [CCIP Configuration Status](./CCIP_CONFIGURATION_STATUS.md) - [Bridge Contract Architecture](./BRIDGE_CONTRACT_ARCHITECTURE.md) --- **Last Updated**: 2025-01-12