#!/usr/bin/env sh
# doxguard prerelease opt-in begin
if [ "$(git config --local --get doxguard.prerelease.enabled)" = true ]; then
  dg_dir=$(git rev-parse --path-format=absolute --git-common-dir) || exit $?
  dg_bin="$dg_dir/doxguard/prerelease/doxguard.exe"
  dg_config="$dg_dir/doxguard/prerelease/config.json"
  if [ ! -f "$dg_bin" ] || [ ! -f "$dg_config" ]; then
    echo "doxguard: prerelease candidate or config missing" >&2
    exit 2
  fi
  "$dg_bin" scan --staged --block --strict --config "$dg_config" || exit $?
fi
# doxguard prerelease opt-in end
# 手元の secrets 検査は doxguard（上の opt-in ブロック）。CI は doxguard と gitleaks。
# Activate with: bash scripts/install-hooks.sh  or  pwsh scripts/install-hooks.ps1
#
# 検査を足すときは必ず `|| exit 1` を付ける。付けずに 2 本目を並べると hook の
# 終了コードが「最後のコマンドの結果」になり、前段の BLOCKED が握り潰される。
node scripts/check-claude-md.mjs || exit 1

# omitnix の新規ファイル gate。lefthook.yml の pre-commit を実行する。
# lefthook install は使わない（このファイルを上書きして上の 2 本を消すため）。
# lefthook が無いときは黙って飛ばさず、ここで止める。検査を静かに省略しないのが
# このリポジトリの主題そのもの。
if command -v lefthook >/dev/null 2>&1; then
	lefthook run pre-commit || exit 1
else
	echo "BLOCKED: lefthook が見つかりません。scoop install lefthook（または winget install evilmartians.lefthook）で入れてください。" >&2
	echo "  この 1 本を飛ばすと、新規ファイルの gate が動かないままコミットされます。" >&2
	exit 1
fi
