#!/usr/bin/env bash
# ev_new（期待値 New・5/26版）を全件再計算して all_race_ai_profile_compare へ保存
#
# 163 本番で実行する想定。データ移行ではなく処理（コード＋バッチ）の再実行。
#
# 例:
#   ./scripts/repredict_ev_new.sh
#   BACKFILL_FROM_DATE=2020-01-01 BACKFILL_TO_DATE=2026-12-31 ./scripts/repredict_ev_new.sh
#   ONLY_MISSING=1 ./scripts/repredict_ev_new.sh
set -euo pipefail
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
cd "$ROOT"
export PYTHONPATH="${ROOT}${PYTHONPATH:+:$PYTHONPATH}"

FROM_DATE="${BACKFILL_FROM_DATE:-2020-01-01}"
TO_DATE="${BACKFILL_TO_DATE:-2026-12-31}"
MODEL="${EV_NEW_MODEL_PATH:-ai/models/stage1_lgbm_enhanced.txt}"
META="${EV_NEW_MODEL_META_PATH:-ai/models/stage1_lgbm_enhanced.meta.json}"
LOG_DIR="${LOG_DIR:-logs}"
mkdir -p "$LOG_DIR"
LOG="$LOG_DIR/import_ev_new_$(date +%Y%m%d_%H%M%S).log"

ARGS=(
  scripts/import_all_race_ev_new_compare.py
  --all-finished-races
  --from-date "$FROM_DATE"
  --to-date "$TO_DATE"
  --model-path "$MODEL"
  --model-meta-path "$META"
  --write-predictions
)

if [[ "${ONLY_MISSING:-0}" == "1" ]]; then
  ARGS+=(--only-missing)
fi

echo "log=$LOG"
echo "cmd=python3 ${ARGS[*]}"
nohup python3 "${ARGS[@]}" >>"$LOG" 2>&1 &
echo "PID=$!"
echo "tail -f $LOG"
