#!/usr/bin/env bash
set -euo pipefail

ORIGEM="$(cd "$(dirname "$0")" && pwd)"
DESTINO="/opt/pele-ai/analisador_local.py"
PYTHON="/opt/pele-ai/venv/bin/python"

echo "Criando backup..."
sudo cp "$DESTINO" \
    "${DESTINO}.bak_$(date +%Y%m%d_%H%M%S)" || true

echo "Instalando analisador estável..."
sudo cp "$ORIGEM/analisador_local.py" "$DESTINO"
sudo chown root:root "$DESTINO"
sudo chmod 755 "$DESTINO"

echo "Validando sintaxe..."
"$PYTHON" -m py_compile "$DESTINO"

echo "Validando imports..."
"$PYTHON" - <<'PY'
import cv2
import numpy
print("OpenCV:", cv2.__version__)
print("NumPy:", numpy.__version__)

try:
    import mediapipe as mp
    print(
        "MediaPipe:",
        getattr(mp, "__version__", "sem versão")
    )
    print(
        "Face Mesh legado disponível:",
        bool(
            hasattr(mp, "solutions") and
            hasattr(mp.solutions, "face_mesh")
        )
    )
except Exception as erro:
    print("MediaPipe indisponível; OpenCV será usado:", erro)
PY

echo
echo "INSTALAÇÃO CONCLUÍDA."
echo "Teste com:"
echo "$PYTHON $DESTINO /caminho/foto.jpg"
