2026-02-10 11:32:49 -08:00
|
|
|
# CCIPReceiver Re-deployment Status
|
|
|
|
|
|
|
|
|
|
**Date**: 2025-12-24
|
|
|
|
|
**Status**: ⚠️ **IN PROGRESS** - Compilation issues blocking deployment
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 📋 Action Required
|
|
|
|
|
|
|
|
|
|
**CCIPReceiver Re-deployment** (ChainID 138)
|
|
|
|
|
- **Current Address**: `0x95007eC50d0766162F77848Edf7bdC4eBA147fb4`
|
|
|
|
|
- **Issue**: Code size only 3 bytes (not actually deployed)
|
|
|
|
|
- **Action**: Re-deploy using fixed deployment script
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## ✅ Completed Actions
|
|
|
|
|
|
|
|
|
|
### 1. Fixed Deployment Script
|
|
|
|
|
- **File**: `smom-dbis-138/script/DeployCCIPReceiver.s.sol`
|
|
|
|
|
- **Issue**: Script was missing `ORACLE_AGGREGATOR_ADDRESS` parameter
|
|
|
|
|
- **Fix**: Added `oracleAggregator` parameter to constructor call
|
|
|
|
|
- **Status**: ✅ **FIXED**
|
|
|
|
|
|
|
|
|
|
**Before:**
|
|
|
|
|
```solidity
|
|
|
|
|
CCIPReceiver receiver = new CCIPReceiver(ccipRouter);
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
**After:**
|
|
|
|
|
```solidity
|
|
|
|
|
address oracleAggregator = vm.envAddress("ORACLE_AGGREGATOR_ADDRESS");
|
|
|
|
|
CCIPReceiver receiver = new CCIPReceiver(ccipRouter, oracleAggregator);
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### 2. Fixed OraclePriceFeed Compilation Error
|
|
|
|
|
- **File**: `smom-dbis-138/contracts/reserve/OraclePriceFeed.sol`
|
|
|
|
|
- **Issue**: `updatePriceFeed` was `external` and couldn't be called internally
|
|
|
|
|
- **Fix**: Changed `updatePriceFeed` from `external` to `public`
|
|
|
|
|
- **Status**: ✅ **FIXED**
|
|
|
|
|
|
|
|
|
|
### 3. Verified Environment Variables
|
|
|
|
|
- **PRIVATE_KEY**: ✅ Set
|
2026-03-24 22:49:29 -07:00
|
|
|
- **CCIP_ROUTER_ADDRESS**: ✅ `0x42DAb7b888Dd382bD5Adcf9E038dBF1fD03b4817`
|
2026-02-10 11:32:49 -08:00
|
|
|
- **ORACLE_AGGREGATOR_ADDRESS**: ✅ `0x99b3511a2d315a497c8112c1fdd8d508d4b1e506`
|
|
|
|
|
- **RPC_URL**: ✅ `http://192.168.11.250:8545`
|
|
|
|
|
- **Status**: ✅ **VERIFIED**
|
|
|
|
|
|
|
|
|
|
### 4. Verified Network Connectivity
|
|
|
|
|
- **RPC Endpoint**: ✅ Accessible
|
|
|
|
|
- **Deployer Balance**: ✅ 999.63 ETH (sufficient)
|
|
|
|
|
- **Network Status**: ✅ Active (block 194687+)
|
|
|
|
|
- **Status**: ✅ **VERIFIED**
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## ⚠️ Remaining Issues
|
|
|
|
|
|
|
|
|
|
### 1. Compilation Errors in Other Contracts
|
|
|
|
|
|
|
|
|
|
**PriceFeedKeeper.sol** (Line 251):
|
|
|
|
|
```
|
|
|
|
|
Error (7576): Undeclared identifier. "checkUpkeep" is not (or not yet) visible at this point.
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
**Issue**: `checkUpkeep` is `external` and being called internally.
|
|
|
|
|
|
|
|
|
|
**Fix Required**: Change `checkUpkeep` from `external` to `public` in `PriceFeedKeeper.sol`, or use `this.checkUpkeep()`.
|
|
|
|
|
|
|
|
|
|
**File**: `smom-dbis-138/contracts/reserve/PriceFeedKeeper.sol`
|
|
|
|
|
|
|
|
|
|
**Location**: Line 86 (function definition) and Line 251 (function call)
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 🔧 Next Steps
|
|
|
|
|
|
|
|
|
|
### Immediate
|
|
|
|
|
1. ⚠️ Fix `PriceFeedKeeper.sol` compilation error
|
|
|
|
|
- Change `checkUpkeep` from `external` to `public`
|
|
|
|
|
- Or change call to `this.checkUpkeep()`
|
|
|
|
|
|
|
|
|
|
2. ⚠️ Re-deploy CCIPReceiver
|
|
|
|
|
```bash
|
|
|
|
|
cd /home/intlc/projects/proxmox/smom-dbis-138
|
|
|
|
|
source ../explorer-monorepo/.env
|
|
|
|
|
export PRIVATE_KEY=$(grep "^PRIVATE_KEY=" ../explorer-monorepo/.env | grep -v "^#" | tail -1 | cut -d'=' -f2)
|
|
|
|
|
export CCIP_ROUTER_ADDRESS=$(grep "^CCIP_ROUTER_ADDRESS=" ../explorer-monorepo/.env | grep -v "^#" | tail -1 | cut -d'=' -f2)
|
|
|
|
|
export ORACLE_AGGREGATOR_ADDRESS=$(grep "^ORACLE_AGGREGATOR_ADDRESS=" ../explorer-monorepo/.env | grep -v "^#" | tail -1 | cut -d'=' -f2)
|
|
|
|
|
export RPC_URL=http://192.168.11.250:8545
|
|
|
|
|
|
|
|
|
|
forge script script/DeployCCIPReceiver.s.sol:DeployCCIPReceiver \
|
|
|
|
|
--rpc-url "$RPC_URL" \
|
|
|
|
|
--broadcast \
|
|
|
|
|
--legacy \
|
|
|
|
|
--gas-price 20000000000 \
|
|
|
|
|
--skip-simulation \
|
|
|
|
|
--via-ir
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
3. ⚠️ Verify deployment on-chain
|
|
|
|
|
```bash
|
|
|
|
|
cast code <NEW_ADDRESS> --rpc-url http://192.168.11.250:8545
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
4. ⚠️ Update .env with new address (if different)
|
|
|
|
|
```bash
|
|
|
|
|
# Update explorer-monorepo/.env
|
|
|
|
|
CCIP_RECEIVER=<NEW_ADDRESS>
|
|
|
|
|
CCIP_RECEIVER_138=<NEW_ADDRESS>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 📄 Files Modified
|
|
|
|
|
|
|
|
|
|
1. ✅ `smom-dbis-138/script/DeployCCIPReceiver.s.sol`
|
|
|
|
|
- Added `ORACLE_AGGREGATOR_ADDRESS` parameter
|
|
|
|
|
|
|
|
|
|
2. ✅ `smom-dbis-138/contracts/reserve/OraclePriceFeed.sol`
|
|
|
|
|
- Changed `updatePriceFeed` from `external` to `public`
|
|
|
|
|
|
|
|
|
|
3. ⚠️ `smom-dbis-138/contracts/reserve/PriceFeedKeeper.sol`
|
|
|
|
|
- **NEEDS FIX**: Change `checkUpkeep` from `external` to `public`
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 📊 Deployment Configuration
|
|
|
|
|
|
|
|
|
|
### Constructor Parameters
|
2026-03-24 22:49:29 -07:00
|
|
|
- **CCIP Router**: `0x42DAb7b888Dd382bD5Adcf9E038dBF1fD03b4817`
|
2026-02-10 11:32:49 -08:00
|
|
|
- **Oracle Aggregator**: `0x99b3511a2d315a497c8112c1fdd8d508d4b1e506`
|
|
|
|
|
|
|
|
|
|
### Deployment Settings
|
|
|
|
|
- **Gas Price**: 20 gwei (20000000000 wei)
|
|
|
|
|
- **Gas Limit**: 5,000,000 (if needed)
|
|
|
|
|
- **Transaction Type**: Legacy
|
|
|
|
|
- **RPC URL**: `http://192.168.11.250:8545`
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 🔍 Verification Checklist
|
|
|
|
|
|
|
|
|
|
After deployment:
|
|
|
|
|
- [ ] Contract code size > 100 bytes
|
|
|
|
|
- [ ] Contract address matches expected format
|
|
|
|
|
- [ ] Constructor parameters verified on-chain
|
|
|
|
|
- [ ] .env file updated with new address
|
|
|
|
|
- [ ] Documentation updated
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
**Last Updated**: 2025-12-24
|
|
|
|
|
**Status**: ⚠️ **BLOCKED** - Compilation errors need to be fixed before deployment
|