#!/usr/bin/env bash
# Limpia túneles cloudflared duplicados y deja UNO solo hacia ComfyUI (8188).
# Uso (terminal de Jupyter del Pod):
#   curl -s https://dl.ramsesvii.com/runpod-ltx-tunnel-fix.sh | bash
set -uo pipefail

LOG="/workspace/cloudflared.log"
CF="/workspace/bin/cloudflared"

echo ">> Matando cloudflared previos..."
pkill -f 'cloudflared tunnel' 2>/dev/null || true
tmux kill-session -t cf 2>/dev/null || true
sleep 2

echo ">> Verificando ComfyUI local (8188)..."
if curl -s -m 8 -o /dev/null -w '%{http_code}' http://localhost:8188/system_stats | grep -q 200; then
  echo "   ComfyUI OK"
else
  echo "   ⚠️  ComfyUI NO responde en 8188. Revisá: tmux attach -t comfy"
  echo "   (Abortando: primero hay que tener ComfyUI arriba.)"
  exit 1
fi

echo ">> Levantando UN túnel cloudflared..."
: > "$LOG"
tmux new -d -s cf "$CF tunnel --url http://localhost:8188 2>&1 | tee $LOG"

echo ">> Esperando URL..."
URL=""
for i in $(seq 1 20); do
  URL=$(grep -o 'https://[a-z0-9-]*\.trycloudflare\.com' "$LOG" | head -1)
  [ -n "$URL" ] && break
  sleep 2
done

echo "=================================================================="
if [ -n "$URL" ]; then
  echo "  ✅ ComfyUI:  $URL"
  echo "  Pegale esta URL a Claude para que verifique desde el VPS."
else
  echo "  ⚠️  Sin URL todavía -> cat $LOG"
fi
echo "=================================================================="
