442 lines
14 KiB
Markdown
442 lines
14 KiB
Markdown
|
|
# Complete Task Review and List
|
||
|
|
|
||
|
|
**Last Updated:** 2026-01-31
|
||
|
|
**Document Version:** 1.0
|
||
|
|
**Status:** Active Documentation
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
**Date**: 2026-01-18
|
||
|
|
**Status**: 📋 **COMPREHENSIVE REVIEW & TASK LIST**
|
||
|
|
**Last Work Session**: Decimal fixes, permissioning verification, deployment attempts
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🔍 Review of Last Work Session
|
||
|
|
|
||
|
|
### ✅ Completed Work
|
||
|
|
|
||
|
|
#### 1. Decimal/Wei Conversion Errors - **FIXED**
|
||
|
|
|
||
|
|
**Issue Found**: Priority fee calculation was incorrectly setting minimum to 1 gwei, which could exceed max fee in EIP-1559 transactions.
|
||
|
|
|
||
|
|
**Fix Applied**:
|
||
|
|
- ✅ Get base fee from latest block dynamically
|
||
|
|
- ✅ Calculate available fee space (maxFee - baseFee)
|
||
|
|
- ✅ Calculate priority fee as 10% of available (not max)
|
||
|
|
- ✅ Use smaller minimum (0.01 gwei instead of 1 gwei)
|
||
|
|
- ✅ Verify total fee (base + priority) <= max fee
|
||
|
|
- ✅ Adjust priority fee if it exceeds max
|
||
|
|
|
||
|
|
**Files Modified**:
|
||
|
|
- ✅ `scripts/deploy-phase3-bridges-besu-complete.sh` - Priority fee calculation fixed
|
||
|
|
- ✅ `docs/06-besu/DECIMAL_ERRORS_FIXED.md` - Documentation created
|
||
|
|
|
||
|
|
**Verification**:
|
||
|
|
- ✅ All decimal conversions verified correct
|
||
|
|
- ✅ Gas price calculations verified (1.1 gwei)
|
||
|
|
- ✅ Wei to gwei conversions verified
|
||
|
|
|
||
|
|
#### 2. Account Permissioning - **VERIFIED**
|
||
|
|
|
||
|
|
**Status**: ✅ **NO BLOCKING PERMISSIONING**
|
||
|
|
|
||
|
|
- Allowlist is **empty** (development mode)
|
||
|
|
- Empty allowlist = **all accounts allowed**
|
||
|
|
- Deployer address: `0x4A666F96fC8764181194447A7dFdb7d471b301C8`
|
||
|
|
- **Result**: Account permissioning is NOT blocking deployments
|
||
|
|
|
||
|
|
**Files Checked**:
|
||
|
|
- ✅ `smom-dbis-138/config/permissions-accounts.toml` - Empty allowlist confirmed
|
||
|
|
- ✅ RPC node configuration - Permissioning enabled but allowlist empty
|
||
|
|
|
||
|
|
#### 3. Deployment Scripts - **CREATED/IMPROVED**
|
||
|
|
|
||
|
|
**Scripts Created/Updated**:
|
||
|
|
- ✅ `scripts/deploy-phase3-bridges-besu-complete.sh` - Fixed with correct decimal calculations
|
||
|
|
- ✅ `scripts/deploy-bridges-direct-cast.sh` - New script for direct cast send deployment
|
||
|
|
- ✅ `scripts/calculate-chain138-gas-price.sh` - Verified correct
|
||
|
|
|
||
|
|
**Features**:
|
||
|
|
- ✅ Besu pre-flight checks (chain ID, block production, balance, EIP-1559)
|
||
|
|
- ✅ Dynamic gas price calculation
|
||
|
|
- ✅ EIP-1559 transaction support with correct priority fee
|
||
|
|
- ✅ Legacy transaction fallback
|
||
|
|
|
||
|
|
#### 4. Deployment Attempts - **BLOCKED**
|
||
|
|
|
||
|
|
**Issue**: "Replacement transaction underpriced" errors
|
||
|
|
|
||
|
|
**Attempts Made**:
|
||
|
|
- ✅ Tried with 1.1 gwei (calculated optimal)
|
||
|
|
- ✅ Tried with 1.5 gwei (higher)
|
||
|
|
- ✅ Tried with 2.0 gwei (much higher)
|
||
|
|
- ✅ Cleared broadcast cache
|
||
|
|
- ✅ Checked for pending transactions
|
||
|
|
|
||
|
|
**Current Status**:
|
||
|
|
- ⚠️ Transactions not being mined
|
||
|
|
- ⚠️ No pending transactions in mempool
|
||
|
|
- ⚠️ Contracts not deployed
|
||
|
|
|
||
|
|
**Possible Causes**:
|
||
|
|
1. Stuck transaction at same nonce
|
||
|
|
2. Network-specific gas price requirements
|
||
|
|
3. Transaction pool issues on Besu
|
||
|
|
4. Account nonce mismatch
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 📋 Complete Task List for Completion
|
||
|
|
|
||
|
|
### 🚨 CRITICAL IMMEDIATE TASKS (Phase 3.2)
|
||
|
|
|
||
|
|
#### Task 1: Resolve Transaction Deployment Issues
|
||
|
|
|
||
|
|
**Status**: ⏳ **BLOCKED**
|
||
|
|
**Priority**: 🔴 **CRITICAL**
|
||
|
|
**Estimated Time**: 1-2 hours
|
||
|
|
|
||
|
|
**Sub-tasks**:
|
||
|
|
1. **Investigate "Replacement transaction underpriced" error**
|
||
|
|
- [ ] Check for stuck transactions at deployer nonce
|
||
|
|
- [ ] Verify transaction pool status on Besu node
|
||
|
|
- [ ] Check Besu node logs for rejection reasons
|
||
|
|
- [ ] Verify nonce is correct (current: 13104)
|
||
|
|
|
||
|
|
2. **Try alternative deployment methods**
|
||
|
|
- [ ] Use `cast send` directly with explicit nonce
|
||
|
|
- [ ] Try with significantly higher gas price (5-10 gwei)
|
||
|
|
- [ ] Use nonce override if transaction is stuck
|
||
|
|
- [ ] Try deploying from different account (if available)
|
||
|
|
|
||
|
|
3. **Verify network status**
|
||
|
|
- [ ] Confirm blocks are being produced
|
||
|
|
- [ ] Verify validators are active
|
||
|
|
- [ ] Check network consensus status
|
||
|
|
- [ ] Verify RPC node is synced
|
||
|
|
|
||
|
|
**Files to Check**:
|
||
|
|
- Besu node logs: `/var/log/besu/` or similar
|
||
|
|
- Transaction pool: `cast rpc txpool_inspect --rpc-url $RPC`
|
||
|
|
- Block production: Monitor `cast block-number --rpc-url $RPC`
|
||
|
|
|
||
|
|
#### Task 2: Deploy WETH9 Bridge Contract
|
||
|
|
|
||
|
|
**Status**: ⏳ **PENDING** (blocked by Task 1)
|
||
|
|
**Priority**: 🔴 **CRITICAL**
|
||
|
|
**Estimated Time**: 15 minutes (after Task 1)
|
||
|
|
|
||
|
|
**Contract**: `CCIPWETH9Bridge.sol`
|
||
|
|
**Expected Address**: `0x646e0026F8B5BCB94986377a25Da6f89BdCbBF6e` (from simulation)
|
||
|
|
|
||
|
|
**Deployment Command**:
|
||
|
|
```bash
|
||
|
|
cd smom-dbis-138
|
||
|
|
forge script script/DeployCCIPWETH9Bridge.s.sol:DeployCCIPWETH9Bridge \
|
||
|
|
--rpc-url "$RPC_URL_138" \
|
||
|
|
--broadcast \
|
||
|
|
--private-key "$PRIVATE_KEY" \
|
||
|
|
--with-gas-price "$MAX_FEE" \
|
||
|
|
--priority-gas-price "$PRIORITY_FEE" \
|
||
|
|
-vv
|
||
|
|
```
|
||
|
|
|
||
|
|
**Verification**:
|
||
|
|
- [ ] Contract deployed at expected address
|
||
|
|
- [ ] Code size > 1000 bytes
|
||
|
|
- [ ] Admin set correctly
|
||
|
|
- [ ] CCIP Router configured
|
||
|
|
- [ ] WETH9 address configured
|
||
|
|
- [ ] Fee token configured
|
||
|
|
|
||
|
|
**Update .env**:
|
||
|
|
- [ ] Add `CCIPWETH9BRIDGE_ADDRESS=0x...`
|
||
|
|
|
||
|
|
#### Task 3: Deploy WETH10 Bridge Contract
|
||
|
|
|
||
|
|
**Status**: ⏳ **PENDING** (blocked by Task 1)
|
||
|
|
**Priority**: 🔴 **CRITICAL**
|
||
|
|
**Estimated Time**: 15 minutes (after Task 1)
|
||
|
|
|
||
|
|
**Contract**: `CCIPWETH10Bridge.sol`
|
||
|
|
**Expected Address**: TBD (from simulation)
|
||
|
|
|
||
|
|
**Deployment Command**:
|
||
|
|
```bash
|
||
|
|
cd smom-dbis-138
|
||
|
|
forge script script/DeployCCIPWETH10Bridge.s.sol:DeployCCIPWETH10Bridge \
|
||
|
|
--rpc-url "$RPC_URL_138" \
|
||
|
|
--broadcast \
|
||
|
|
--private-key "$PRIVATE_KEY" \
|
||
|
|
--with-gas-price "$MAX_FEE" \
|
||
|
|
--priority-gas-price "$PRIORITY_FEE" \
|
||
|
|
-vv
|
||
|
|
```
|
||
|
|
|
||
|
|
**Verification**:
|
||
|
|
- [ ] Contract deployed
|
||
|
|
- [ ] Code size > 1000 bytes
|
||
|
|
- [ ] Admin set correctly
|
||
|
|
- [ ] CCIP Router configured
|
||
|
|
- [ ] WETH10 address configured
|
||
|
|
- [ ] Fee token configured
|
||
|
|
|
||
|
|
**Update .env**:
|
||
|
|
- [ ] Add `CCIPWETH10BRIDGE_ADDRESS=0x...`
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### 📍 PHASE 3.4: Configure Bridge Destinations
|
||
|
|
|
||
|
|
**Status**: ⏳ **PENDING** (after Phase 3.2)
|
||
|
|
**Priority**: 🟡 **HIGH**
|
||
|
|
**Estimated Time**: 30 minutes
|
||
|
|
|
||
|
|
#### Task 4: Configure WETH9 Bridge with Mainnet Destination
|
||
|
|
|
||
|
|
**Actions**:
|
||
|
|
- [ ] Get Mainnet chain selector: `5009297550715157269` (Ethereum Mainnet)
|
||
|
|
- [ ] Get Mainnet WETH9 Bridge address: `0x3304b747E565a97ec8AC220b0B6A1f6ffDB837e6`
|
||
|
|
- [ ] Call `addDestination()` on ChainID 138 WETH9 Bridge:
|
||
|
|
```solidity
|
||
|
|
addDestination(
|
||
|
|
uint64 chainSelector, // 5009297550715157269
|
||
|
|
address receiverBridge // 0x3304b747E565a97ec8AC220b0B6A1f6ffDB837e6
|
||
|
|
)
|
||
|
|
```
|
||
|
|
- [ ] Verify destination added: `getDestinationChains()` returns Mainnet selector
|
||
|
|
- [ ] Verify destination enabled: `destinations(5009297550715157269).enabled == true`
|
||
|
|
|
||
|
|
**Command**:
|
||
|
|
```bash
|
||
|
|
cast send "$CCIPWETH9BRIDGE_ADDRESS" \
|
||
|
|
"addDestination(uint64,address)" \
|
||
|
|
"5009297550715157269" \
|
||
|
|
"0x3304b747E565a97ec8AC220b0B6A1f6ffDB837e6" \
|
||
|
|
--rpc-url "$RPC_URL_138" \
|
||
|
|
--private-key "$PRIVATE_KEY" \
|
||
|
|
--with-gas-price "$MAX_FEE" \
|
||
|
|
--priority-gas-price "$PRIORITY_FEE"
|
||
|
|
```
|
||
|
|
|
||
|
|
#### Task 5: Configure WETH10 Bridge with Mainnet Destination
|
||
|
|
|
||
|
|
**Actions**:
|
||
|
|
- [ ] Get Mainnet chain selector: `5009297550715157269` (Ethereum Mainnet)
|
||
|
|
- [ ] Get Mainnet WETH10 Bridge address: `0x8078A09637e47Fa5Ed34F626046Ea2094a5CDE5e`
|
||
|
|
- [ ] Call `addDestination()` on ChainID 138 WETH10 Bridge:
|
||
|
|
```solidity
|
||
|
|
addDestination(
|
||
|
|
uint64 chainSelector, // 5009297550715157269
|
||
|
|
address receiverBridge // 0x8078A09637e47Fa5Ed34F626046Ea2094a5CDE5e
|
||
|
|
)
|
||
|
|
```
|
||
|
|
- [ ] Verify destination added: `getDestinationChains()` returns Mainnet selector
|
||
|
|
- [ ] Verify destination enabled: `destinations(5009297550715157269).enabled == true`
|
||
|
|
|
||
|
|
**Command**:
|
||
|
|
```bash
|
||
|
|
cast send "$CCIPWETH10BRIDGE_ADDRESS" \
|
||
|
|
"addDestination(uint64,address)" \
|
||
|
|
"5009297550715157269" \
|
||
|
|
"0x8078A09637e47Fa5Ed34F626046Ea2094a5CDE5e" \
|
||
|
|
--rpc-url "$RPC_URL_138" \
|
||
|
|
--private-key "$PRIVATE_KEY" \
|
||
|
|
--with-gas-price "$MAX_FEE" \
|
||
|
|
--priority-gas-price "$PRIORITY_FEE"
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### 🔗 PHASE 3.5: CREATE2 LINK Token Deployment
|
||
|
|
|
||
|
|
**Status**: ⏳ **PENDING**
|
||
|
|
**Priority**: 🟡 **HIGH**
|
||
|
|
**Estimated Time**: 1-2 hours
|
||
|
|
|
||
|
|
#### Task 6: Deploy LINK Token to Canonical Address
|
||
|
|
|
||
|
|
**Canonical Address**: `0x514910771AF9Ca656af840dff83E8264EcF986CA`
|
||
|
|
**Method**: CREATE2 deployment
|
||
|
|
|
||
|
|
**Actions**:
|
||
|
|
- [ ] Verify LINK token not already deployed at canonical address
|
||
|
|
- [ ] Run CREATE2 deployment script:
|
||
|
|
```bash
|
||
|
|
cd smom-dbis-138
|
||
|
|
forge script script/DeployLinkToCanonicalAddress.s.sol:DeployLinkToCanonicalAddress \
|
||
|
|
--rpc-url "$RPC_URL_138" \
|
||
|
|
--broadcast \
|
||
|
|
--private-key "$PRIVATE_KEY" \
|
||
|
|
--with-gas-price "$MAX_FEE" \
|
||
|
|
--priority-gas-price "$PRIORITY_FEE" \
|
||
|
|
-vv
|
||
|
|
```
|
||
|
|
- [ ] Verify deployment at canonical address
|
||
|
|
- [ ] Check code size > 1000 bytes
|
||
|
|
- [ ] Verify token name: "Chainlink Token"
|
||
|
|
- [ ] Verify token symbol: "LINK"
|
||
|
|
- [ ] Verify decimals: 18
|
||
|
|
|
||
|
|
**Files**:
|
||
|
|
- Script: `smom-dbis-138/script/DeployLinkToCanonicalAddress.s.sol`
|
||
|
|
- Wrapper: `scripts/deploy-link-canonical-create2.sh`
|
||
|
|
|
||
|
|
**Update .env**:
|
||
|
|
- [ ] Verify `CCIP_FEE_TOKEN=0x514910771AF9Ca656af840dff83E8264EcF986CA`
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### 🧪 PHASE 3.6: Testing and Verification
|
||
|
|
|
||
|
|
**Status**: ⏳ **PENDING** (after Phase 3.2, 3.4, 3.5)
|
||
|
|
**Priority**: 🟡 **HIGH**
|
||
|
|
**Estimated Time**: 1-2 hours
|
||
|
|
|
||
|
|
#### Task 7: Test Bidirectional Bridge Functionality
|
||
|
|
|
||
|
|
**Test 1: ChainID 138 → Mainnet (Newly Enabled)**
|
||
|
|
- [ ] Fund WETH9 Bridge with LINK for fees
|
||
|
|
- [ ] Approve WETH9 token to bridge contract
|
||
|
|
- [ ] Initiate cross-chain transfer from ChainID 138 to Mainnet
|
||
|
|
- [ ] Verify message ID generated
|
||
|
|
- [ ] Monitor CCIP message status
|
||
|
|
- [ ] Verify tokens received on Mainnet
|
||
|
|
|
||
|
|
**Test 2: Mainnet → ChainID 138 (Should Already Work)**
|
||
|
|
- [ ] Verify Mainnet bridge has destination configured
|
||
|
|
- [ ] Initiate cross-chain transfer from Mainnet to ChainID 138
|
||
|
|
- [ ] Verify message ID generated
|
||
|
|
- [ ] Monitor CCIP message status
|
||
|
|
- [ ] Verify tokens received on ChainID 138
|
||
|
|
|
||
|
|
**Test 3: WETH10 Bridge (Both Directions)**
|
||
|
|
- [ ] Test ChainID 138 → Mainnet
|
||
|
|
- [ ] Test Mainnet → ChainID 138
|
||
|
|
- [ ] Verify all transfers complete successfully
|
||
|
|
|
||
|
|
#### Task 8: Update Documentation
|
||
|
|
|
||
|
|
**Files to Update**:
|
||
|
|
- [ ] `smom-dbis-138/.env` - Add all new bridge addresses
|
||
|
|
- [ ] `docs/06-besu/T1_2_PHASE3_EXECUTION_PLAN.md` - Mark tasks complete
|
||
|
|
- [ ] `docs/06-besu/DEPLOYMENT_STATUS.md` - Update status
|
||
|
|
- [ ] `smom-dbis-138/frontend-dapp/DEPLOYMENT_CHECKLIST.md` - Update bridge addresses
|
||
|
|
|
||
|
|
**Information to Document**:
|
||
|
|
- [ ] WETH9 Bridge address (ChainID 138)
|
||
|
|
- [ ] WETH10 Bridge address (ChainID 138)
|
||
|
|
- [ ] LINK token address (canonical)
|
||
|
|
- [ ] Mainnet bridge addresses (for reference)
|
||
|
|
- [ ] Chain selectors used
|
||
|
|
- [ ] Deployment transaction hashes
|
||
|
|
- [ ] Configuration transaction hashes
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### 🔧 OPTIONAL ENHANCEMENTS
|
||
|
|
|
||
|
|
**Status**: ⏳ **OPTIONAL**
|
||
|
|
**Priority**: 🟢 **LOW**
|
||
|
|
**Estimated Time**: Variable
|
||
|
|
|
||
|
|
#### Task 9: Enhanced Monitoring
|
||
|
|
|
||
|
|
- [ ] Set up monitoring for bridge contracts
|
||
|
|
- [ ] Configure alerts for failed transfers
|
||
|
|
- [ ] Set up dashboard for bridge activity
|
||
|
|
- [ ] Monitor LINK token balance on bridges
|
||
|
|
|
||
|
|
#### Task 10: Gas Optimization
|
||
|
|
|
||
|
|
- [ ] Review gas usage in deployment scripts
|
||
|
|
- [ ] Optimize gas price calculations
|
||
|
|
- [ ] Document optimal gas settings for Besu network
|
||
|
|
|
||
|
|
#### Task 11: Security Audit
|
||
|
|
|
||
|
|
- [ ] Review bridge contract security
|
||
|
|
- [ ] Verify access controls
|
||
|
|
- [ ] Check for common vulnerabilities
|
||
|
|
- [ ] Document security assumptions
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 📊 Task Summary
|
||
|
|
|
||
|
|
| Task | Status | Priority | Estimated Time | Dependencies |
|
||
|
|
|------|--------|----------|----------------|--------------|
|
||
|
|
| 1. Resolve Transaction Issues | ⏳ Blocked | 🔴 Critical | 1-2 hours | None |
|
||
|
|
| 2. Deploy WETH9 Bridge | ⏳ Pending | 🔴 Critical | 15 min | Task 1 |
|
||
|
|
| 3. Deploy WETH10 Bridge | ⏳ Pending | 🔴 Critical | 15 min | Task 1 |
|
||
|
|
| 4. Configure WETH9 Destination | ⏳ Pending | 🟡 High | 15 min | Task 2 |
|
||
|
|
| 5. Configure WETH10 Destination | ⏳ Pending | 🟡 High | 15 min | Task 3 |
|
||
|
|
| 6. Deploy CREATE2 LINK | ⏳ Pending | 🟡 High | 1-2 hours | None |
|
||
|
|
| 7. Test Bidirectional | ⏳ Pending | 🟡 High | 1-2 hours | Tasks 2-5 |
|
||
|
|
| 8. Update Documentation | ⏳ Pending | 🟡 High | 30 min | Tasks 2-7 |
|
||
|
|
| 9. Enhanced Monitoring | ⏳ Optional | 🟢 Low | Variable | Task 7 |
|
||
|
|
| 10. Gas Optimization | ⏳ Optional | 🟢 Low | Variable | None |
|
||
|
|
| 11. Security Audit | ⏳ Optional | 🟢 Low | Variable | Task 7 |
|
||
|
|
|
||
|
|
**Total Estimated Time (Critical + High Priority)**: 5-7 hours
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🎯 Immediate Next Steps
|
||
|
|
|
||
|
|
1. **Investigate Transaction Deployment Issues** (Task 1)
|
||
|
|
- Check Besu node logs
|
||
|
|
- Verify transaction pool status
|
||
|
|
- Try alternative deployment methods
|
||
|
|
- Resolve "Replacement transaction underpriced" error
|
||
|
|
|
||
|
|
2. **Once Transactions Work**:
|
||
|
|
- Deploy WETH9 Bridge (Task 2)
|
||
|
|
- Deploy WETH10 Bridge (Task 3)
|
||
|
|
- Configure destinations (Tasks 4-5)
|
||
|
|
- Deploy CREATE2 LINK (Task 6)
|
||
|
|
- Test bidirectional transfers (Task 7)
|
||
|
|
- Update documentation (Task 8)
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 📝 Notes
|
||
|
|
|
||
|
|
### Known Issues
|
||
|
|
|
||
|
|
1. **"Replacement transaction underpriced" Error**
|
||
|
|
- May indicate stuck transaction at same nonce
|
||
|
|
- May require higher gas price than calculated
|
||
|
|
- May require nonce override or transaction cancellation
|
||
|
|
|
||
|
|
2. **Besu Network Specifics**
|
||
|
|
- EIP-1559 enabled (base fee present)
|
||
|
|
- Minimum gas price: 1 gwei
|
||
|
|
- Account permissioning enabled but allowlist empty
|
||
|
|
- Blocks may not be produced continuously
|
||
|
|
|
||
|
|
3. **Gas Price Calculations**
|
||
|
|
- ✅ Fixed decimal errors
|
||
|
|
- ✅ Priority fee calculation corrected
|
||
|
|
- ✅ EIP-1559 support implemented
|
||
|
|
- ⚠️ May need adjustment based on network conditions
|
||
|
|
|
||
|
|
### Files Modified in Last Session
|
||
|
|
|
||
|
|
1. ✅ `scripts/deploy-phase3-bridges-besu-complete.sh` - Fixed priority fee calculation
|
||
|
|
2. ✅ `scripts/deploy-bridges-direct-cast.sh` - Created new deployment script
|
||
|
|
3. ✅ `docs/06-besu/DECIMAL_ERRORS_FIXED.md` - Documentation created
|
||
|
|
|
||
|
|
### Files to Check
|
||
|
|
|
||
|
|
1. Besu node logs (location TBD)
|
||
|
|
2. Transaction pool: `cast rpc txpool_inspect --rpc-url $RPC`
|
||
|
|
3. Block production: Monitor `cast block-number --rpc-url $RPC`
|
||
|
|
4. Nonce status: `cast nonce $DEPLOYER --rpc-url $RPC`
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
**Last Updated**: 2026-01-18
|
||
|
|
**Next Review**: After Task 1 completion
|