#!/usr/bin/env bash
# fewtok PreToolUse[Bash] wrapper.
# FT on  → exit 0 (allow all; proxy compresses output at API layer).
# FT off → delegate to user's bash-gate.sh (preserves RTK routing + pre-FT discipline).

set -euo pipefail

# Per-session bypass — preserved from killswitch design.
_FT_PIDS_DIR="${HOME}/.fewtok/state/session-pids"
_FT_BYPASS_DIR="${HOME}/.fewtok/state/bypass"
_ft_pid=$$
_ft_sid=""
while [ -n "${_ft_pid:-}" ] && [ "${_ft_pid:-0}" -gt 1 ]; do
  _ft_f="${_FT_PIDS_DIR}/${_ft_pid}"
  if [ -f "$_ft_f" ]; then
    _ft_sid=$(cat "$_ft_f")
    break
  fi
  _ft_pid=$(ps -o ppid= -p "$_ft_pid" 2>/dev/null | tr -d ' ')
done
if [ -n "$_ft_sid" ] && [ -f "${_FT_BYPASS_DIR}/${_ft_sid}" ]; then
  exit 0
fi

# FT on → no gating, proxy handles output compression.
if [[ "${ANTHROPIC_BASE_URL:-}" =~ ^https?://(127\.|localhost|0\.0\.0\.0) ]]; then
  exit 0
fi

# FT off → delegate to user's bash-gate.sh if present.
GATE="${HOME}/.claude/hooks/bash-gate.sh"
if [[ -x "$GATE" ]]; then
  exec "$GATE"
fi

# FT off and no gate → allow.
exit 0
