#!/bin/bash

# AI Churn FIRST RUN Script
# Wipes old churn data and performs a fresh sync.

set -euo pipefail

PROJECT_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)"
cd "$PROJECT_DIR"

PYTHON_BIN="${PROJECT_DIR}/.venv/bin/python"
if [ ! -x "$PYTHON_BIN" ]; then
  PYTHON_BIN="python3"
fi
export AI_CHURN_PYTHON_BIN="$PYTHON_BIN"

echo "----------------------------------------------------"
echo "Starting AI Churn FRESH INITIAL RUN: $(date)"
echo "----------------------------------------------------"

# 1. Sync Feature Store with --clear (WIPES ALL TABLES)
echo "Step 1: Wiping and Syncing Fresh Data..."
php artisan churn:sync-all --clear

# 2. Run ML Pipeline (Retrain + Predict)
echo "Step 2: Training AI Models..."
php artisan churn:pipeline:run --all --train

# 3. Publish to Dashboard Cache
echo "Step 3: Updating Dashboard Snapshot (Validated Publish)..."
php artisan churn:cache-refresh --app-id=0 --validate --alert

echo "----------------------------------------------------"
echo "Fresh Initial Run Complete: $(date)"
echo "----------------------------------------------------"
