#!/usr/bin/env bash
# Quick live traffic diagnostic (run on each Pi via SSH).
set -euo pipefail
ROOT="/home/topbox/EtherGold/4-Board Test Fixture/fixture-timing"
DATA="${ROOT}/data"
echo "hostname=$(hostname -s)"
echo "=== processes ==="
pgrep -af 'pog422_fixture_bridge|pog422_uartd' || echo NONE
echo "=== eth link ==="
ip -br link show eth0 2>/dev/null || true
ip -br link show eth1 2>/dev/null || true
echo "=== capture files ==="
for f in events.jsonl errors.jsonl packets.raw; do
  p="${DATA}/${f}"
  if [[ -f "${p}" ]]; then
    echo "${f} lines=$(wc -l < "${p}") bytes=$(wc -c < "${p}")"
  else
    echo "${f} MISSING"
  fi
done
echo "=== pos? data alt paths ==="
for d in "/home/topbox/EtherGold/4-Board Test Fixture/1/data" \
           "/home/topbox/EtherGold/4-Board Test Fixture/2/data" \
           "/home/topbox/EtherGold/4-Board Test Fixture/3/data" \
           "/home/topbox/EtherGold/4-Board Test Fixture/4/data"; do
  if [[ -f "${d}/events.jsonl" ]]; then
    echo "alt ${d}/events.jsonl lines=$(wc -l < "${d}/events.jsonl")"
  fi
done
echo "=== last 5 events ==="
tail -5 "${DATA}/events.jsonl" 2>/dev/null || echo none
echo "=== event types (top 20) ==="
grep -o '"ev":"[^"]*"' "${DATA}/events.jsonl" 2>/dev/null | sort | uniq -c | sort -rn | head -20 || echo none
echo "=== errors tail ==="
tail -5 "${DATA}/errors.jsonl" 2>/dev/null || echo none
echo "=== bridge log tail ==="
tail -10 "${ROOT}/logs/fixture_bridge.log" 2>/dev/null || tail -10 "${ROOT}/logs/orchestrator-bridge.log" 2>/dev/null || echo none
