크라우니코드 기가팩토리 — 다국어 색인 엔진 구축
크라우니코드 기가팩토리 — 다국어 색인 엔진 구축
개요
크라우니코드 에이전트의 영어 intent를 한글 canonical로 100% 변환하는 **4층 자기학습 다국어 색인 엔진**을 구축했다. 테슬라 기가팩토리 5대 원칙(수직통합, 자동화, 규모, 피드백 루프, 실패 회복)을 적용해 13년 장기 성장 가능한 구조로 설계했다.문제
- keywords.dat에 3,267개 고유 intent 중 **98%가 영어** (snake_case)
- 한글 프로그래밍 언어(한선씨)의 정체성에 위배
- O→A 경로 단절 (의미코드 → 패턴DB 역검색 실패)
해결: 4층 아키텍처
L0: canonical 한글 intent (keywords_canonical.dat) — 유일한 진실
L1: alias 매핑 테이블 (keywords_alias.dat) — 영어→한글
L2: 단어 사전 + 조어 규칙 (translation_dict/rules.dat) — 자동 확장
L3: 학습 피드백 루프 (translation_learned.dat) — 컴파일 검증 통과분
구축 과정
1단계: 스키마 + 데이터 분리
- `keywords_canonical.dat`, `keywords_alias.dat` 등 5개 파일 생성
- `extract_canonical.sh`로 기존 keywords.dat + semantic_map.dat에서 자동 추출
- 결과: L0 2,154 canonical + L1 2,216 alias
2단계: 사전 시드 + 조어 규칙
- `translation_dict.dat`: 237개 핵심 단어 (server→서버, cache→캐시 등)
- `translation_rules.dat`: 96개 합성 패턴 ({x}_server→{x}서버 등)
3단계: 변환기 + 컴파일 검증
- `translate_intent.sh`: L1→L2→L3→검증 파이프라인
- 크라우니어 `hanseonc_high` 컴파일로 품질 게이트
- `--auto-promote`: 실시간 L3 승격
4단계: 기가팩토리 자동화
- `expand_dict.sh`: 자가 확장 사전 로봇 (scan→heuristic→ingest→refine)
- `crownycode-gigaline.sh`: 세션 시작 시 rescue→refine 한 명령
커버리지 추이
| 단계 | 커버리지 | 증가분 | |------|----------|--------| | 초기 (L1+L2 only) | 25.3% | — | | 사전 1차 확장 (337 단어) | 36.6% | +11.3% | | Claude 배치 1 (200 단어) | 59.3% | +22.7% | | Claude 배치 2 (200 단어) | 70.3% | +11.0% | | Claude 배치 3 (300 단어) | 88.2% | +17.9% | | Claude 배치 4 (94 단어) | 94.5% | +6.3% | | 특수 토큰 스윕 (47 단어) | 98.8% | +4.3% | | 최종 (vm 추가) | **100%** | +1.2% |최종 수치
L0 canonical: 2,154
L1 alias: 2,216
L2 사전단어: 1,222
L2 조어규칙: 96
L3 학습승격: 1,169
실패 후보큐: 0
**1,402개 영어 intent → 한글 canonical 100% 변환, 전원 크라우니어 컴파일 검증 통과.**
O→A 단절 수리 (선행 작업)
`agent.sh`의 `semantic_resolve_intents()` 개선: 1. 셀코어 입력 시 내부 모듈 키워드 우선 추출 2. 동작 동의어 확장 (생성→새/만들/초기) 3. 카테고리 정밀 필터 (fn_셀코어_XXX에서 XXX 매칭) 4. FAB 경로에서 셀코어 입력 O→A 직결 검증: 셀생성, 감사기록, 에이전트생성, 보안설정, 룰엔진실행 전부 O→A 경로 정상.관련 파일
신규 생성
- `/Users/ef/Downloads/CrownyTVM/crownycode-agent/intent/keywords_canonical.dat` — L0 한글 정체
- `/Users/ef/Downloads/CrownyTVM/crownycode-agent/intent/keywords_alias.dat` — L1 영→한
- `/Users/ef/Downloads/CrownyTVM/crownycode-agent/intent/translation_dict.dat` — L2 사전 1,222 단어
- `/Users/ef/Downloads/CrownyTVM/crownycode-agent/intent/translation_rules.dat` — L2 규칙 96개
- `/Users/ef/Downloads/CrownyTVM/crownycode-agent/intent/translation_learned.dat` — L3 학습 1,169건
- `/Users/ef/Downloads/CrownyTVM/crownycode-agent/intent/translate_intent.sh` — 변환기 CLI
- `/Users/ef/Downloads/CrownyTVM/crownycode-agent/intent/expand_dict.sh` — 자가 확장 로봇
- `/Users/ef/Downloads/CrownyTVM/crownycode-agent/intent/extract_canonical.sh` — 초기 추출기
- `/Users/ef/.claude/scripts/crownycode-gigaline.sh` — 기가팩토리 래퍼
수정
- `/Users/ef/Downloads/CrownyTVM/crownycode-agent/agent.sh` — O→A 수리 + 이중 색인 연결
13년 장기 성장 보장
1. **자가 확장**: 새 intent → 실패 큐 → 세션마다 rescue/refine → 사전 자동 성장 2. **유전형질**: 1,222 단어 + 96 규칙 = 신규 2-3단어 복합 intent 대부분 자동 처리 3. **다국어 확장**: alias 추가만으로 일본어/중국어 입력 지원 가능 4. **컴파일 검증**: 한선씨 컴파일러가 품질 게이트 — 잘못된 번역 자동 거부 5. **한글 정체성**: canonical은 순수 한글만, 영어는 alias에만 존재세션 시작 시 실행
~/.claude/scripts/crownycode-gigaline.sh cycle # rescue + refine
~/.claude/scripts/crownycode-gigaline.sh stats # 현황 확인
잔여 이슈
- `expand_dict.sh heuristic` 고정 사전 규칙 확장 여지 있음 (현재 300개 고정 매핑)
- L2 규칙 3단어 이상 복합 패턴 추가 가능 (현재 2-3단어)
- `keywords_canonical.dat`에 의미코드 역참조 아직 미완 (현재 `_` 플레이스홀더)
후속 작업 (2026-04-16 동일 세션)
크라우니코드 학습 (7건)
- `사전조회_단어` — L2 단어 사전 조회
- `다국어_alias조회` — L1 정확매핑
- `다국어_토큰변환` — L2 토큰 전수 분해
- `다국어_컴파일검증` — 크라우니어 검증 루프
- `다국어_L3승격` — 학습DB 승격
- `다국어_번역파이프` — L1→L3→L2 파이프
- `다국어_기가라인사이클` — rescue/refine 루프
셀코어 규칙 표현
- `std/기가팩토리.한선` — 실행 가능한 간소 검증판 (L1/L2/L3 파이프라인)
- `crownycode-agent/intent/han_companion/translate_intent.한선` — 번역기 한선씨 동반
- `crownycode-agent/intent/han_companion/expand_dict.한선` — 자가확장 한선씨 동반
agent.sh 통합
- 세션 시작 시 자동 `gigaline rescue` (마커 파일로 1회만)
- 새 서브커맨드: `translate`, `gigaline`
- `./crownycode-agent/agent.sh translate "api_gateway"` → `L2|API게이트웨이`
메모리 기록
- `/Users/ef/.claude/projects/-Users-ef/memory/project_crownycode_gigafactory.md`
- MEMORY.md 색인에 CrownyCode 섹션 추가
한선씨 컴파일러 이슈 발견
- `문자열.han`의 `대문자` 함수가 lexer의 `KwUpper` 키워드와 충돌 → 임포트 불가
- 해결: `나누기_` 인라인 재정의로 우회 (향후 `문자열.한선` 리팩터 필요)
Phase A+B+P0+P1+P2 전체 완료 (2026-04-17~18)
P0: 현업 투입 최소 조건
- **SQLite 전환**: gigafactory.db (WAL모드, 884KB, 무결성 OK)
- **동시성 보호**: lockf 기반 (5 병렬 쓰기 검증)
- **백업**: 자동 일일 + SHA256 체크섬 + 7일 보관
- **감사 이력**: audit 테이블 (전 변경 추적)
P1: 운영 가시성
- **모니터링**: gigafactory_monitor.sh (collect/dashboard/alert/trend/health)
- **대시보드**: 커버리지/L0~L3/감사이력/백업 상태 CLI
- **경보**: 실패후보>10, DB무결성, 백업경과, 커버리지저하 자동감지
- **건강진단**: 6항목 전 GREEN (DB/WAL/백업/커버리지/감사/회귀테스트)
P2: 품질 + 배포
- **품질 검증**: gigafactory_quality.sh (충돌/중복/짧은번역/일관성/컴파일)
- **API 서버**: server-translate.js (포트 4874)
- **게이트웨이 등록**: translate.crowny.org → localhost:4874 (CORS, 캐시 1시간)
신규 파일
- `intent/gigafactory.db` — SQLite 메인 DB
- `intent/gigafactory_db.sh` — DB 관리 CLI (init/migrate/backup/verify/translate/promote)
- `intent/gigafactory_monitor.sh` — 모니터링 CLI
- `intent/gigafactory_quality.sh` — 품질 검증 CLI
- `intent/server-translate.js` — HTTP API 서버
- `intent/backups/` — 일일 백업 디렉토리
Phase P3 완료 (2026-04-18)
P3-1: LaunchAgent 자동화
- `com.crowny.gigafactory.plist` — 6시간마다 자동 실행
- `gigafactory_cron.sh` — 메트릭 수집 + 일일 백업 + 경보 + 실패 회복
P3-2: 다국어 확장
- 일본어 40 alias + 중국어 40 alias 시드 완료
- alias 테이블 lang 필드로 자동 라우팅 (ja/zh/en/legacy)
- `サーバー` → L1|서버, `缓存` → L1|캐시 검증 통과
P3-3: 웹 대시보드
- translate.crowny.org/dashboard — 실시간 웹 UI
- 카드: 커버리지/L0~L3/실패/DB크기
- 다국어 분포 차트
- 실시간 번역 테스트 입력창
- 7일 트렌드 테이블
- 감사 이력 10건