BurningTimesAi/scripts/proactive_inference_check.sh

54 lines
2.1 KiB
Bash

#!/bin/bash
# proactive_inference_check.sh — BurningTimes C47 능동적 추론·질문 생략 hook
# 2026-05-07 SKILL 동적 로딩 분할 Phase D-2 신설
# PostToolUse (Edit/Write/MultiEdit) — 관습적 되묻기·책임 회피 재질의 키워드 차단·환기
# 토큰 비용: 0
INPUT=$(cat 2>/dev/null)
BODY=$(echo "$INPUT" | grep -oE '"(new_string|content)"[[:space:]]*:[[:space:]]*"[^"]*"' | head -3)
[ -z "$BODY" ] && exit 0
HIT_LIST=""
# 그룹 1 — 응답 말미 관습적 되묻기
if echo "$BODY" | grep -qE '(도움이[[:space:]]*되셨길[[:space:]]*바랍니다|궁금한[[:space:]]*점[[:space:]]*있으시면|더[[:space:]]*필요한[[:space:]]*부분|기꺼이[[:space:]]*도와드리겠습니다|언제든[[:space:]]*물어봐주세요)'; then
HIT_LIST="${HIT_LIST}관습적 되묻기, "
fi
# 그룹 2 — 의미 없는 확인 질의
if echo "$BODY" | grep -qE '(이[[:space:]]*방향이[[:space:]]*맞으신지요|이렇게[[:space:]]*진행해도[[:space:]]*될까요|이[[:space:]]*방식이[[:space:]]*어떠신지)'; then
HIT_LIST="${HIT_LIST}의미 없는 확인 질의, "
fi
# 그룹 3 — 책임 회피 재질의
if echo "$BODY" | grep -qE '(혹시[[:space:]]*다른[[:space:]]*고려[[:space:]]*사항|제가[[:space:]]*놓친[[:space:]]*부분이[[:space:]]*있다면|혹시나[[:space:]]*다른[[:space:]]*의견)'; then
HIT_LIST="${HIT_LIST}책임 회피 재질의, "
fi
[ -z "$HIT_LIST" ] && exit 0
cat >&2 <<EOF
⚠️ [BurningTimes C47 능동적 추론·질문 생략 감지]
감지 키워드: ${HIT_LIST%, }
의무:
- 관습적 되묻기 배제
- PD 의도 명확 시 인사이트 마침표
허용 질의 (예외 4종):
1. PD 의도 진짜 모호 + 구체 선택지 동반
2. 범위 경계 불분명
3. 방향 검증 필요 (C36-2 영역)
4. C43 호칭 모호
인사이트 마침표 패턴:
- 다음 단계 명시: "본 작업 완료. 후속: {X·Y·Z}"
- 후속 권고: "본 결과 기반 후속 권고 2종"
- 주의점 명시: "본 결정 적용 시 주의: X 영역 영향"
근거: BurningTimes C47 · identity_guard 동형
EOF
exit 0