#!/usr/bin/env bash
# 本地钩子（post-merge）：pull/merge 落地后提示任务卡闭合方式；ff-only 也会触发。
# 新任务在合入前用 make task-close SELF=1 闭合本卡；precheck [cards] 报告的遗留卡才需主检出闭合。
# 此钩子只提示，不执行闭合或其他写入。
# 触发条件收紧到"主检出 + 集成分支 main"——任务 worktree 里 task-sync 的 merge 不触发，
# 防止把卡片闭合提示混进任务分支现场。
common=$(git rev-parse --git-common-dir) && common=$(cd "$common" 2>/dev/null && pwd) || exit 0
mainrepo=$(dirname "$common")
[ "$mainrepo" = "$PWD" ] || exit 0
[ "$(git rev-parse --abbrev-ref HEAD)" = "main" ] || exit 0
[ -f "$mainrepo/scripts/task.sh" ] || exit 0
echo "[next] 新任务在合入前于任务 worktree 运行 make task-close SELF=1 闭合本卡；主检出的 make task-close 仅用于 precheck [cards] 报告的遗留卡，owner 按已有授权运行，未授权时先取得授权。"
exit 0
