#!/bin/sh
# 机械红线校验：对本次暂存做「可编辑范围 + 严格 ES5」硬检查，命中即阻断提交。
# 工具无关——Claude Code、别的编辑器、人手改，提交都过这道闸。
# 模式（本地 git 配置 redlines.stagedmode）：
#   未设 / 非 diff  → 严格：整文件扫描（模板等干净仓库用）
#   diff           → 增量：只查本次新增行（已有开发量的老项目回迁用）
# 启用（每个克隆一次性）：git config core.hooksPath .githooks  （或跑 setup-redlines.sh）
MODE="$(git config --get redlines.stagedmode 2>/dev/null)"
if [ "$MODE" = "diff" ]; then FLAG="--staged-diff"; else FLAG="--staged"; fi
exec node "$(git rev-parse --show-toplevel)/.claude/hooks/check-redlines.js" "$FLAG"
