knowledge(M01): 목록 캐시 교차 검증 — 1,354 전수 · 고침 시나리오 · 조합, 어긋남 0 (일감 32)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
This commit is contained in:
2026-09-22 02:53:34 +09:00
co-authored by Claude Sonnet 5
parent 6767b00137
commit ff979104ee
@@ -0,0 +1,24 @@
# 목록 캐시 교차 검증 (일감 32)
대상 = `M01_MasterData_Store_Cache` — 마스터를 한 번 읽어 두고 목록은 미리 센 막힘 값을 씀. 정본은 안 건드리고 임시 사본에서만 시험. 잰 뒤 정본 조합 파일·키 대장 해시가 앞뒤 같음.
## 어긋난 것 — 없음
| 확인 | 범위 | 결과 |
|---|---|---|
| ① 미리 센 막힘 = 그 자리에서 검사한 값 | 로직 1,354 전수 | 어긋남 0 (막힘 0건 · 까닭 글까지 같음) |
| ③ 목록 이름·구분·상세구분·결과단위·원문번호·출처·소유·파일 = 파일 값 | 1,354 전수 | 어긋남 0 · 빠지거나 남는 키 0 |
| ③ 거름(구분·상세구분 조합 전부 · 막힘 0/1) | 전부 | 어긋남 0 |
| ② 고친 척한 뒤 다시 센 값 = 캐시 없이 전부 새로 센 값 | 아래 | 어긋남 0 · **덜 센 경우 0** |
| ④ 조합 목록 = 조합 줄마다 새로 검사한 값 | 조합 1줄(견본) + 변형 | 어긋남 0 |
② 시나리오(모두 전수 대조): 부르는 로직에 입력 추가(불리는 로직 41개 중 25개 뽑아) · 로직 줄 삭제 · 이름만 바꿈 · 로직을 다른 파일로 옮김 · 호표에 로직 호출 새로 추가 → 그 피호출 로직을 고침(새 간선도 다시 셈) · 요소·표 파일 8개(계수·소요량·요율) 고침 · 요소 줄 삭제 둘(인력 LB000014 → 로직 31개가 막힘으로 바뀜 · 재료 MP000082 → 1개).
④ 변형: 담은 로직에 입력 추가(막힘 0 유지) · 담은 로직 삭제(막힘 1) · 조합 줄 추가 · 조합 비움.
## 어긋남은 아니나 알아 둘 것
1. **파일 단위로 다시 셈** — 로직 하나를 고치면 그 파일 줄 전부를 다시 셈. 08장 건설기계(462줄)의 로직 5개는 다시 센 수가 462 인데 꼭 필요한 것은 12~138줄. 값은 맞고 덜 세지 않음 — 그저 더 셈(0.1초대 아님·초 단위 아님, 저장 뒤 첫 목록에서만).
2. **같은 크기 · 같은 시각 고침은 못 알아챔** — 파일 자국(시각·크기)이 그대로면 옛 값이 남음(시험: 글자 하나를 같은 크기로 바꾸고 시각을 되돌림 → 목록 이름이 옛것). 저장 길은 `stale` 로 알려 주므로 안 겪음 · 손으로 파일을 고치고 시각까지 되돌리는 경우만 해당.
3. 정본에 막힌 로직이 0 이라 「같은 값」 판정은 막힘이 있는 경우를 고침 시나리오(로직 31개가 막힘으로 바뀜 등)로 보강해 확인.
시험 코드는 `tmp/` 임시(git 밖) — 다시 하려면 `test_m01_cache.py` 에 시나리오를 얹을 것.