헌법 6561 — 성장 반복 5/9 (2026-07-09)
개요
"계속 성장하는 헌법" 절차의 5번째 반복. 열린 문제 중 D1(resolve_calls 인자
desugar), D2(C-style for/for-each 미구현) 두 건을 실제로 수정하고 실행 검증까지
완료했다. D6(문자열 라이브러리 함수 미지원)는 근본원인을 두 겹으로 확정했으나
코드 수정은 다음 반복으로 이관. 신규로
아니면 { 본문 } 단일라인 미지원을 발견.
무엇을 했는지
1. D1 해소 — tools/high2rpn.sh resolve_calls()/convert_expr()
resolve_calls()의 인자 변환을 to_postfix() 직접호출에서 convert_expr()
재귀호출로 교체.
- 실제 주범을 추가로 발견:
convert_expr()의 "식에 [가 있으면 무조건 원문
통과" 캐치올이 호출 판별보다 먼저 실행돼
포함하나(문맥,_목록[k]) 같은
"호출 인자 안 인덱싱" 정상 패턴까지 원문 누출시키고 있었다. 캐치올에
"호출 패턴 없을 때만" 조건 추가.
- 검증: 격리 재현 컴파일 exit0/미인식 0건.
행위분류.한선 실전파일에서 대괄호
원문누출 오류 완전 소멸.
2. D2 해소 — C-style for / for-each 구현
반복문 i 부터 A 까지 B { }, 반복 항목 안에서 목록 { } 신규 구현.
기존 while
.루프N/.끝N 라벨 재사용 + continue용
.증가N 라벨 신설(단순
재사용 시 continue가 증가를 건너뛰어 무한루프 유발함을 구현 중 발견해 수정).
BLOCK_STACK 포맷에 4번째 필드(반복변수명) 추가, 하위호환 유지.
- 실행 검증(스펙만이 아님):
crownyc run으로 0+1+2+3+4=10,
10+20+30=60, continue/break 혼합 0+1+3+4=8 전부 정확히 일치.
pkg/libs/DB.한선(반복문 48회 사용, 이전 전량 실패)에서 이 부류 오류 전량 해소.
- 범위 제한: 오름차순 step=+1 고정(내림차순/스텝 미지원, 다음 과제).
3. D6 근본원인 확정(수정은 미착수, 옴)
- 라이브러리 함수(분리/찾기뒤/왼공백제거/되풀이 등) 미지원의 원인이 두 겹임을
실측 확인:
(1)
scan_user_funcs()가
가져오기한 라이브러리 함수를 스캔 안 함
(2) 이미 존재하는 사전변환본
libs/문자열.rpn.한선 자체에 동일 클래스
bare-word 내부호출 버그가 있음(93행 부근
전체치환이
찾기를
@찾기 호출이 아닌 맨 단어로 호출).
(1)만 고쳐도 (2) 때문에 여전히 실패 — 둘 다 고쳐야 완전 해소.
4. 신규 발견
convert_line()에 단일라인 아니면 { 본문 } 패턴이 없음(} 아니면 {
멀티라인 형태만 지원).
pkg/libs/DB.한선 196행
아니면 { 탈출 } 실측에서
확인.
관련 파일
/Users/ef/CrownyOS/crownyc/tools/high2rpn.sh (D1/D2 수정)
/Users/ef/Downloads/CrownyTVM/CROWNY-CONSTITUTION-6561.md (부칙5 성장반복5 절 추가)
- 백업:
/private/tmp/claude-501/-Users-ef/e9b51314-a41b-45b2-aab3-c808648fed40/scratchpad/high2rpn.sh.bak-*
자체 발견 회귀(배포 전 수정)
D1 수정 직후 실전 라이브러리 5종(YAML/INI/TOML/XML/단축키)으로 전/후 비교하다
출력값("[YAML] 파일 없음: " + 경로)처럼 문자열 리터럴 안의 "["를 진짜 인덱싱으로
오인하는 자기회귀를 발견 →
mask_strings() 헬퍼(판별에만 사용, 변환은 원문 그대로)로
즉시 수정. 최종 비교: INI 9→4, TOML 11→7, 단축키 119→103, 시민참여.한선 7→1 모두
개선. XML 11→11 불변. YAML은 5→12로 원문상 악화처럼 보이나, 재확인 결과 서로 다른
두 결함 중 하나가 다른 하나(
맵[i] == 키 비교식 안 인덱싱, 여전히 미지원)를 가리고
있었을 뿐 — 원래 작동하던 파일이 깨진 사례는 없음(전부 이전부터 RPN 경로 미컴파일).
844+ 파일 전수 회귀는 시간상 미수행(표본 검증 한정, 정직 명시).
잔여 이슈
- D6 코드 수정(scan_user_funcs BFS + 문자열.rpn.한선 자매호출 버그) — 다음 반복
아니면 { 본문 } 단일라인 패턴 신설 — 다음 반복
- 게이트 관찰모드 settings.json 배선 — 사용자 승인 대기(서브에이전트가 임의로
전역 설정 변경하지 않음)
- 행위분류 회귀스위트 확장(5→27조항×8축)·CI 배선 — 미착수
- 프리폼 계획 서술 자기보고 의존 — 구조적으로 폐쇄 불가능(정직 유지)