feat: explorer API, wallet, CCIP scripts, and config refresh

- Backend REST/gateway/track routes, analytics, Blockscout proxy paths.
- Frontend wallet and liquidity surfaces; MetaMask token list alignment.
- Deployment docs, verification scripts, address inventory updates.

Check: go build ./... under backend/ (pass).
Made-with: Cursor
This commit is contained in:
defiQUG
2026-04-07 23:22:12 -07:00
parent d931be8e19
commit 6eef6b07f6
224 changed files with 19671 additions and 3291 deletions

View File

@@ -23,9 +23,10 @@ The SolaceScanScout tiered architecture has been successfully deployed and teste
- ✅ RPC integration working
3. **Authentication System**
- ✅ Nonce endpoint active
- ✅ Nonce endpoint wired
- ✅ Wallet authentication configured
- ✅ JWT token generation ready
- ⚠️ Wallet sign-in requires database connectivity plus the `run-migration-0010.sh` helper (`wallet_nonces`)
4. **Feature Flags**
- ✅ Endpoint operational
@@ -39,8 +40,8 @@ The SolaceScanScout tiered architecture has been successfully deployed and teste
### ⚠️ Database Connection
**Status:** Password authentication issue
**Impact:** Track 2-4 endpoints require database for full functionality
**Status:** Password authentication or schema issue
**Impact:** Track 2-4 endpoints and wallet sign-in require database for full functionality
**Workaround:** Track 1 endpoints work without database
**To Fix:**
@@ -48,14 +49,16 @@ The SolaceScanScout tiered architecture has been successfully deployed and teste
# Verify PostgreSQL is running
systemctl status postgresql
# Test connection with password
PGPASSWORD='***REDACTED-LEGACY-PW***' psql -h localhost -U explorer -d explorer -c "SELECT 1;"
# Test connection with the configured explorer DB password
export DB_PASSWORD='<your explorer DB password>'
PGPASSWORD="$DB_PASSWORD" psql -h localhost -U explorer -d explorer -c "SELECT 1;"
# If connection works, run migration
PGPASSWORD='***REDACTED-LEGACY-PW***' psql -h localhost -U explorer -d explorer \
-f backend/database/migrations/0010_track_schema.up.sql
# If connection works, run the migration helper
bash scripts/run-migration-0010.sh
```
The helper auto-detects standalone explorer DB vs shared Blockscout DB and picks the safe migration path.
## Test Results
### ✅ Passing Tests
@@ -68,7 +71,7 @@ PGPASSWORD='***REDACTED-LEGACY-PW***' psql -h localhost -U explorer -d explorer
| Track 1 | Blocks | ✅ PASS |
| Track 1 | Transactions | ✅ PASS |
| Track 1 | Bridge | ✅ PASS |
| Auth | Nonce | PASS |
| Auth | Nonce | ⚠️ PASS only when DB is reachable and `wallet_nonces` exists |
| Track 2 | Auth Check | ✅ PASS (401) |
| Track 3 | Auth Check | ✅ PASS (401) |
| Track 4 | Auth Check | ✅ PASS (401) |
@@ -100,7 +103,7 @@ CHAIN_ID=138
PORT=8080
DB_HOST=localhost
DB_USER=explorer
DB_PASSWORD=***REDACTED-LEGACY-PW***
DB_PASSWORD=<set in environment>
DB_NAME=explorer
```
@@ -120,7 +123,8 @@ sudo systemctl start postgresql
**Option B: Verify Credentials**
```bash
# Test connection
PGPASSWORD='***REDACTED-LEGACY-PW***' psql -h localhost -U explorer -d explorer -c "SELECT 1;"
export DB_PASSWORD='<your explorer DB password>'
PGPASSWORD="$DB_PASSWORD" psql -h localhost -U explorer -d explorer -c "SELECT 1;"
# If this fails, check:
# 1. User exists: psql -U postgres -c "\du"
@@ -128,12 +132,11 @@ PGPASSWORD='***REDACTED-LEGACY-PW***' psql -h localhost -U explorer -d explorer
# 3. Password is correct
```
**Option C: Run Migration**
**Option C: Run Migration Helper**
```bash
cd explorer-monorepo
export DB_PASSWORD='***REDACTED-LEGACY-PW***'
PGPASSWORD='***REDACTED-LEGACY-PW***' psql -h localhost -U explorer -d explorer \
-f backend/database/migrations/0010_track_schema.up.sql
export DB_PASSWORD='<your explorer DB password>'
bash scripts/run-migration-0010.sh
```
### 2. Restart Server with Database
@@ -144,7 +147,7 @@ pkill -f api-server
# Start with database
cd backend
export DB_PASSWORD='***REDACTED-LEGACY-PW***'
export DB_PASSWORD='<your explorer DB password>'
export JWT_SECRET='your-secret-here'
./bin/api-server
```
@@ -169,10 +172,12 @@ curl http://localhost:8080/api/v1/track2/search?q=test \
```bash
# After database is connected
export DB_PASSWORD='***REDACTED-LEGACY-PW***'
export DB_PASSWORD='<your explorer DB password>'
bash scripts/approve-user.sh <address> <track_level>
```
If the nonce request mentions `wallet_nonces`, returns `service_unavailable`, or the wallet popup shows `Nonce: undefined`, rerun `bash scripts/run-migration-0010.sh`, restart the backend, and retry. On the shared VMID 5000 Blockscout database, this helper applies only the auth/operator subset and avoids colliding with Blockscout's existing `addresses` schema.
## Monitoring
### Server Logs
@@ -213,4 +218,3 @@ The tiered architecture deployment is **complete and operational**. Track 1 (pub
- User authentication testing
- User approval workflow
- Indexer startup