크라우니 고도화도구 v0.2 — 3층 파이프라인
개요
전 Crowny 서비스 소스를 3층으로 자동 분석/변환/추출하는 한선씨 도구.
- L1 스캔/클리닝 — JS/TS/Py/Rust/C/Go/한선 파일을 스캔해 변환점수·비효율점수·중복 탐지
- L2 3진화 — Kleene3값/셀코어/27트릿큐브/트릿벡터 변환 포인트 추출
- L3 추출 — 재사용 모듈카드 + 도메인별 비즈니스 모델카드 자동 도출
무엇을 했는지
std/고도화도구.han (v0.2) — L1+L2+L3 단일 파이프라인scripts/고도화_매니페스트.sh — find 기반 대상 수집, node_modules/target/dist 제외/tmp/고도화_cfg.txt에 매니페스트 경로 한 줄을 두면 자동 실행data/고도화/후보.dat — L1 결과 (경로·줄수·변환점수·비효율·중복·사유)data/고도화/3진화계획.dat — L2 결과 (파일·패턴·제안변환)data/고도화/모듈카드.dat + data/고도화/비즈카드.dat — L3 결과전 Crowny 471파일 스캔 결과 (최종)
모듈카드 (빈도):
- nil→모름 36건 →
모름_안전_연산.han신규 모듈 - 루프→트릿벡터 33건 →
std/비트.han벡터연산 확장 - OOP→셀코어 24건 → 셀코어 일괄 이주
- 배열→27트릿큐브 21건, Kleene3값 18, 분기→3갈래 18
- 컴파일러 도메인 5/8 →
한선컴파일러_3진최적화패스 - 도구 도메인 5/14 →
크라우니허브_3진CLI - 셀코어 3/7 →
셀코어_v2_규칙엔진_상용화 - 저장소 2/4 →
크라우니DB_큐브저장소 - 일반 54/117 →
공통유틸_3진모음
초기 17파일 파일럿 결과
| 지표 | 값 |
|---|---|
| 스캔파일 | 17 |
| L2 3진화 기회 | 17건 |
| 모듈카드 | 4 (OOP→셀코어 6, nil→모름 4, 배열→27트릿큐브 3, 루프→트릿벡터 2) |
| 비즈카드 | 3 (컴파일러, 도구, 일반) |
한선컴파일러_3진최적화패스— 컴파일러 도메인 5파일/8레코드크라우니허브_3진CLI— crowny-hub 3파일/8레코드- OOP→셀코어 일괄 이주 — 6건 (우선순위 최상)
관련 파일
- 도구:
/Users/ef/Downloads/CrownyTVM/std/고도화도구.han - 매니페스트 스크립트:
/Users/ef/Downloads/CrownyTVM/scripts/고도화_매니페스트.sh - 데이터:
/Users/ef/Downloads/CrownyTVM/data/고도화/*.dat
잔여 이슈
- 사이클 한도: 큰 Rust 파일(engine.rs 4890줄)에서 분석 제한 — 6000자 컷오프로 우회. 전체 파일 분석 필요 시 VM cycle limit 상향 필요.
- 단순해시 중복 감지: 20개 샘플 문자 기반. 같은 길이+동일 패턴시 오검출 가능.
- L2 패턴 카탈로그: 6종만 감지. async/await, generator, pattern match 등 추가 필요.
- 연속 실행: 현재 1회성. 워처 모드(디렉토리 변경 감지 → 자동 재분석)는 다음 버전.
v0.3 확장 (2026-04-16)
- 워처 LaunchAgent —
org.crowny.godo.plist30분 주기 자동 재스캔 (/tmp/고도화_워처.log) - 에이전트 연동 —
scripts/고도화_에이전트연동.sh6패턴 시도 (1 성공 / 5 부분·미매칭 — 학습DB 축적 시 개선) - 모름_안전_연산.han 신규 — nil→모름 36건 흡수 모듈 (Kleene 3값 논리 + 안전산술/배열접근)
- 비트.han 트릿벡터 확장 —
트릿벡터_더하기/그리고/또는/부정/합/분포/같음+큐브_영/설정(33건 흡수 타겟)
v0.4 흡수 모듈 전체 완성 (2026-04-17)
L3 12/12 모듈카드 흡수 라이브러리 전부 완비:
| 패턴 | 빈도 | 흡수 모듈 | 함수수 |
|---|---|---|---|
| nil→모름 | 87 | 모름_안전_연산.han | 16 |
| 루프→트릿벡터 | 77 | 비트.han 트릿벡터 | 13 |
| OOP→셀코어 | 63 | 셀코어.han (기존) | — |
| 배열→27트릿큐브 | 51 | 비트.han 큐브헬퍼 | 2 |
| 분기→3갈래 | 47 | 만약_3갈래.han | 7 |
| Kleene3값 | 39 | 3진논리.han | 9 |
| 다함수→셀상태기계 | 19 | 셀코어.han (기존) | — |
| switch→첫참고르기 | 11 | 만약_3갈래.han | — |
| 정규식→패턴매칭 | 8 | 의미어_파서.han (기존) | — |
| 예외→결과타입 | 6 | 3진결과.han | 11 |
| JSON→셀넷 | 4 | 셀코어.han (기존) | — |
| 비동기→흐름셀 | 2 | 흐름셀.han | 16 |
관성측정.sh— 한선씨 비율 자동 체크- PostToolUse 훅: 비-한선 작성 시
[한선씨 우선 위반]경고 - Stop 훅: 세션 종료 시 관성 비율 체크
- CLAUDE.md: "동반" → "주(主) 언어" 격상
다음 단계
- 471파일 전 Crowny 스캔 — 집계 정확도 상승
- 변환 유망 TOP 10을 한선씨로 실제 변환 (L2 출력을 에이전트에 물려보내기)
- 크라우니코드 에이전트와 연동 — L2 제안을
agent.sh grow로 자동 변환 시도 - 워처 루프 — 5분마다 재스캔하는 LaunchAgent