#!/usr/bin/env bash
#
# Pre-commit hook: check .agents/ stays in sync with .claude/plugins/minutes/
#
# Only runs the check when relevant files are staged (fast no-op otherwise).

if git diff --cached --name-only 2>/dev/null | grep -qE 'plugins/minutes/(skills|hooks/lib)/|agents/skills/minutes/|tooling/skills/|site/lib/skills-catalog\.json|scripts/generate_llms_txt\.mjs'; then
  ./scripts/check-agents-sync.sh --staged
fi

# --- BEGIN BEADS INTEGRATION v1.0.2 ---
# This section is managed by beads. Do not remove these markers.
if command -v bd >/dev/null 2>&1; then
  export BD_GIT_HOOK=1
  _bd_timeout=${BEADS_HOOK_TIMEOUT:-300}
  if command -v timeout >/dev/null 2>&1; then
    timeout "$_bd_timeout" bd hooks run pre-commit "$@"
    _bd_exit=$?
    if [ $_bd_exit -eq 124 ]; then
      echo >&2 "beads: hook 'pre-commit' timed out after ${_bd_timeout}s — continuing without beads"
      _bd_exit=0
    fi
  else
    bd hooks run pre-commit "$@"
    _bd_exit=$?
  fi
  if [ $_bd_exit -eq 3 ]; then
    echo >&2 "beads: database not initialized — skipping hook 'pre-commit'"
    _bd_exit=0
  fi
  if [ $_bd_exit -ne 0 ]; then exit $_bd_exit; fi
fi
# --- END BEADS INTEGRATION v1.0.2 ---
