134 lines
3.3 KiB
Markdown
134 lines
3.3 KiB
Markdown
# Dry Run: Bridge to Ethereum Mainnet Results
|
|
|
|
**Date**: $(date)
|
|
**Script**: `scripts/dry-run-bridge-to-ethereum.sh`
|
|
**Status**: ✅ **Dry Run Completed**
|
|
|
|
---
|
|
|
|
## Dry Run Summary
|
|
|
|
### Test Configuration
|
|
- **Amount**: 0.1 WETH
|
|
- **Source Address**: `0x4A666F96fC8764181194447A7dFdb7d471b301C8`
|
|
- **Destination**: Ethereum Mainnet (Selector: 5009297550715157269)
|
|
- **Bridge**: `0x89dd12025bfCD38A168455A44B400e913ED33BE2`
|
|
|
|
---
|
|
|
|
## Verification Results
|
|
|
|
### ✅ Passed Checks
|
|
|
|
1. **ETH Balance**: ✅ Sufficient
|
|
- Available: 999,630,770 ETH
|
|
- Required: ~0.112 ETH (amount + gas)
|
|
- Status: More than sufficient
|
|
|
|
2. **WETH9 Balance**: ✅ Sufficient
|
|
- Available: 6 WETH
|
|
- Required: 0.1 WETH
|
|
- Status: Sufficient balance available
|
|
|
|
3. **Bridge Allowance**: ✅ Sufficient
|
|
- Status: Bridge can spend WETH9
|
|
|
|
### ⚠️ Warnings
|
|
|
|
1. **CCIP Fee Calculation**: ⚠️ Could not calculate
|
|
- May require LINK tokens for fees
|
|
- Check bridge contract for fee requirements
|
|
|
|
### ❌ Failed Checks
|
|
|
|
1. **Destination Configuration**: ❌ **NOT CONFIGURED**
|
|
- **Issue**: Ethereum Mainnet is NOT configured as destination in bridge
|
|
- **Impact**: Bridge transaction will fail
|
|
- **Action Required**: Configure Ethereum Mainnet destination bridge address
|
|
|
|
---
|
|
|
|
## Transaction Simulation
|
|
|
|
### Would Execute (if destination configured):
|
|
|
|
1. **Wrap ETH to WETH9**: ⏭️ Skipped (sufficient balance)
|
|
2. **Approve Bridge**: ⏭️ Skipped (already approved)
|
|
3. **Bridge to Ethereum Mainnet**: ⏳ Would execute
|
|
- Function: `sendCrossChain(uint64,address,uint256)`
|
|
- Destination: Ethereum Mainnet (5009297550715157269)
|
|
- Recipient: `0x4A666F96fC8764181194447A7dFdb7d471b301C8`
|
|
- Amount: 0.1 WETH
|
|
- Estimated Gas: ~300,000
|
|
|
|
---
|
|
|
|
## Cost Estimate
|
|
|
|
- **Amount to Bridge**: 0.1 WETH
|
|
- **Gas Costs**: ~0.002 ETH (at 5 gwei)
|
|
- **CCIP Fee**: Unknown (may require LINK)
|
|
- **Total Cost**: ~0.102 ETH (excluding CCIP fee)
|
|
|
|
---
|
|
|
|
## Critical Issue Found
|
|
|
|
### ❌ Ethereum Mainnet Destination Not Configured
|
|
|
|
**Problem**: The bridge contract does not have Ethereum Mainnet configured as a destination.
|
|
|
|
**Solution**: Configure the destination bridge address:
|
|
|
|
```bash
|
|
# Need to call bridge contract to add destination
|
|
# Function: addDestination(uint64 chainSelector, address destinationBridge)
|
|
# Parameters:
|
|
# - chainSelector: 5009297550715157269 (Ethereum Mainnet)
|
|
# - destinationBridge: [Ethereum Mainnet bridge address]
|
|
```
|
|
|
|
**Action Required**:
|
|
1. Get Ethereum Mainnet bridge address
|
|
2. Call `addDestination()` on bridge contract
|
|
3. Verify destination is configured
|
|
4. Re-run dry run to confirm
|
|
|
|
---
|
|
|
|
## Next Steps
|
|
|
|
1. **Configure Destination**: Add Ethereum Mainnet to bridge destinations
|
|
2. **Check CCIP Fee**: Verify if LINK tokens are needed
|
|
3. **Re-run Dry Run**: Verify all checks pass
|
|
4. **Execute Bridge**: Use `wrap-and-bridge-to-ethereum.sh` when ready
|
|
|
|
---
|
|
|
|
## Usage
|
|
|
|
### Run Dry Run
|
|
|
|
```bash
|
|
# With address
|
|
./scripts/dry-run-bridge-to-ethereum.sh 0.1 0xYourAddress
|
|
|
|
# With private key (will derive address)
|
|
./scripts/dry-run-bridge-to-ethereum.sh 0.1 0xYourPrivateKey
|
|
|
|
# With PRIVATE_KEY in .env
|
|
./scripts/dry-run-bridge-to-ethereum.sh 0.1
|
|
```
|
|
|
|
### Execute Bridge (After Fixing Issues)
|
|
|
|
```bash
|
|
./scripts/wrap-and-bridge-to-ethereum.sh 0.1 [private_key]
|
|
```
|
|
|
|
---
|
|
|
|
**Status**: ⚠️ **Ready except for destination configuration**
|
|
**Date**: $(date)
|
|
|