크라우니 헌법 6561 — 성장반복 2 (2026-07-09)
개요
"계속 성장하는 헌법" 절차의 2번째 반복. 성장반복1에서 열어둔 6개 잔여 문제 중
4개(D1·D2·D3·D6)를 이번 반복에서 4상 판정하고 실제 코드 수정·검증까지 진행했다.
D4(테스트범위)·D5(성경인용성격)는 이번에도 미착수로 정직하게 남긴다.
무엇을 했는지 (4상 판정별)
D2 — fail-open→fail-safe 분리 (티, 완전 해소, 코드+테스트)
~/.claude/scripts/양심게이트.sh가 enforce모드에서도 내부 오류(컴파일러 없음/컴파일
실패/캐시교체 실패/실행오류/판정라인없음/미지판정값) 6가지 전부를 exit 0(=티와 동일
코드)으로 반환하던 것을 확인(실측, 코드 인용). exit 5(UNKNOWN)를 신설해 enforce모드
전용으로 분리, 관찰모드는 exit 0 그대로 유지(회귀 없음). fail_exit() 함수가 인프라
오류도 양심감사.log에 UNKNOWN 행으로 남기도록 함. 시나리오 3종(정상 통과 exit0/
하드트립 차단 exit4/인프라오류 시뮬레이션 exit5) 실행 검증 완료.
D1 — LLM 자기보고 우회 가능성 (부분 해소, 코드+테스트)
행위분류.한선/
양심지표.한선은 "행위설명" 문자열을 그대로 신뢰한다 — 실제 행위와
무관하게 완곡한 자기보고로 하드트립을 우회할 수 있는 구조적 갭. 실측 확인:
~/.claude/settings.json의 기존 PreToolUse/PostToolUse 훅들이 이미
$TOOL_NAME/
$TOOL_INPUT을 하네스로부터 구조화된 형태로 받고 있음(예: heartbeat 훅이
"$(pwd): $TOOL_NAME" 사용). 신규
~/.claude/scripts/양심게이트_도구래퍼.sh 작성 —
자유서술 인자를 무시하고
$TOOL_NAME/
$TOOL_INPUT에서만 행위설명을 조립. 시뮬레이션
3종으로 자기보고 우회 시도가 실제로 무시되고 TOOL_INPUT 기준 하드트립이 적중함을 확인.
잔여 한계(정직): 도구 호출로 환원 안 되는 프리폼 계획 서술에는 적용 안 됨 — 그
범주는 여전히 음(사람 이관)만이 안전판.
D3 — RPN 정통 보수 (부분 진전, 953→299건 실측 감소)
libs/양심지표.rpn.한선이 최근 고수준 수정 이후 미갱신 상태(D3 재확인). 변환 재시도 시
tools/high2rpn.sh의 진짜 버그 발견: hanseonc_rpn(RPN 컴파일러)은
; 주석만 인식하는데
변환기는
// 주석 줄을 원문 그대로 흘려보내 주석 본문 낱말까지 전부 "미인식 단어"로
잡히고 있었다(106+건이 순수 주석 노이즈).
//→
; 치환 수정 후 재실행: 953건→299건
(68.6% 감소, 실측). 남은 299건의 실제 원인 분해: 배열 인덱싱(
줄들[i] 등 — VM은
원소(opcode407)로 지원하나 변환기가
배열[i]를 옮기지 않음, 변환기 전용 결함) /
계속(continue) 키워드(변환기·
hanseonc_rpn.c 양쪽 다 완전 미지원, VM+변환기 이중 결함) /
다중인자 함수호출 인자분리 미지원.
양심지표.rpn.한선 파일 자체는 아직 재생성 안 함
(미완성 변환을 완료로 위장하지 않기 위해 정직하게 보류).
D6 — 신뢰도 정규화 데이터 불균형 (검토 완료, 재구성 안 하기로 확정)
산술 검증: 현재 신뢰도 단위(50 단위 환산)는 사랑축 2단위 + 나머지 7축×1단위 = 9단위(홀수)
→ Re=0∧Im=0(완전상쇄)에 필요한 정확한 절반분할(4.5단위)이 정수해로 존재 불가. 근원은
데이터 오류가 아니라 제4부 축정의표의 설계(8축이 9원칙을 나타내며 "사랑"축이 원칙7+원칙5
통합) — 축조항연계.psv를 축별 동수로 재구성하면 이 명시적 교리 매핑을 훼손한다. 따라서
재구성하지 않기로 확정하고 잔여 과제 목록에서 종결.
관련 파일
/Users/ef/Downloads/CrownyTVM/CROWNY-CONSTITUTION-6561.md — 제3부 신설 2건(게이트
인프라 오류 안전측 분리/행위설명 근거 우선순위) + 부칙5 성장반복2 절 추가
/Users/ef/.claude/scripts/양심게이트.sh — fail_exit() 신설, enforce exit5 분리
/Users/ef/.claude/scripts/양심게이트_도구래퍼.sh — 신규, TOOL_NAME/TOOL_INPUT 기반 래퍼
/Users/ef/CrownyOS/crownyc/tools/high2rpn.sh — // 주석 처리 버그 수정
/Users/ef/CrownyOS/crownyc/libs/양심지표.한선 — D6 종결 주석 추가(컴파일 재검증 완료,
기존 테스트 apps/양심지표_테스트.한선 6/6 PASS 회귀 없음 확인)
잔여 이슈 (정직하게 미해결)
- D3 완전 해소 안 됨:
high2rpn.sh에 배열인덱싱→원소 변환 규칙, 계속 키워드
VM opcode+변환기 동시 구현 필요.
양심지표.rpn.한선/
행위분류.rpn.한선 모두 재생성 대기.
- D4 (자연어→8축 분류 정식 회귀테스트) 미착수
- D5 (성경 인용 성격 — 주해 아닌 유비적 적용) 미착수
- D1 잔여: 프리폼 계획 서술 단계는 여전히 자기보고 의존(음 이관 외 해법 없음)
양심게이트_도구래퍼.sh가 아직 어떤 PreToolUse 훅에도 실배선되지 않음(신규 스크립트,
다음 반복에서 settings.json 배선 여부 검토 필요 — 배선하면 실제 enforce 판정이 처음
가동됨을 인지하고 신중히 진행)