Index
2026-09-22 — Experiment (사전등록)

resume D칸 절제 — 어휘 v2 + 발화 주입 + 10s 청크, 실패 방향이 더 나빠졌다

scene_bench | resume(type2) writer 개입 5번째 시도 — Qwen3.8-27B 스모크, $3.23

TL;DR

0/0
resume_ok (V/D, 기준 3)
18/20
pending 과대보고
1→6
"다 끝났다" 오답
5/5
누름 개입 실패 누적
$3.23
스모크 비용

1 배경 / 목적

claude/260922/exp-resume_rfv3_append_ablation.md의 행 단위 진단에서 resume 실패 원인이 셋으로 갈렸고, 그 중 둘은 하네스 결함으로 의심됐다.

결함 후보 1 — writer 인벤토리 누락: 실제 씬에 있는 Laundry_Hamper(61편 전부, 발화는 "basket" 82회)·microwave oven이 답 어휘에 없어 writer가 floor로 잘못 매핑한다.
결함 후보 2 — writer가 발화를 못 듣는다: load_episode가 kind=="type3"(routine)일 때만 heard를 채운다. resume reader는 전 전략이 명령 목록을 받는데 writer만 귀가 막혀 있다 — 가족 간 불일치.
결함 후보 3 — 관측 밀도: 누름 단위는 샘플 프레임 중앙 2장뿐. 단 260919(find, 30s→10s)에서 밀도 단독 효과는 +0~2.8pp로 기준 미달이었다.

2 작업 내용

사용자 결정(260922): 2×2 대신 D칸(전부 켬) 하나만 선별(screen)로 돌린다 — D가 안 움직이면 나머지 셋도 안 움직인다.

D = 어휘 v2(SBENCH_WRITER_INVENTORY=v2) + 발화 주입(SBENCH_WRITER_HEARD=1) + 10s 청크(SBENCH_CHUNK_WINDOW_S=10, 기본 30) 답 어휘(SURFACES)는 건드리지 않음 → find/restore 채점 불변 발화 ≠ SBENCH_WRITER_TASK(그건 find/restore에서 명백한 누출, D1 .075→.580) — 발화는 로봇이 실제로 들은 입력 모델: Qwen/Qwen3.8-27B(오픈 중 flash와 가장 가까움), API $0 전략 3종: rollforward-v3 · rollforward-vis-pure · tagmem-r3

사전 지정 판정: D ≈ 기준선 → 종료 / D > 기준선 → V칸(인벤토리만)으로 분해해 원인을 특정 — 분해 없이는 본표에 넣지 않는다.

GPU 큐가 막혀(AssocGrpGRES) 오픈 모델 잡이 대기만 하자, flash-3.7로 먼저 스모크(대상 유형 든 8편 14행: 담기 9·누름 5, rf-v3 단독). 잡 148276/148280(본 런 대상)은 한 번도 실행되지 않고 취소(GPU·비용 0).

3 결과

스모크 점수 (14행 같은 행 대응, rf-v3)

지표기준(30s·발화없음·인벤토리v1)V(어휘만)D(전부)
resume_ok300
tasks_ok742
remaining_ok520
named_finished(완료를 미완)682
답이 빈 목록("다 끝났다")106
올린 명령 수 합232511
D는 실패 방향을 뒤집는다 — 더 나쁜 쪽으로. 발화를 주면 writer가 세려고 시도하고 틀린다: "instructed to press the button 5 times. After pressing it 4 times (4/5)…"(실제 3회). 틀리는 방향이 "완료"라서 reader가 "다 끝났다"로 답하는 행이 1→6으로 늘었다. 10s도 역효과 — 청크 20→58, rf-v3 재작성 3배 = 오류 고착 3배.

D 메모리 전문 판독 — 지시문 쪽으로 완료를 지어낸다

평균/행(14행)기준(30s)V(어휘)D(전부)
장면 묘사5.074.361.79
접근·시도 동사1.792.000.21
개수·완료 표현1.641.642.57
"the user / instructed / interrupted"0.000.145.79
pending 과제 20개 판정수
정확0
과대 (그중 "n/n, completing the task" 지시된 총수만큼 끝냈다고 씀)18 (그중 15)
과소0
판독 불가2
실제 예시: train_1843:cut_06 실제 3/5 → "…completing 5 presses (5/5)". train_1639:cut_01 실제 2/4 → "all four irish potatos … completing the task". train_1639:cut_10 실제 3/4 → "a fifth and sixth irish potato"(지시된 4를 넘어 6). pending 과제는 정의상 m < n이 항상 참인데 메모리는 18/20에서 n에 도달했다고 적는다 — 프레임을 세는 게 아니라 지시문의 숫자를 베껴 쓴다.

어휘 수정은 작동하지만 무관하다

메모리 원문 basket 등장 4→9행("dropping each into the laundry basket"). 그런데 같은 행에서 기준도 이미 개수를 맞게 세고 있었다 — train_204:cut_05: "I placed 4 eggs … leaving 2 eggs" → 답 remaining 1(정답). 그런데 끝난 심부름("move the remote…")을 같이 올려 0점. 담기 실패의 지배 원인은 어휘가 아니라 심부름 오보고였다 — 앞선 train_2739 한 편에서 본 "floor 매핑"을 일반적 원인으로 본 것은 과잉 일반화(정정).

4 Takeaway

의미

1. 누름에 대한 개입이 다섯 번째로 실패했다 — 명시 지시(v3c)·구조 보존(append)·팔 접기·밀도 3배·발화 주입. 발화 주입은 특히 해롭다: 세려고 시도하다 틀린 값을 확신한다.

2. 어휘 누락은 실재하지만 지배 원인이 아니었다. 고치면 writer가 "basket"이라 쓰지만 점수는 안 오른다. laundry basket·microwave oven 누락은 결함으로 기록하되 우선순위는 낮다.

3. 새 표적: 심부름 오보고. 기준선 14행 중 6행이 이것 때문에 0점이고 오라클은 0.000이다(메모리 전략만 하는 오류). 누적은 오히려 더 심하다(.236→.261) — 연산자 축(재작성/누적)과 무관한 별개의 축.

4. 260921 지시문 A/B(find/restore D1 폭등)와 같은 현상의 resume 판이다: writer에 과제 정보를 주면 메모리는 관측 기록이 아니라 과제 재진술이 된다. 텍스트 채널에서만 일어난다(vis-pure는 프레임만 골라 저장할 뿐 지어낼 수 없다).

5 Next Steps

미해결 한계

visit_rooms는 이 8편에 없어 음성 대조군을 검증하지 못했다(본 런 취소로 미검증). n=14·대상 유형 편중 표본이라 "세 요인이 해롭다"까지는 주장하지 않는다 — 주장 가능한 것은 "이 세 요인으로는 안 올라간다"까지.

다음 실험

"writer가 발화를 듣게 하자"는 기각 확정. 심부름 종료가 메모리에 어떻게 남는지 행 단위 확인($0, 보관 데이터만으로 가능) — 유형 4개 전부에 걸친다. visit_rooms 총 방 수 결함은 유일하게 효과가 확인된 수정(31행 제외 시 오라클 .789→.877, 순위 불변)이므로 우선 적용 검토.