is_placed_on 통과본 런 스크립트(tmp/submit_plan_main.sh, place_set 1,572칸) 제출 전에 사용자가 "online control 한 개 샘플 돌려보고 쭉 보여줘"라고 요청했다. 전날(260917) PLACE_MODE=vla·턴 판정 통일·preplace hand-off를 넣었지만(관련 카드) 온라인에서 그 사슬이 실제로 도는지는 한 번도 확인한 적이 없었다.
셀 A = v1_train_1362__0 mug→countertop, 셀 B = v1_train_2277__2 salt shaker→countertop (둘 다 textlog). 런 8회를 거치며 결함을 순서대로 잡았다.
| 런 | 결과 | 드러난 문제 → 수정 |
|---|---|---|
| A v1 (131964) | 4턴 fail | 머그를 조리대까지 들고 갔지만 내려놓지 않고 done. 실측 머그 중심 z=0.777 vs 상판 0.937(관통). drive.py snap_to가 carry 시 팔을 안 접음 |
| A v2 (132055) | 30턴 취소 | 관절공간 홈으로 접었더니 컵을 두고 팔만 이동. 취소 시 episode.json 기록 없음 → flush_record 턴별 원자적 기록 추가 |
| A v3 (132333) | 4턴 fail | move_eef_to(IK+가드+정착)로 preplace/carry 통일, carry 동반검증(slip 2.7mm) — 관통은 사라졌지만 또 done |
| A v4 (132439) | 취소 | navigate 직후 관측 4장 중 after=현재 뷰가 892/892 픽셀 동일(전수 실측) → [before, 주행중간, wrist]로 교체 |
| A v5 (132644) | 4턴 fail | wrist 추가해도 또 done — 이 셀 고유의 VLM 오판으로 판단, 셀 변경 |
| B v1 (133509) | 7턴 fail | 드디어 pick_and_place→preplace=true인데 VLA가 바닥에 놓음. 레이캐스트 실측: preplace 점이 U자 조리대 AABB의 빈 속(허공) |
| B v2 (133665) | 28턴 취소 | preplace_surface_points(레이캐스트 검증)+surface_approach_candidates(실제 상판 rim 기준) 적용, 사전검증 6/6 도달. 런 중 낙하(slip 0.50m) → lifted_gt 가드가 재집기 거부 |
| B v3 (133705) | 14턴 success | 낙하 시 lifted_gt 제거 + nav 루프 가드(6) 적용 → 성공 |
| 지표 | 수정 전 | 수정 후 |
|---|---|---|
| 테이블 관통 (머그 윗면 vs 상판) | 0.859 < 0.937 (관통) | 관통 0 |
| carry 동반검증 slip | A v3 2.7mm · A v5 1.5mm | B v3 성공런 0.3mm |
| navigate 직후 관측 중복 | after≡현재뷰 892/892 (MAD 0.00) | 3-프레임 세트로 교체 |
| 표면 접근 도달률 (B 씬) | AABB 규칙 0/10 (최근접 0.78m) | rim 규칙 6/6 (0.36m) |
| 온라인 VLA place 성공 | 0/52 (누적) | B v3 첫 성공 (47스텝) |
사용자 지적 4건(관통·팔만 이동·EEF 중립·바닥 앞)이 전부 맞았고, 그때마다 내 첫 진단("VLA 품질", "기억 없음")은 틀렸다. 영상을 먼저 보고 수치로 확인하는 규칙이 매번 오판을 잡았다.
파일럿(하네스 프리미티브 place)에서는 안 보이던 결함들 — AABB=표면 가정, carry 관통, 재집기 가드 — 이 PLACE_MODE=vla로 바꾸자 전부 드러났다. 프리미티브가 물리를 건너뛰어 이 결함들을 가려 왔던 것이다.
restore 채점은 종료 시점 is_placed_on(done 불필요)이라, B v3처럼 놓고도 에이전트가 모르면 nav 가드가 끊어도 성공으로 채점된다.
hand-off 지점이 조리대 모서리(가장자리 8cm)였다 — 접근 후보에서 앞쪽 표면 폭이 넓은 자리를 우선할지는 미결. 다른 세션이 nav0.py에 자리 게이트(nav_gate.py, 벽·가시성 검사)를 병행 작업 중 — 본 런 스냅샷에 포함할지 사용자 결정 대기.
본 런(1,572칸, tmp/submit_plan_main.sh) 미제출 — 위 수정 전부 반영된 스냅샷은 준비 완료, 제출은 사용자 지시 대기. 관련 리포트 폴더: 260917-online_one_sample_compare/(A v1~v3), 260917-online_salt_place_chain/(B v1), 260918-online_salt_place_success/(B v3).