#!/bin/bash
# BQAS Post-Commit Hook
# =====================
#
# Fuehrt automatisch BQAS Quick Tests aus, wenn Aenderungen
# im voice-service/ Verzeichnis committed werden.
#
# Installation:
#   cp post-commit.hook /path/to/.git/hooks/post-commit
#   chmod +x /path/to/.git/hooks/post-commit
#
# Oder nutze das Installations-Script:
#   ./scripts/install_bqas_scheduler.sh install

# Konfiguration
VOICE_SERVICE_DIR="/Users/benjaminadmin/Projekte/breakpilot-pwa/voice-service"
RUN_ASYNC=true  # Im Hintergrund ausfuehren (empfohlen)

# Farben
GREEN='\033[0;32m'
YELLOW='\033[0;33m'
NC='\033[0m'

# Pruefen ob voice-service geaendert wurde
changed_files=$(git diff --name-only HEAD~1 2>/dev/null || true)

if echo "$changed_files" | grep -q "^voice-service/"; then
    echo ""
    echo -e "${YELLOW}[BQAS]${NC} voice-service geaendert - starte Quick Check..."

    # Script-Pfad
    BQAS_SCRIPT="${VOICE_SERVICE_DIR}/scripts/run_bqas.sh"

    if [ -f "$BQAS_SCRIPT" ]; then
        if [ "$RUN_ASYNC" = true ]; then
            # Async im Hintergrund
            nohup "$BQAS_SCRIPT" --quick > /dev/null 2>&1 &
            pid=$!
            echo -e "${GREEN}[BQAS]${NC} Quick Check gestartet (PID: $pid)"
            echo "  Logs: /var/log/bqas/bqas.log"
        else
            # Synchron (blockiert commit)
            "$BQAS_SCRIPT" --quick
        fi
    else
        echo -e "${YELLOW}[BQAS]${NC} run_bqas.sh nicht gefunden, uebersprungen"
    fi

    echo ""
fi

# Hook erfolgreich (commit nie blockieren)
exit 0
