← 목록
기타 2026-07-09 3KB 읽기 3분

헌법 행위분류 회귀 27+케이스 확장 + CI 러너 (Q4/Q5)

개요

행위분류.한선(자연어→8축 벡터 분류기) 회귀 테스트를 14케이스→29케이스로 확장하고, 신규 CI 러너 스크립트를 작성했다.

무엇을 했는지

  1. test_행위분류_회귀.한선에 v3(15케이스, 15~29번) 추가:
- 하드트립 4축(생명존엄/진실/청지기/자유) 개별 단독 커버 완성(청지기 단독 15번 추가) + 4축 전원 동시 A 스트레스 케이스(24번) - D3 화행구분(보고어마커 무효화) 신규 회귀 3종: 반박 인용 무효화(16), 윈도우 밖이라 무효화 안 되는 경계(17), 매치 이전(앞쪽) 마커도 무효화되는 대칭 케이스(18) - 부정어목록 11개 중 미검증이던 5개(방지/불가/말고/안됨/안함) 개별 실사용 확인(19~23) - 비하드트립 4축(약자보호/사랑/안식/초월겸손) 개별 단독 T/A 커버(25~28) - 완전 무매칭 재확인(숫자만, 29번) - 모든 기대벡터는 probe 스크립트(/tmp/probe.한선)로 행위분류() 실측 후 손으로 축id·우선순위·윈도우 경계를 재추적해 확정(정직성 원칙)
  1. 컴파일+실행 전건 PASS 확인: `./hanseonc_high test_행위분류_회귀.한선 > /tmp/t.toau
2>/tmp/t.err && ./crownyc run /tmp/t.toau결과: 통과=29 실패=0 전체=29`
  1. CI 러너 신규 작성: ~/.claude/scripts/헌법회귀.sh (ASCII 변수, bash)
- 컴파일(stderr 분리)+실행+[PASS]/[FAIL] grep 집계 - 실패 1건 이상 또는 컴파일 실패 또는 실행 exit≠0 → exit 1 - -q 옵션(요약만 출력) - 헌법성장.sh 등에서 명시 호출 가능한 독립 스크립트로 설계(데몬 아님, settings.json 훅 배선은 하지 않음 — 사용자 승인 필요 영역이라 스킵) - 실패주입 테스트로 exit 1 경로도 검증(임시로 기대벡터 오염 후 FAIL 감지 확인, 즉시 원복)

관련 파일

  • /Users/ef/CrownyOS/crownyc/test_행위분류_회귀.한선 (29케이스)
  • /Users/ef/CrownyOS/crownyc/libs/행위분류.한선 (수정 없음, 기존 D2/D3 로직 그대로 검증)
  • /Users/ef/CrownyOS/crownyc/data/헌법6561/행위규칙.psv (수정 없음)
  • ~/.claude/scripts/헌법회귀.sh (신규)

실행증거

  • 최종 케이스수: 29
  • 전건 PASS: 통과=29 실패=0 (VM 실행 로그, exit=0)
  • 러너 실행: ~/.claude/scripts/헌법회귀.sh[헌법회귀] 결과: PASS (전 케이스 통과), exit=0
  • 러너 실패경로 검증: 케이스 29 기대값 임시 오염 → PASS=28 FAIL=1, exit=1 확인 후 즉시 원복

잔여 이슈

  • RPN 경로(hanseonc_std)는 배열 인덱싱 desugar 미구현으로 아직 못 태움(D1 잔여, 파일
헤더 주석에 명시). 고수준 경로(hanseonc_high)만 검증됨.
  • CI 훅(settings.json 자동 배선)은 사용자 승인 필요 영역이라 이번 작업 범위에서 제외.
러너 스크립트는 명시 실행 전용으로만 제공.
  • 27조항 중 축조항연계.psv상 각 조항까지 1:1 매핑된 케이스는 아니고, 8축(축정의.psv)
레벨 커버리지 기준으로 27+를 달성함(축 단위 커버는 100%: 8축 전부 개별/조합 케이스 보유).