# Explorer Status Review

**Date**: January 27, 2025  
**Review Status**: 🔴 **EXPLORER NOT ACCESSIBLE**

---

## 📊 Executive Summary

The explorer at `https://explorer.d-bis.org` is currently **not accessible**, returning HTTP 404. There are two explorer implementations in the codebase:

1. **Blockscout Explorer** (VMID 5000) - Docker-based Blockscout instance
2. **explorer-monorepo** - Custom Go/Next.js explorer with tiered architecture

**Current Status**: ❌ **Neither explorer appears to be running**

---

## 🔍 Current Status Check Results

### 1. Public URL Access
- **URL**: `https://explorer.d-bis.org`
- **Status**: ❌ HTTP 404 (Not Found)
- **API Endpoint**: `/api/v2/stats` - Empty response

### 2. Container Status
- **Blockscout Containers**: ❌ None running
- **Docker Containers**: ❌ No blockscout containers found
- **Proxmox Container VMID 5000**: ⚠️ Cannot verify (pct command not available on this host)

### 3. Process Status
- **Blockscout Processes**: ❌ None found
- **Explorer Processes**: ❌ None found
- **Indexer Processes**: ❌ None found

---

## 📚 Historical Status (Last Known Working State)

### Blockscout Explorer (December 23, 2025)

**Last Known Status**: ✅ **FULLY OPERATIONAL**

#### Infrastructure
- ✅ **Container**: VMID 5000 on pve2 (192.168.11.140)
- ✅ **Blockscout Service**: Running
- ✅ **PostgreSQL Database**: Healthy, 118,433+ blocks indexed
- ✅ **Nginx Web Server**: Active, SSL configured
- ✅ **SSL Certificates**: Let's Encrypt, valid
- ✅ **Cloudflare Tunnel**: Configured and routing

#### Indexing Status
- **Total Blocks**: 118,433 blocks indexed
- **Latest Block**: 118,433
- **Total Transactions**: 50 transactions
- **Total Addresses**: 33 addresses
- **Indexing**: ✅ Active and progressing

#### Features Status
- ✅ Block Explorer - Fully functional
- ✅ Transaction Explorer - Functional
- ✅ Address Explorer - Fully functional
- ✅ Search Functionality - Fully functional
- ✅ Bridge Monitoring Dashboard - Fully functional
- ✅ WETH9/WETH10 Utilities - Fully functional
- ✅ MetaMask Integration - Working

#### Known Issues (Non-Critical)
- ⚠️ RPC Method Warnings - Some optional RPC methods not enabled (internal transactions, block rewards)
- ⚠️ Low Transaction Count - 50 transactions across 118,433 blocks (may be normal for chain)

---

## 🔴 Current Issues

### 1. Explorer Not Accessible ❌

**Symptom**: `https://explorer.d-bis.org` returns HTTP 404

**Possible Causes**:
1. Container VMID 5000 is not running
2. Blockscout service stopped
3. Nginx configuration issue
4. Cloudflare tunnel routing issue
5. DNS configuration issue

**Investigation Needed**:
```bash
# Check if container exists and is running (on Proxmox host)
ssh root@192.168.11.10
pct list | grep 5000
pct status 5000

# Check Blockscout service
pct exec 5000 -- systemctl status blockscout
pct exec 5000 -- docker ps

# Check Nginx
pct exec 5000 -- systemctl status nginx
pct exec 5000 -- nginx -t

# Check Cloudflare tunnel
pct exec 5000 -- systemctl status cloudflared
```

### 2. explorer-monorepo Backend API ❌

**Status**: Backend API server may not be running

**Documented Issues**:
- Backend API server not running on port 8080
- API endpoints returning HTTP 000 (connection refused)
- Database connection issues

**Location**: `/home/intlc/projects/proxmox/explorer-monorepo/backend/api/rest`

**Check Status**:
```bash
cd /home/intlc/projects/proxmox/explorer-monorepo
curl http://localhost:8080/health
ps aux | grep api-server
```

---

## 🏗️ Architecture Overview

### Blockscout Explorer (VMID 5000)

**Deployment**:
- **Container**: Proxmox LXC (VMID 5000)
- **Hostname**: blockscout-1
- **IP Address**: 192.168.11.140 (or 192.168.11.69)
- **Location**: pve2 node

**Services**:
- **Blockscout**: Docker container on port 4000
- **PostgreSQL**: Database for indexing
- **Nginx**: Reverse proxy on ports 80/443
- **Cloudflare Tunnel**: Public access routing

**Configuration**:
- **RPC URL**: `http://192.168.11.250:8545`
- **Chain ID**: 138
- **Database**: PostgreSQL with Blockscout schema

### explorer-monorepo (Custom Implementation)

**Deployment**:
- **Backend**: Go API server (port 8080)
- **Frontend**: Next.js application (port 3000)
- **Indexer**: Go service for block indexing
- **Database**: PostgreSQL + TimescaleDB

**Architecture**:
- **Track 1 (Public)**: RPC Gateway - No authentication
- **Track 2 (Approved)**: Indexed Explorer - Requires authentication
- **Track 3 (Analytics)**: Analytics Dashboard - Requires Track 3+
- **Track 4 (Operator)**: Operator Tools - Requires Track 4 + IP whitelist

**Status**: ⚠️ Implementation complete but deployment status unclear

---

## 🔧 Troubleshooting Steps

### Step 1: Verify Container Status

```bash
# On Proxmox host
ssh root@192.168.11.10

# List all containers
pct list

# Check VMID 5000 specifically
pct status 5000
pct config 5000

# If container exists but is stopped
pct start 5000
```

### Step 2: Check Blockscout Service

```bash
# Enter container
pct exec 5000 -- bash

# Check Blockscout service
systemctl status blockscout
journalctl -u blockscout -n 50

# Check Docker containers
docker ps
docker-compose -f /opt/blockscout/docker-compose.yml ps

# Check Blockscout logs
docker-compose -f /opt/blockscout/docker-compose.yml logs --tail=50
```

### Step 3: Check Nginx Configuration

```bash
# Inside container
nginx -t
systemctl status nginx
tail -f /var/log/nginx/error.log

# Test local access
curl http://localhost:4000/api/v2/status
curl -k https://localhost/health
```

### Step 4: Check Cloudflare Tunnel

```bash
# Inside container
systemctl status cloudflared
journalctl -u cloudflared -n 50

# Check tunnel configuration
cat /etc/cloudflared/config.yml
```

### Step 5: Verify Database

```bash
# Inside container
sudo -u postgres psql -d blockscout -c "SELECT COUNT(*) FROM blocks;"
sudo -u postgres psql -d blockscout -c "SELECT MAX(number) FROM blocks;"
```

---

## 🚀 Recovery Actions

### Option 1: Restart Blockscout Service

```bash
# On Proxmox host
ssh root@192.168.11.10
pct exec 5000 -- systemctl restart blockscout
pct exec 5000 -- systemctl restart nginx
```

### Option 2: Redeploy Blockscout Container

If container is missing or corrupted:

```bash
# On Proxmox host
cd /home/intlc/projects/proxmox/smom-dbis-138-proxmox/scripts/deployment
export VMID_EXPLORER_START=5000
export PUBLIC_SUBNET=192.168.11
./deploy-explorer.sh

# Then run fix script
cd /home/intlc/projects/proxmox
./scripts/fix-blockscout-explorer.sh
```

### Option 3: Use explorer-monorepo

If Blockscout is not recoverable, the custom explorer can be deployed:

```bash
cd /home/intlc/projects/proxmox/explorer-monorepo
bash EXECUTE_DEPLOYMENT.sh
```

---

## 📋 Verification Checklist

### Infrastructure
- [ ] Container VMID 5000 exists
- [ ] Container VMID 5000 is running
- [ ] Blockscout service is active
- [ ] PostgreSQL is running
- [ ] Nginx is running
- [ ] Cloudflare tunnel is active

### Services
- [ ] Blockscout responds on port 4000
- [ ] Nginx proxies correctly
- [ ] SSL certificates are valid
- [ ] Database is accessible
- [ ] Indexing is active

### Public Access
- [ ] DNS record exists (explorer.d-bis.org)
- [ ] Cloudflare tunnel route configured
- [ ] Public URL accessible (https://explorer.d-bis.org)
- [ ] API endpoints responding

---

## 📝 Next Steps

### Immediate Actions

1. **Verify Container Status**
   - Check if VMID 5000 exists and is running
   - If stopped, start the container
   - Verify all services are running

2. **Check Service Logs**
   - Review Blockscout logs for errors
   - Check Nginx error logs
   - Review Cloudflare tunnel logs

3. **Test Internal Access**
   - Verify Blockscout API on port 4000
   - Test Nginx reverse proxy
   - Check database connectivity

4. **Verify Cloudflare Configuration**
   - Confirm DNS record exists
   - Verify tunnel route is configured
   - Test tunnel connectivity

### If Container is Missing

1. **Deploy Container**
   ```bash
   ssh root@192.168.11.10
   cd /home/intlc/projects/proxmox/smom-dbis-138-proxmox/scripts/deployment
   export VMID_EXPLORER_START=5000
   ./deploy-explorer.sh
   ```

2. **Configure Services**
   ```bash
   cd /home/intlc/projects/proxmox
   ./scripts/fix-blockscout-explorer.sh
   ```

3. **Configure Cloudflare**
   ```bash
   ./scripts/configure-cloudflare-explorer.sh
   ```

---

## 📚 Related Documentation

- `docs/EXPLORER_FUNCTIONALITY_REVIEW.md` - Last comprehensive review (Dec 23, 2025)
- `docs/EXPLORER_COMPLETE_FUNCTIONALITY_REVIEW.md` - Complete feature review
- `docs/BLOCKSCOUT_EXPLORER_FIX.md` - Fix scripts and troubleshooting
- `docs/BLOCKSCOUT_COMPREHENSIVE_ANALYSIS.md` - Technical analysis
- `explorer-monorepo/README.md` - Custom explorer documentation
- `explorer-monorepo/docs/ERROR_REPORT_AND_FIXES.md` - Known issues and fixes

---

## 🎯 Summary

**Current Status**: ❌ **EXPLORER NOT ACCESSIBLE**

**Last Known Working**: December 23, 2025 (Blockscout fully operational)

**Primary Issue**: Explorer service appears to be stopped or container is not running

**Recommended Action**: 
1. Verify container VMID 5000 status on Proxmox host
2. Restart Blockscout service if container is running
3. Redeploy container if missing
4. Verify Cloudflare tunnel configuration

**Priority**: 🔴 **HIGH** - Explorer is a critical service for blockchain visibility

---

**Last Updated**: January 27, 2025  
**Reviewer**: AI Assistant  
**Status**: 🔴 **REQUIRES IMMEDIATE ATTENTION**

