TVM 패턴DB 대정제 (all_patterns.dat)
개요
/Users/ef/Downloads/CrownyTVM/crownycode/data/all_patterns.dat(189MB, 329만줄) 무결성 스캔에서
멀티라인 잔재 86%(281만줄)·접합 4452·파편 59343·주석만 47302·중복intent 53691 오염 발견 →
백업→비파괴 정제(perl 스트리밍)→검증→스왑 절차로 정리.
절차
- 백업:
all_patterns.dat.bak-20260705 (182,597,860B, 원본과 바이트 동일 확인).
- 정제 스크립트: perl 2패스 스트리밍(
clean_patterns_v2.pl).
- 패스1: 파일 전체에서 "진짜 레코드 시작 intent" 집합 구축(해시).
- 패스2: 형식(
^intent|han|) 미일치 줄(멀티라인 잔재) 드랍, 접합줄은 내부
|han| 재출현 지점 중
(a) 비공백/비따옴표 abut
and (b) 해당 토큰이 실제 파일에 진짜 intent로 존재 — 둘 다 만족하는
가장 이른 지점에서만 절단(그 외엔 오탐으로 판단해 전체 유지). 코드부<50자 파편 드랍,
이스케이프
\n 기준 전체가
// 주석뿐이면 드랍, intent 중복은 첫번째만 유지.
-
핵심 발견: 단순
|han| 문자열 카운트만으로 접합 판정하면 크라우니코드 자체(학습DB조합기,
무결성판정 데모코드 등)를 설명하는 자기참조 메타레코드가 오탐 잘림(false truncate)된다.
실측 2건(
학습함수프로그램조합기,
학습DB무결성판정) 발견 후 v1→v2로 교정(intent 존재 여부
교차검증 추가), 재실행 후 원본과 바이트 단위 일치 확인.
- 카운터 (원본 3,293,150줄 기준, 전량 합=총줄수 정확히 일치):
- 유지 49,712 · 접합절단 4,445 · 파편드랍 59,343 · 주석드랍 4,006 · 중복드랍 5,195 ·
잔재드랍(멀티라인) 2,817,040 · 빈줄 357,854
- 검증:
crownycode-db-integrity.sh scan 재실행 → 접합/멀티라인/파편/주석만/중복 전부 0
(단, 자기참조 메타레코드 5건은 스캐너의 단순 휴리스틱상 "접합"으로 재표시되지만 길이 대조로
원본과 완전 동일함을 개별 확인 — 정상, 오탐). 표본 10건 100% 일치. 뇌 회귀(
환불 판정) HIT.
- 스왑:
all_patterns.dat → all_patterns.pre-clean.dat(구 원본, 스왑 시점 1줄 추가분 포함
3,293,151줄) 이동,
all_patterns.clean.dat →
all_patterns.dat로 확정.
- 스왑 직전 동시성 쓰기로 원본에 신규 레코드 1건(
뇌셀인덱스_27방사형균형3진조회)이 추가된 것을
감지 → 유실 방지를 위해 새
all_patterns.dat에 별도 append(49,713줄로 확정).
- 리로드:
POST :9977/reload → RELOADED|58363 성공.
동시성 관찰
스왑 직후(수 초~1분 내) 다른 세션/프로세스가
all_patterns.dat에 약 15,199줄을 실시간 추가
(49,713→64,912줄, 38→38MB대). 19+ 세션 동시 작업 환경 특성상 정상 — 이번 작업 범위(레거시
오염 정리) 밖이며, 신규 추가분의 자체 품질(파편/주석만 재발생 여부)은 별도 모니터링 대상으로 남김.
관련 파일
- 원본 백업:
/Users/ef/Downloads/CrownyTVM/crownycode/data/all_patterns.dat.bak-20260705
- 스왑 전 원본(구):
/Users/ef/Downloads/CrownyTVM/crownycode/data/all_patterns.pre-clean.dat
- 정제된 신규 원본(현재 라이브):
/Users/ef/Downloads/CrownyTVM/crownycode/data/all_patterns.dat
- 정제 스크립트:
/private/tmp/claude-501/-Users-ef/1c8c0863-04ad-43c0-ab36-0a1af6946a09/scratchpad/clean_patterns_v2.pl
- 실행 로그:
/private/tmp/claude-501/-Users-ef/1c8c0863-04ad-43c0-ab36-0a1af6946a09/scratchpad/clean_run_v2.log
- 무결성 상세:
/tmp/무결성상세_Users_ef_Downloads_CrownyTVM_crownycode_data_all_patterns.dat.psv
- 스캐너:
~/.claude/scripts/crownycode-db-integrity.sh
잔여 이슈
- 자기참조 메타레코드 5건은 스캐너 재실행 시 "접합"으로 재표시됨(휴리스틱 한계, 실제 무손상 확인됨)
— 스캐너 개선 여지(향후: intent 실존 여부 교차검증 로직을 스캐너에도 반영 고려).
- 스왑 후 동시추가분(약 1.5만줄)의 품질은 이번 정제 범위 밖 — 다음 정제 사이클에서 함께 처리 필요.
- 백업 2종(
.bak-20260705, .pre-clean.dat) 총 365MB 잔존 — 검증 안정화 후 정리 여부는 판단 보류(삭제하지 않음).