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

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

# Run using uv if available
if command -v uv >/dev/null 2>&1; then
  exec uv run --project "${SCRIPT_DIR}" orafail "$@"
fi

# Run via virtualenv python if available
if [[ -x "${SCRIPT_DIR}/.venv/bin/python" ]]; then
  exec "${SCRIPT_DIR}/.venv/bin/python" -m orafail.main "$@"
fi

# Fallback to system python3
if command -v python3 >/dev/null 2>&1; then
  export PYTHONPATH="${SCRIPT_DIR}/src:${PYTHONPATH:-}"
  exec python3 -m orafail.main "$@"
fi

echo "Error: python3, uv, or .venv/bin/python is unavailable." >&2
exit 1
