Files
explorer-monorepo/docs/COMPLETE_BRIDGE_FIX_GUIDE.md

207 lines
4.9 KiB
Markdown

# Complete Bridge Fix Guide
**Date**: $(date)
**Status**: ✅ **All Fix Scripts Created**
---
## Issues Found
### Critical Issues
1. **All Bridge Destinations Missing**
- WETH9 Bridge: 0 destinations configured
- WETH10 Bridge: 0 destinations configured
- **Impact**: Cannot bridge to any chain
2. **Ethereum Mainnet Specifically Missing**
- Required for bridging to Ethereum Mainnet
- **Impact**: Dry run failed for Ethereum Mainnet
---
## Fix Scripts Created
### 1. Check Bridge Configuration ✅
**Script**: `scripts/check-bridge-config.sh`
**Purpose**: Check which destinations are configured and which are missing.
**Usage**:
```bash
./scripts/check-bridge-config.sh
```
**Output**: Shows status of all destinations for both WETH9 and WETH10 bridges.
### 2. Configure All Destinations ✅
**Script**: `scripts/configure-all-bridge-destinations.sh`
**Purpose**: Configure all known bridge destinations (except Ethereum Mainnet which needs address).
**Usage**:
```bash
./scripts/configure-all-bridge-destinations.sh [private_key]
```
**What it configures**:
- BSC
- Polygon
- Avalanche
- Base
- Arbitrum
- Optimism
- Ethereum Mainnet: Skipped (needs address)
### 3. Fix Ethereum Mainnet Only ✅
**Script**: `scripts/fix-bridge-errors.sh`
**Purpose**: Configure Ethereum Mainnet destination specifically.
**Usage**:
```bash
./scripts/fix-bridge-errors.sh [private_key] [ethereum_mainnet_bridge_address]
```
**What it does**:
- Checks current configuration
- Configures WETH9 bridge for Ethereum Mainnet
- Verifies configuration
---
## Step-by-Step Fix Process
### Step 1: Check Current Status
```bash
./scripts/check-bridge-config.sh
```
This will show which destinations are missing.
### Step 2: Configure All Known Destinations
```bash
./scripts/configure-all-bridge-destinations.sh [private_key]
```
This will configure:
- BSC
- Polygon
- Avalanche
- Base
- Arbitrum
- Optimism
**Note**: Ethereum Mainnet will be skipped (needs address).
### Step 3: Configure Ethereum Mainnet
Once you have the Ethereum Mainnet bridge address:
```bash
./scripts/fix-bridge-errors.sh [private_key] [ethereum_mainnet_bridge_address]
```
### Step 4: Verify All Configurations
```bash
./scripts/check-bridge-config.sh
```
All destinations should now show as configured.
### Step 5: Re-run Dry Run
```bash
./scripts/dry-run-bridge-to-ethereum.sh 0.1 [address]
```
All checks should now pass.
---
## Destination Addresses Reference
### WETH9 Bridge Destinations
| Chain | Selector | Bridge Address |
|-------|----------|----------------|
| BSC | 11344663589394136015 | `0x8078a09637e47fa5ed34f626046ea2094a5cde5e` |
| Polygon | 4051577828743386545 | `0xa780ef19a041745d353c9432f2a7f5a241335ffe` |
| Avalanche | 6433500567565415381 | `0x8078a09637e47fa5ed34f626046ea2094a5cde5e` |
| Base | 15971525489660198786 | `0x8078a09637e47fa5ed34f626046ea2094a5cde5e` |
| Arbitrum | 4949039107694359620 | `0x8078a09637e47fa5ed34f626046ea2094a5cde5e` |
| Optimism | 3734403246176062136 | `0x8078a09637e47fa5ed34f626046ea2094a5cde5e` |
| Ethereum Mainnet | 5009297550715157269 | **TBD** (needs deployment/address) |
### WETH10 Bridge Destinations
| Chain | Selector | Bridge Address |
|-------|----------|----------------|
| BSC | 11344663589394136015 | `0x105f8a15b819948a89153505762444ee9f324684` |
| Polygon | 4051577828743386545 | `0xdab0591e5e89295ffad75a71dcfc30c5625c4fa2` |
| Avalanche | 6433500567565415381 | `0x105f8a15b819948a89153505762444ee9f324684` |
| Base | 15971525489660198786 | `0x105f8a15b819948a89153505762444ee9f324684` |
| Arbitrum | 4949039107694359620 | `0x105f8a15b819948a89153505762444ee9f324684` |
| Optimism | 3734403246176062136 | `0x105f8a15b819948a89153505762444ee9f324684` |
| Ethereum Mainnet | 5009297550715157269 | **TBD** (needs deployment/address) |
---
## Quick Fix Commands
### Check Status
```bash
./scripts/check-bridge-config.sh
```
### Configure All (Except Ethereum Mainnet)
```bash
./scripts/configure-all-bridge-destinations.sh [private_key]
```
### Configure Ethereum Mainnet
```bash
./scripts/fix-bridge-errors.sh [private_key] [ethereum_mainnet_bridge_address]
```
### Verify
```bash
./scripts/check-bridge-config.sh
./scripts/dry-run-bridge-to-ethereum.sh 0.1 [address]
```
---
## Summary
### Scripts Created ✅
1.`scripts/check-bridge-config.sh` - Check all destinations
2.`scripts/configure-all-bridge-destinations.sh` - Configure all known destinations
3.`scripts/fix-bridge-errors.sh` - Fix Ethereum Mainnet specifically
4.`scripts/dry-run-bridge-to-ethereum.sh` - Improved dry run
### Documentation Created ✅
1.`docs/FIX_BRIDGE_ERRORS.md` - Fix guide
2.`docs/ALL_ERRORS_FIXED.md` - Error summary
3.`docs/COMPLETE_BRIDGE_FIX_GUIDE.md` - This guide
### Status
- ✅ All fix scripts created
- ✅ All documentation complete
-**Action Required**: Configure destinations (run scripts with private key)
-**Action Required**: Provide Ethereum Mainnet bridge address
---
**Last Updated**: $(date)