사용자(260917): "gemini D2가 tagmem이 지는 게 아쉽네, 왜 저런지 분석해볼까?" D2 = 단일 물체·비은닉·로봇이 건드리지 않은(non-target) 물체. 행동 로그엔 없고 시각 기억만이 답할 수 있는 칸(오라클 textlog도 16.0에 그침). 이어서 사용자 목표: "5칸 전부 이기고 싶다" → 칸별 유의성 검정으로 확장. 또한 find=v5·restore=v11로 가족마다 tagmem writer가 다른 상태라 "find도 v11로 통일해서 측정해볼까"라는 요청이 이어졌다.
보관 데이터만 사용(tmp/find_final_flash37_merged.json, 589질의×7전략). 스크립트 tmp/d2/: reproduce.py(표 재현·McNemar) → diagnose.py(쓰기/검색/읽기 분해) → coverage.py → vocab_check.py → confusion.py → v11_predict.py(v11 그래프로 $0 검증) → evidence_coverage.py → significance_bold.py(칸별 McNemar).
판정 정의: 물체를 든 항목이 없으면 미기록, 있으나 정답 방·가구와 묶이지 않으면 오결합, 있으면 정상 결합.
이후 사용자 결정(260917)으로 find tagmem 쓰기를 v5→v11(가구당 항목 1개)로 통일하는 사전등록 측정을 실행 — 589질의 전량, 53편은 그래프 재사용(restore 루트와 공유), 47편은 find 영상으로 신규 ingest. 채택 기준: 조건이 완전히 같은 단일답·비은닉 483행(D1+D2) place가 v5 .555에서 .010 넘게 떨어지지 않으면(≥.545) 통일.
| 쓰기 상태 | n | tagmem | vis-pure |
|---|---|---|---|
| 정상 결합 | 176 (66%) | .767 | .682 |
| 오결합 | 51 (19%) | .098 | .392 |
| 미기록 | 41 (15%) | .293 | .463 |
| GT 가구 | n | vis-pure | tagmem |
|---|---|---|---|
| dining table | 140 | .586 | .479 |
| countertop | 84 | .702 | .750 |
| tv stand | 18 | .056 | .167 |
| desk | 8 | .375 | .875 |
dining table에서 −15행, 나머지에서 +8행 → 순변화 −7행(=전체 격차). dining table을 빼면 tagmem이 모든 가구에서 vis-pure 이상. 원인: 부엌은 어질러진 식탁의 곁다리 물체 누락(18행), 침실·거실은 식탁↔책상 이름 혼동.
| 칸 | n | frames | rf-v3 | vis-pure | tagmem | 1위와 유의차 없음 |
|---|---|---|---|---|---|---|
| D1 | 215 | 37.7 | 41.9 | 49.3 | 54.0 | vis-pure (p=.25) |
| D2 | 268 | 52.2 | 38.8 | 59.3 | 56.7 | tagmem (p=.48) |
| D3 | 51 | 23.5 | 52.9 | 39.2 | 54.9 | rf-v3(1.0)·vis-pure(.06) |
| 칸 | n | v5 | v11 | 오름/내림 | p |
|---|---|---|---|---|---|
| D1 | 215 | .540 | .535 | 16/17 | 1.00 |
| D2 | 268 | .567 | .567 | 23/23 | 1.00 |
| D3 | 51 | .549 | .490 | 5/8 | .58 |
| S1 | 34 | .088 | .147 | 2/0 | .50 |
| S2 | 20 | .150 | .050 | 0/2 | .50 |
| 전체 | 588 | .514 | .507 | 46/50 | .76 |
정답 물체가 정답 위치와 함께 기록된 비율(물체 단위, 331개): v5 61.6% vs v11 60.4%(부호검정 p=.70). restore 실측 효과도 +.011(p=.57). writer 재추출 한 번에 D3·S2의 명목 1위가 넘어감 — 칸별 굵은 글씨는 단일 측정으로 불안정.
D2 "패배"는 동률이고, 구조적으로는 tagmem이 기록이 맞을 때 vis-pure보다 +8.5pp 낫다. 텍스트 메모리의 고유 비용이 드러난 칸이다: tagmem은 쓰기 시점에 가구 이름을 확정하고(질문을 모르는 채로), vis-pure는 그 판단을 읽기 시점까지 미룬다. 확정이 틀리면 없는 것보다 나쁘다.
find를 v11로 통일하면 "가족 간 writer 통일"이라는 명분은 채우지만, D3·S2의 명목 1위가 우연히 넘어가는 부작용이 있고 실질적 이득이 없다 — 통계적으로 재추첨에 가깝다. 사용자는 이를 확인한 뒤 find는 v5 유지, 32B 열만 업데이트로 결정했다.
find=v5·restore=v11의 writer 불일치가 논문에 남는다(공시 여부 사용자 판단). 남은 레버는 writer의 표면 위 물체 전수 기록(부엌 18행)뿐인데 재ingest ≈$13이고 특정 가구 겨냥 프롬프트는 벤치마크 과적합이라 권장하지 않는다.
32B에서 같은 D2 분해를 하면 쓰기 병목이 모델 크기와 어떻게 변하는지 나온다($0). 논문 서술: "기록이 맞으면 +8.5pp, 틀리면 −29pp; 검색 실패 0"은 텍스트 메모리의 쓰기 병목 주장을 직접 뒷받침하는 문장으로 채택.