#!/usr/bin/env bash
set -euo pipefail
TRADINGCODEX_SOURCE_ROOT="{{SOURCE_ROOT}}"
export TRADINGCODEX_WORKSPACE_ROOT="{{PROJECT_DIR}}"
export DJANGO_SETTINGS_MODULE="${DJANGO_SETTINGS_MODULE:-tradingcodex_service.settings}"
TRADINGCODEX_PYTHON="${TRADINGCODEX_PYTHON:-{{PYTHON_EXECUTABLE}}}"
if [ -x "$TRADINGCODEX_PYTHON" ]; then
  export PYTHONPATH="$TRADINGCODEX_SOURCE_ROOT${PYTHONPATH:+:$PYTHONPATH}"
  exec "$TRADINGCODEX_PYTHON" "{{PROJECT_DIR}}/.tradingcodex/cli.py" "$@"
fi
if command -v uvx >/dev/null 2>&1; then
  case "${PYTHONPATH:-}" in
    "$TRADINGCODEX_SOURCE_ROOT")
      unset PYTHONPATH
      ;;
    "$TRADINGCODEX_SOURCE_ROOT":*)
      export PYTHONPATH="${PYTHONPATH#"$TRADINGCODEX_SOURCE_ROOT:"}"
      ;;
  esac
  exec uvx --refresh --python 3.14 --from "{{TRADINGCODEX_MCP_PACKAGE_SPEC}}" python -m tradingcodex_cli "$@"
fi
echo "tcx: recorded Python is unavailable: $TRADINGCODEX_PYTHON" >&2
echo "tcx: install TradingCodex with 'uv tool install --python 3.14 tradingcodex' or install uvx." >&2
exit 127
