#!/usr/bin/env bash
# bin/edelweiss-pilot — Edelweiss-only 2dph brain (facts/info)
set -euo pipefail
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
cd "$ROOT"
export HF_HOME="${HF_HOME:-$ROOT/var/hf}"
export PATH="$ROOT/.venv/bin:$PATH"
mkdir -p "$HF_HOME" "$ROOT/var"

# Corpus paths set via env; fallback to PROJECTS_ROOT convention.
PROJECTS="${PROJECTS_ROOT:-/home/devops/projects}"
DOCS_BASE="${DOCS_BASE:-$PROJECTS}"
DOCS=()
for d in \
  "$DOCS_BASE/docs/docs" \
  "$DOCS_BASE/edelweiss-ui/docs" \
  "$DOCS_BASE/docs/docs/reports"; do
  [ -d "$d" ] && DOCS+=(--corpus "$d")
done

cmd="${1:-stats}"; shift || true
case "$cmd" in
  index)
    bin/kb/index --rebuild --skip-indexes "${DOCS[@]}" "$@"
    ;;
  search) exec bin/edelweiss-search "$@" ;;
  search-go) exec bin/kb/search "$@" ;;
  stats)  exec bin/kb/stats "$@" ;;
  audit)  exec bin/facts/audit "${1:-db}" "${@:2}" ;;
  *) echo "usage: $0 index|search|search-go|stats|audit ..." >&2; exit 2 ;;
esac
