Files
smom-dbis-138/docs/deployment/MAINNET_DEPLOYMENT_COMPLETE.md
defiQUG 1fb7266469 Add Oracle Aggregator and CCIP Integration
- Introduced Aggregator.sol for Chainlink-compatible oracle functionality, including round-based updates and access control.
- Added OracleWithCCIP.sol to extend Aggregator with CCIP cross-chain messaging capabilities.
- Created .gitmodules to include OpenZeppelin contracts as a submodule.
- Developed a comprehensive deployment guide in NEXT_STEPS_COMPLETE_GUIDE.md for Phase 2 and smart contract deployment.
- Implemented Vite configuration for the orchestration portal, supporting both Vue and React frameworks.
- Added server-side logic for the Multi-Cloud Orchestration Portal, including API endpoints for environment management and monitoring.
- Created scripts for resource import and usage validation across non-US regions.
- Added tests for CCIP error handling and integration to ensure robust functionality.
- Included various new files and directories for the orchestration portal and deployment scripts.
2025-12-12 14:57:48 -08:00

137 lines
3.7 KiB
Markdown

# Complete Mainnet Deployment Requirements
## All Contracts Requiring Ethereum Mainnet Deployment
### 1. CCIP Integration Contracts (NEW - Production-Grade)
#### CCIPLogger
- **Status**: ❌ Not Deployed
- **Purpose**: Receives and logs Chain-138 transactions via Chainlink CCIP
- **Location**: `contracts/ccip-integration/CCIPLogger.sol`
- **Deployment**: `npm run deploy:logger:mainnet`
- **Dependencies**: CCIP Router (using Chainlink's official: `0x80226fc0Ee2b096224EeAc085Bb9a8cba1146f7D`)
- **Features**:
- Replay protection (batch ID tracking)
- Optional signature verification
- Source chain validation
- Event emission for indexing
### 2. WETH Bridge Contracts
#### CCIPWETH9Bridge
- **Status**: ❌ Not Deployed
- **Purpose**: Cross-chain WETH9 bridge
- **Location**: `contracts/ccip/CCIPWETH9Bridge.sol`
- **Deployment**: `./scripts/deployment/deploy-all-mainnet.sh`
- **Dependencies**: CCIP Router, WETH9 (already exists at `0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2`)
#### CCIPWETH10Bridge
- **Status**: ❌ Not Deployed
- **Purpose**: Cross-chain WETH10 bridge
- **Location**: `contracts/ccip/CCIPWETH10Bridge.sol`
- **Deployment**: `./scripts/deployment/deploy-all-mainnet.sh`
- **Dependencies**: CCIP Router, WETH10 (already exists at `0xf4BB2e28688e89fCcE3c0580D37d36A7672E8A9f`)
### 3. Optional Contracts (If Needed)
#### CCIPRouter (Custom)
- **Status**: ⚠️ Not Required
- **Note**: Using Chainlink's official router, only deploy if custom router needed
#### CCIPSender
- **Status**: ⚠️ Optional
- **Purpose**: Oracle cross-chain synchronization
- **Dependencies**: CCIP Router, Oracle Aggregator
#### CCIPReceiver
- **Status**: ⚠️ Optional
- **Purpose**: Oracle cross-chain synchronization
- **Dependencies**: CCIP Router, Oracle Aggregator
#### OracleAggregator
- **Status**: ⚠️ Optional
- **Purpose**: If oracle needed on Mainnet
- **Location**: `contracts/oracle/Aggregator.sol`
## Deployment Order
### Recommended Sequence
1. **CCIPLogger** (Ethereum Mainnet)
- First contract to deploy
- No dependencies on other new contracts
- Required for CCIPTxReporter configuration
2. **CCIPTxReporter** (Chain-138)
- Deploy after CCIPLogger
- Needs CCIPLogger address as destination
3. **CCIPWETH9Bridge** (Ethereum Mainnet)
- Can deploy in parallel with CCIPWETH10Bridge
- Uses existing WETH9
4. **CCIPWETH10Bridge** (Ethereum Mainnet)
- Can deploy in parallel with CCIPWETH9Bridge
- Uses existing WETH10
## Deployment Commands
### CCIP Integration
```bash
# Deploy CCIPLogger
npm run deploy:logger:mainnet
# Deploy CCIPTxReporter (on Chain-138)
npm run deploy:reporter:chain138
```
### WETH Bridges
```bash
# Deploy both bridges
./scripts/deployment/deploy-all-mainnet.sh
```
## Configuration Requirements
### Required Environment Variables
```env
# Ethereum Mainnet
PRIVATE_KEY=0x...
ETHEREUM_MAINNET_RPC=https://...
ETHERSCAN_API_KEY=...
CCIP_ETH_ROUTER=0x80226fc0Ee2b096224EeAc085Bb9a8cba1146f7D
ETH_MAINNET_SELECTOR=0x500147
# Chain-138
CHAIN138_RPC_URL=https://...
CCIP_CHAIN138_ROUTER=0x...
CHAIN138_SELECTOR=0x000000000000008a
# Optional
AUTHORIZED_SIGNER=0x...
```
## Cost Estimates (at 2.5 gwei)
- CCIPLogger: ~0.001 ETH
- CCIPTxReporter: ~0.001 ETH (on Chain-138)
- CCIPWETH9Bridge: ~0.0006575 ETH
- CCIPWETH10Bridge: ~0.0006575 ETH
- **Total**: ~0.003315 ETH (~$8.29)
## Post-Deployment
1. Verify all contracts on Etherscan
2. Configure bridge destinations
3. Set up watcher/relayer service
4. Test cross-chain transfers
5. Monitor and alert
## Documentation
- **CCIP Integration**: `docs/ccip-integration/README.md`
- **Deployment Guide**: `docs/ccip-integration/DEPLOYMENT_GUIDE.md`
- **Quick Start**: `docs/ccip-integration/QUICK_START.md`
- **Status**: `docs/MAINNET_DEPLOYMENT_STATUS.md`