← 목록
기타 2026-07-05 4KB 읽기 5분

TVM 패턴DB 대정제 (all_patterns.dat)

개요

/Users/ef/Downloads/CrownyTVM/crownycode/data/all_patterns.dat(189MB, 329만줄) 무결성 스캔에서 멀티라인 잔재 86%(281만줄)·접합 4452·파편 59343·주석만 47302·중복intent 53691 오염 발견 → 백업→비파괴 정제(perl 스트리밍)→검증→스왑 절차로 정리.

절차

  1. 백업: all_patterns.dat.bak-20260705 (182,597,860B, 원본과 바이트 동일 확인).
  2. 정제 스크립트: 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 존재 여부 교차검증 추가), 재실행 후 원본과 바이트 단위 일치 확인.
  1. 카운터 (원본 3,293,150줄 기준, 전량 합=총줄수 정확히 일치):
- 유지 49,712 · 접합절단 4,445 · 파편드랍 59,343 · 주석드랍 4,006 · 중복드랍 5,195 · 잔재드랍(멀티라인) 2,817,040 · 빈줄 357,854
  1. 검증: crownycode-db-integrity.sh scan 재실행 → 접합/멀티라인/파편/주석만/중복 전부 0
(단, 자기참조 메타레코드 5건은 스캐너의 단순 휴리스틱상 "접합"으로 재표시되지만 길이 대조로 원본과 완전 동일함을 개별 확인 — 정상, 오탐). 표본 10건 100% 일치. 뇌 회귀(환불 판정) HIT.
  1. 스왑: all_patterns.datall_patterns.pre-clean.dat(구 원본, 스왑 시점 1줄 추가분 포함
3,293,151줄) 이동, all_patterns.clean.datall_patterns.dat로 확정. - 스왑 직전 동시성 쓰기로 원본에 신규 레코드 1건(뇌셀인덱스_27방사형균형3진조회)이 추가된 것을 감지 → 유실 방지를 위해 새 all_patterns.dat에 별도 append(49,713줄로 확정).
  1. 리로드: POST :9977/reloadRELOADED|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 잔존 — 검증 안정화 후 정리 여부는 판단 보류(삭제하지 않음).