#!/usr/bin/env bash
# Stop — 세션 종료 직전, 이번 세션의 레슨을 wiki에 남기라고 1회 지시 (세션당 1번).
# 개인 메모리에만 적은 재발 규칙은 다른 세션에 닿지 않는다 — 레포에 남겨야 한다.

set -u
input=$(cat 2>/dev/null || true)
sid=$(printf '%s' "$input" | node "$(dirname "$0")/read-json-field.mjs" session_id // "nosession" 2>/dev/null || echo nosession)

gitdir=$(git rev-parse --git-dir 2>/dev/null) || exit 0
markerdir="$gitdir/harness-guards"
mkdir -p "$markerdir" 2>/dev/null || exit 0
marker="$markerdir/wiki-$(printf '%s' "$sid" | cksum | cut -d' ' -f1)"

[ -f "$marker" ] && exit 0
touch "$marker" 2>/dev/null || exit 0

cat <<'EOF'
{"decision": "block", "reason": "세션을 마치기 전 1회 점검: 이번 세션에서 (a) 교정받은 것, (b) 조용히 실패해서 삽질한 함정, (c) 뒤집힌 가정이 있으면 .claude/wiki/incidents.md에 술어형 한 줄로 append하라 (형식은 wiki/README.md). 애매하면 candidates.md에 crumb로. 남길 것이 없으면 그대로 마쳐라 — 이 지시는 세션당 한 번만 뜬다."}
EOF
exit 0
