Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
- ADD_CHAIN138_TO_LEDGER_LIVE: Ledger form done; public code review repo bis-innovations/LedgerLive; init/push commands - CONTRACT_DEPLOYMENT_RUNBOOK: Chain 138 gas price 1 gwei, 36-addr check, TransactionMirror workaround - CONTRACT_*: AddressMapper, MirrorManager deployed 2026-02-12; 36-address on-chain check - NEXT_STEPS_FOR_YOU: Ledger done; steps completable now (no LAN); run-completable-tasks-from-anywhere - MASTER_INDEX, OPERATOR_OPTIONAL, SMART_CONTRACTS_INVENTORY_SIMPLE: updates - LEDGER_BLOCKCHAIN_INTEGRATION_COMPLETE: bis-innovations/LedgerLive reference Co-authored-by: Cursor <cursoragent@cursor.com>
239 lines
5.8 KiB
Markdown
239 lines
5.8 KiB
Markdown
# Chain 138 Deployment Readiness Checklist
|
|
|
|
**Last Updated:** 2026-01-31
|
|
**Document Version:** 1.0
|
|
**Status:** Active Documentation
|
|
|
|
---
|
|
|
|
**Date**: $(date)
|
|
**Purpose**: Verify all prerequisites are met before deploying smart contracts
|
|
|
|
---
|
|
|
|
## ✅ Network Readiness
|
|
|
|
### RPC Endpoints
|
|
|
|
- [x] **RPC-01 (VMID 2500)**: ✅ Operational
|
|
- IP: 192.168.11.250
|
|
- HTTP RPC: Port 8545 ✅ Listening
|
|
- WebSocket RPC: Port 8546 ✅ Listening
|
|
- P2P: Port 30303 ✅ Listening
|
|
- Metrics: Port 9545 ✅ Listening
|
|
- Status: Active, syncing blocks
|
|
|
|
- [ ] **RPC-02 (VMID 2501)**: ⏳ Check status
|
|
- [ ] **RPC-03 (VMID 2502)**: ⏳ Check status
|
|
|
|
### Network Connectivity
|
|
|
|
- [x] RPC endpoint responds to `eth_blockNumber`
|
|
- [x] RPC endpoint responds to `eth_chainId`
|
|
- [x] Chain ID verified: 138
|
|
- [x] Network producing blocks (block number > 0)
|
|
|
|
### Validator Network
|
|
|
|
- [ ] All validators (1000-1004) operational
|
|
- [ ] Network consensus active
|
|
- [ ] Block production stable
|
|
|
|
---
|
|
|
|
## ✅ Configuration Readiness
|
|
|
|
### Deployment Scripts
|
|
|
|
- [x] **Deployment script updated**: `deploy-contracts-once-ready.sh`
|
|
- IP address updated: `10.3.1.4:8545` → `192.168.11.250:8545`
|
|
- Location: `/home/intlc/projects/smom-dbis-138/scripts/deployment/`
|
|
|
|
- [x] **Installation scripts updated**: All service install scripts
|
|
- Oracle Publisher: ✅ Updated
|
|
- CCIP Monitor: ✅ Updated
|
|
- Keeper: ✅ Updated
|
|
- Financial Tokenization: ✅ Updated
|
|
- Firefly: ✅ Updated
|
|
- Cacti: ✅ Updated
|
|
- Blockscout: ✅ Updated
|
|
|
|
### Configuration Templates
|
|
|
|
- [x] **Besu RPC config template**: ✅ Updated
|
|
- Deprecated options removed
|
|
- File: `templates/besu-configs/config-rpc.toml`
|
|
|
|
- [x] **Service installation script**: ✅ Updated
|
|
- Config file name corrected
|
|
- File: `install/besu-rpc-install.sh`
|
|
|
|
---
|
|
|
|
## ⏳ Deployment Prerequisites
|
|
|
|
### Environment Setup
|
|
|
|
- [ ] **Source project `.env` file configured**
|
|
- Location: `/home/intlc/projects/smom-dbis-138/.env`
|
|
- Required variables:
|
|
- `RPC_URL_138=http://192.168.11.250:8545`
|
|
- `PRIVATE_KEY=<deployer-private-key>`
|
|
- `RESERVE_ADMIN=<admin-address>`
|
|
- `KEEPER_ADDRESS=<keeper-address>`
|
|
- `ORACLE_PRICE_FEED=<oracle-address>` (after Oracle deployment)
|
|
|
|
### Deployer Account
|
|
|
|
- [ ] **Deployer account has sufficient balance**
|
|
- Check balance: `cast balance <deployer-address> --rpc-url http://192.168.11.250:8545`
|
|
- Minimum recommended: 1 ETH equivalent
|
|
|
|
### Network Verification
|
|
|
|
- [x] **Network is producing blocks**
|
|
- Verified: ✅ Yes
|
|
- Current block: > 11,200 (as of troubleshooting)
|
|
|
|
- [x] **Chain ID correct**
|
|
- Expected: 138
|
|
- Verified: ✅ Yes
|
|
|
|
---
|
|
|
|
## 📋 Contract Deployment Order
|
|
|
|
### Phase 1: Core Infrastructure (Priority 1)
|
|
|
|
1. [ ] **Oracle Contract**
|
|
- Script: `DeployOracle.s.sol`
|
|
- Dependencies: None
|
|
- Required for: Keeper, Price Feeds
|
|
|
|
2. [ ] **CCIP Router**
|
|
- Script: `DeployCCIPRouter.s.sol`
|
|
- Dependencies: None
|
|
- Required for: CCIP Sender, Cross-chain operations
|
|
|
|
3. [ ] **CCIP Sender**
|
|
- Script: `DeployCCIPSender.s.sol`
|
|
- Dependencies: CCIP Router
|
|
- Required for: Cross-chain messaging
|
|
|
|
### Phase 2: Supporting Contracts (Priority 2)
|
|
|
|
4. [ ] **Multicall**
|
|
- Script: `DeployMulticall.s.sol`
|
|
- Dependencies: None
|
|
- Utility contract
|
|
|
|
5. [ ] **MultiSig**
|
|
- Script: `DeployMultiSig.s.sol`
|
|
- Dependencies: None
|
|
- Governance contract
|
|
|
|
### Phase 3: Application Contracts (Priority 3)
|
|
|
|
6. [ ] **Price Feed Keeper**
|
|
- Script: `reserve/DeployKeeper.s.sol`
|
|
- Dependencies: Oracle Price Feed
|
|
- Required for: Automated price updates
|
|
|
|
7. [ ] **Reserve System**
|
|
- Script: `reserve/DeployReserveSystem.s.sol`
|
|
- Dependencies: Token Factory (if applicable)
|
|
- Required for: Financial tokenization
|
|
|
|
---
|
|
|
|
## 🔧 Service Configuration
|
|
|
|
### After Contract Deployment
|
|
|
|
Once contracts are deployed, update service configurations:
|
|
|
|
- [ ] **Oracle Publisher (VMID 3500)**
|
|
- Update `.env` with Oracle contract address
|
|
- Restart service
|
|
|
|
- [ ] **CCIP Monitor (VMID 3501)**
|
|
- Update `.env` with CCIP Router and Sender addresses
|
|
- Restart service
|
|
|
|
- [ ] **Keeper (VMID 3502)**
|
|
- Update `.env` with Keeper contract address
|
|
- Restart service
|
|
|
|
- [ ] **Financial Tokenization (VMID 3503)**
|
|
- Update `.env` with Reserve System address
|
|
- Restart service
|
|
|
|
---
|
|
|
|
## ✅ Verification Steps
|
|
|
|
### After Deployment
|
|
|
|
1. **Verify Contracts on Chain**
|
|
```bash
|
|
cast code <contract-address> --rpc-url http://192.168.11.250:8545
|
|
```
|
|
|
|
2. **Verify Service Connections**
|
|
```bash
|
|
# Test Oracle Publisher
|
|
pct exec 3500 -- curl -X POST http://localhost:8000/health
|
|
|
|
# Test CCIP Monitor
|
|
pct exec 3501 -- curl -X POST http://localhost:8000/health
|
|
|
|
# Test Keeper
|
|
pct exec 3502 -- curl -X POST http://localhost:3000/health
|
|
```
|
|
|
|
3. **Check Service Logs**
|
|
```bash
|
|
# Oracle Publisher
|
|
pct exec 3500 -- journalctl -u oracle-publisher -f
|
|
|
|
# CCIP Monitor
|
|
pct exec 3501 -- journalctl -u ccip-monitor -f
|
|
|
|
# Keeper
|
|
pct exec 3502 -- journalctl -u price-feed-keeper -f
|
|
```
|
|
|
|
---
|
|
|
|
## 📊 Current Status Summary
|
|
|
|
### Completed ✅
|
|
|
|
- ✅ RPC-01 (VMID 2500) troubleshooting and fix
|
|
- ✅ Configuration files updated
|
|
- ✅ Deployment scripts updated with correct IPs
|
|
- ✅ Network verified (producing blocks, Chain ID 138)
|
|
- ✅ RPC endpoint accessible and responding
|
|
|
|
### Pending ⏳
|
|
|
|
- ⏳ Verify RPC-02 and RPC-03 status
|
|
- ⏳ Configure deployer account and `.env` file
|
|
- ⏳ Deploy contracts (waiting for user action)
|
|
- ⏳ Update service configurations with deployed addresses
|
|
|
|
---
|
|
|
|
## 🚀 Ready for Deployment
|
|
|
|
**Status**: ✅ **READY** (pending deployer account setup)
|
|
|
|
All infrastructure, scripts, and documentation are in place. The network is operational and ready for contract deployment.
|
|
|
|
**Next Action**: Configure deployer account and `.env` file, then proceed with contract deployment.
|
|
|
|
---
|
|
|
|
**Last Updated**: $(date)
|
|
|