v3.8.0 — Phase 1 ③ 신뢰성 검증 (Phase 1 토대 완성)
v3.8.0 — Phase 1 ③ 신뢰성 검증 (over-trust 해소 / stale 자동 감지)
Phase 1(토대: 신뢰 가능한 효과적 회수)의 마지막 축. 회수된 stale 메모리를 검증 없이 믿는 over-trust를 막는다. 이로써 Phase 1 토대 3축이 모두 완성된다 — ①출처(v3.6.0) / ②효과적 회수(v3.7.0) / ③신뢰성(이번 릴리즈).
핵심 기능 (③)
- Canonical Facts Registry + 라이브 verifier: 메모리의 코드/사실 참조(임베딩 모델명·포트 등)를 현행 코드와 결정론적으로 대조해 stale 의심 판정. Gemma 미사용 — 운영비 0, CI에서 정확히 핀 가능.
- 판별 신호: 메모리가 옛 토큰(예:
bge-m3)을 담으면서 현행 토큰(arctic)을 미언급하면 stale 의심. 둘 다 언급하는 정당한 이력은 면제. - 회수 시 경고 라벨: stale 의심 메모리에 "재검증 필요: … (현행 코드/사실 대조 후 신뢰)" 1줄 동반 주입 (양 포맷터 byte-parity, v1 토큰낭비 금지 준수 — stale에만).
- SessionEnd 증분 트리거 + sidecar(주 1회 self-throttle) + 수동 CLI
reverify_cli(scan / list / verify-registry, 레지스트리 self-check). - 완료 게이트: 2026-05-30 "BGE-M3 → Arctic-ko" over-trust 사고(어시스턴트가 stale 임베딩 표기를 믿고 시스템 상태를 틀리게 답함)를 scan→yaml→formatter end-to-end 회귀 케이스로 고정.
신뢰성 (4-round 적대적 sweep, loop-until-dry)
구현 후 다차원 find→adversarial verify 워크플로로 Phase 1 전체를 새 결함 0건까지 반복 점검 (R1 8 → R2 2 → R3 4 → R4 0 수렴). 누적 14건 처리(13 수정 + 1 문서화):
- CRITICAL: 테스트 스위트가 사용자 실제 메모리를 변경하던 격리 누락(
conftest의MV3_MEMORY_DIR미격리) — 수정 + 회귀 가드. - HIGH:
install.sh가 reverify 모듈 미배포 → 배포 환경에서 ③ silent no-op — 수정 + 가드. - 그 외: YAML 미인용 frontmatter 소실, CRLF 본문 보존, 클록 역행 영구 SKIP,
_is_deprecated2KB cap의 Layer 5 감쇠 누락, parser BOM 불일치,_atomic_write동시 race 등.
검증
- 회귀: 678 → 741 passed, 1 skipped, 25 subtests (회귀 0)
- Layer 5(모순감지) 무손상, 두 회수 포맷터 byte-parity 유지
- 자동 게이트 조정·메모리 본문 auto-edit은 미구현 유지(설계 §4.4 — 잘못 학습된 loop 위험 회피)
설계·plan: docs/specs/2026-05-31-phase1-reliability-design.md, docs/plans/2026-05-31-phase1-reliability.md.