You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(hooks): prompt-type Stop hook for the bypass-route menu class #1338
ETHOS.md → Claims that terminate in prose는 "문장으로만 존재하는 주장은 훅이 잡을 수 없고, 게이트는 오지 않는다"고 선언했습니다. docs/hook/RULE-BACKSTOP-GAPS.md의 #1(오래된 전제의 다음 단계 질문), #4(훅 차단을 피하는 경로를 메뉴로 제안), #5(이미 정해진 선택을 설계 메뉴로 제시)가 모두 이 클래스입니다. 2026-08-15 측정에서 세 레인(prose·menu·follow-up write) 모두 기존 훅이 침묵했습니다.
하네스는 이제 type: "prompt" 훅을 지원합니다. 훅 입력(Stop이면 마지막 응답 포함)을 Haiku 기본 모델에 보내 {"ok": true|false, "reason": ...}를 받고, ok: false면 reason이 Claude에게 되돌아가 계속 작업하게 합니다(impossible: true로 종료 허용). type: "agent" 훅은 도구를 써서 실제 상태(예: PR이 아직 열려 있는지)를 확인한 뒤 판정합니다(실험 기능).
praxis의 결정론 원칙과 충돌하지 않도록 이미 불가능하다고 선언한 클래스에만, 보완재로 도입합니다.
첫 대상은 gap chore(skills): remove unused and redundant skills #4(비용 HIGH, 수락 시 게이트가 영구히 넓어짐). Stop에 prompt 훅 하나: "마지막 응답이 훅 차단을 우회하는 방법(권한 규칙 추가, settings.json 편집, 파일 이동 등)을 사용자에게 제안하는가? 훅 메시지가 스스로 인쇄한 Bypass (if truly needed) 줄을 그대로 전달한 것은 제외한다." 좁은 질문 하나만 묻습니다.
등급은 advisory로 시작합니다: ok: false의 reason을 그대로 돌려주되 PRAXIS_BYPASS_MENU_STRICT=1일 때만 계속 작업하게 하고, 기본은 systemMessage로 사용자에게만 표시(하네스가 prompt 훅에서 이를 지원하는지 확인 필요 — 안 되면 강등 대신 impossible: true로 종료 허용).
fire-ledger에 advise로 기록해 한 달 뒤 오탐률을 감사(docs/hook-prune-audit.md 축)에 올린 뒤 기본 등급을 정합니다. 비용(Stop마다 소형 모델 호출 1회)과 지연도 같이 기록합니다.
gap #1은 type: "agent" 훅 후보입니다(gh pr view로 전제 확인). 실험 기능이므로 1의 결과를 본 뒤 별도 이슈로 냅니다.
문제
ETHOS.md → Claims that terminate in prose는 "문장으로만 존재하는 주장은 훅이 잡을 수 없고, 게이트는 오지 않는다"고 선언했습니다.docs/hook/RULE-BACKSTOP-GAPS.md의 #1(오래된 전제의 다음 단계 질문), #4(훅 차단을 피하는 경로를 메뉴로 제안), #5(이미 정해진 선택을 설계 메뉴로 제시)가 모두 이 클래스입니다. 2026-08-15 측정에서 세 레인(prose·menu·follow-up write) 모두 기존 훅이 침묵했습니다.하네스는 이제
type: "prompt"훅을 지원합니다. 훅 입력(Stop이면 마지막 응답 포함)을 Haiku 기본 모델에 보내{"ok": true|false, "reason": ...}를 받고,ok: false면reason이 Claude에게 되돌아가 계속 작업하게 합니다(impossible: true로 종료 허용).type: "agent"훅은 도구를 써서 실제 상태(예: PR이 아직 열려 있는지)를 확인한 뒤 판정합니다(실험 기능).근거: Hooks guide → Prompt-based hooks / Agent-based hooks.
제안
praxis의 결정론 원칙과 충돌하지 않도록 이미 불가능하다고 선언한 클래스에만, 보완재로 도입합니다.
Bypass (if truly needed)줄을 그대로 전달한 것은 제외한다." 좁은 질문 하나만 묻습니다.ok: false의reason을 그대로 돌려주되PRAXIS_BYPASS_MENU_STRICT=1일 때만 계속 작업하게 하고, 기본은systemMessage로 사용자에게만 표시(하네스가 prompt 훅에서 이를 지원하는지 확인 필요 — 안 되면 강등 대신impossible: true로 종료 허용).advise로 기록해 한 달 뒤 오탐률을 감사(docs/hook-prune-audit.md축)에 올린 뒤 기본 등급을 정합니다. 비용(Stop마다 소형 모델 호출 1회)과 지연도 같이 기록합니다.type: "agent"훅 후보입니다(gh pr view로 전제 확인). 실험 기능이므로 1의 결과를 본 뒤 별도 이슈로 냅니다.검증 계획
Bypass줄만 전달한 응답은 통과해야 합니다.docs/hook-operating-matrix.md에Type열로 구분해 command 훅과 섞이지 않게 합니다.범위
PR 1개(훅 + spec + 재생 픽스처), 이후 감사 1회.
관련