#!/bin/bash
# effort_level_check.sh — Jarvis安全装置D (Pythonラッパー)
# 役割: クロスプラットフォーム本体は effort_level_check.py に集約。
#       本shはPATH上のpython3/python/絶対パスを探索してPython版を呼び出すだけ。
# 経緯: 2026-05-13 Mac専用bash実装→ Win Git Bash で python3 未PATH問題発覚→ Pythonラッパー化
#       既存呼び出し `bash effort_level_check.sh` 互換性を保つため.shは残す

SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
PY_FILE="$SCRIPT_DIR/effort_level_check.py"

if [[ ! -f "$PY_FILE" ]]; then
  echo "ERROR: $PY_FILE が見つからない"
  exit 1
fi

# Python探索順:
#   1. python3 (Mac/Linux標準・Windowsには通常無い)
#   2. /c/Users/Ritzk/AppData/Local/Programs/Python/Python312/python.exe (Win Ritzk環境・実体)
#   3. python (PATH上・最後の砦)
# 注意: Windows の `python` PATHエイリアスは WindowsApps プレースホルダー (未インストール→Exit 49) の罠があるため
#       `command -v` の真偽でなく実際に `--version` を試してエラーコードで判定する
try_python() {
  local cmd="$1"
  "$cmd" --version >/dev/null 2>&1
}

if try_python python3; then
  exec python3 "$PY_FILE" "$@"
elif [[ -x "/c/Users/Ritzk/AppData/Local/Programs/Python/Python312/python.exe" ]] && try_python "/c/Users/Ritzk/AppData/Local/Programs/Python/Python312/python.exe"; then
  exec /c/Users/Ritzk/AppData/Local/Programs/Python/Python312/python.exe "$PY_FILE" "$@"
elif try_python python; then
  exec python "$PY_FILE" "$@"
else
  echo "ERROR: 実行可能な python3/python が見つからない (WindowsAppsプレースホルダーは除外済)"
  exit 1
fi
