Files
explorer-monorepo/docs/CCIP_VERIFICATION_CHECKLIST.md

282 lines
7.0 KiB
Markdown
Raw Normal View History

# 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 <pool_address>`
---
## 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