Files
smom-dbis-138/docs/deployment/MAINNET_DEPLOYMENT_STATUS.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

5.5 KiB

Mainnet Deployment Status

Overview

This document tracks the status of smart contract deployments to Ethereum Mainnet.

Contracts Requiring Mainnet Deployment

Primary Contracts (Required)

  1. CCIPWETH9Bridge

    • Status: Not Deployed
    • Dependencies: CCIP Router (using Chainlink's official router)
    • WETH9: Already exists at 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2
    • Deployment Script: script/DeployCCIPWETH9Bridge.s.sol
  2. CCIPWETH10Bridge

    • Status: Not Deployed
    • Dependencies: CCIP Router (using Chainlink's official router)
    • WETH10: Already exists at 0xf4BB2e28688e89fCcE3c0580D37d36A7672E8A9f
    • Deployment Script: script/DeployCCIPWETH10Bridge.s.sol
  3. CCIPLogger NEW

    • Status: Not Deployed
    • Purpose: Receives and logs Chain-138 transactions via CCIP
    • Dependencies: CCIP Router (using Chainlink's official router)
    • Deployment Script: scripts/ccip-deployment/deploy-ccip-logger.js
    • Location: contracts/ccip-integration/CCIPLogger.sol

Optional Contracts (If Needed)

  1. CCIPRouter (Custom)

    • Status: ⚠️ Not Required (using Chainlink's official router)
    • Official Router: 0x80226fc0Ee2b096224EeAc085Bb9a8cba1146f7D
    • Note: Only deploy if custom router is needed
  2. CCIPSender

    • Status: ⚠️ Optional (for oracle cross-chain sync)
    • Dependencies: CCIP Router, Oracle Aggregator
    • Deployment Script: Needs to be created
  3. CCIPReceiver

    • Status: ⚠️ Optional (for oracle cross-chain sync)
    • Dependencies: CCIP Router, Oracle Aggregator
    • Deployment Script: Needs to be created
  4. OracleAggregator

    • Status: ⚠️ Optional (if oracle needed on Mainnet)
    • Deployment Script: script/DeployOracle.s.sol

CCIP Integration Contracts

New Production-Grade CCIP System

CCIPLogger (Ethereum Mainnet)

  • Receives Chain-138 transactions via CCIP
  • Implements replay protection
  • Supports batch verification
  • Optional signature validation

CCIPTxReporter (Chain-138)

  • Reports Chain-138 transactions to Ethereum
  • Supports single and batch reporting
  • Automatic fee estimation and refund

Watcher/Relayer Service (Off-chain)

  • Monitors Chain-138 for transactions
  • Batches and relays via CCIP
  • Postgres outbox pattern for reliability
  • Full monitoring and alerting

Deployment Configuration

CCIP Router

  • Official Chainlink Router (Ethereum): 0x80226fc0Ee2b096224EeAc085Bb9a8cba1146f7D
  • Chain-138 Router: Check CCIP Directory or deploy custom router
  • LINK Token: 0x514910771AF9Ca656af840dff83E8264EcF986CA

WETH Addresses

  • WETH9: 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 (already deployed)
  • WETH10: 0xf4BB2e28688e89fCcE3c0580D37d36A7672E8A9f (already deployed)

Chain Selectors (from CCIP Directory)

  • Ethereum Mainnet: Update from CCIP Directory
  • Chain-138: Update from CCIP Directory

Current Deployment Status

Wallet Status

  • Address: 0x4A666F96fC8764181194447A7dFdb7d471b301C8
  • ETH Balance: 0.002811732488743541 ETH
  • Required: 0.025 ETH (minimum)
  • Status: Insufficient funds

Deployment Blockers

  1. Insufficient ETH: Wallet needs at least 0.025 ETH for gas fees
  2. Gas Price: Using conservative 2.5 gwei maximum cap
  3. CCIP Router Addresses: Need to verify Chain-138 router address

Deployment Steps

Step 1: Fund Wallet

# Send at least 0.025 ETH to deployer wallet
# Address: 0x4A666F96fC8764181194447A7dFdb7d471b301C8

Step 2: Deploy CCIP Contracts

Option A: Deploy All CCIP Contracts

# Deploy CCIPLogger to Ethereum Mainnet
npm run deploy:logger:mainnet

# Deploy CCIPTxReporter to Chain-138
npm run deploy:reporter:chain138

Option B: Deploy WETH Bridges

./scripts/deployment/deploy-all-mainnet.sh

Step 3: Verify Contracts

# Verify CCIPLogger on Etherscan
npx hardhat verify --network mainnet <ADDRESS> <ROUTER> <SIGNER> <SELECTOR>

# Verify CCIPTxReporter (if explorer available)
npx hardhat verify --network chain138 <ADDRESS> <ROUTER> <SELECTOR> <RECEIVER>

Step 4: Set Up Watcher/Relayer

cd watcher
npm install
npm run build
npm start

Deployment Scripts

  • scripts/deployment/deploy-all-mainnet.sh - Deploy WETH bridges
  • scripts/ccip-deployment/deploy-ccip-logger.js - Deploy CCIPLogger
  • scripts/ccip-deployment/deploy-ccip-reporter.js - Deploy CCIPTxReporter
  • scripts/ccip-deployment/deploy-all-ccip-mainnet.sh - Deploy all CCIP contracts
  • scripts/deployment/check-mainnet-deployment-status.sh - Check deployment status
  • scripts/deployment/check-wallet-balances.sh - Check wallet funding

Next Steps

  1. Identify all contracts needing Mainnet deployment
  2. Create deployment scripts
  3. Create CCIP integration system
  4. Fund wallet with sufficient ETH
  5. Deploy CCIPLogger to Ethereum Mainnet
  6. Deploy CCIPTxReporter to Chain-138
  7. Deploy CCIPWETH9Bridge
  8. Deploy CCIPWETH10Bridge
  9. Verify contracts on Etherscan
  10. Configure bridge destinations
  11. Set up watcher/relayer service
  12. Test cross-chain transfers

Notes

  • WETH9 and WETH10 are already deployed on Mainnet at canonical addresses
  • Using Chainlink's official CCIP Router (no custom router needed)
  • Gas estimates use conservative 2.5 gwei maximum cap
  • All deployment addresses will be saved to .env file
  • CCIP integration provides production-grade transaction logging from Chain-138 to Ethereum