← Blog디버깅 전쟁 일지· 2/7

mission_success=1은 PASS가 아니다 — strict_pass 게이트의 탄생

수백 개 런이 'mission_success=1'로 성공 표시됐지만, 실제 산업 등급 grasp는 단 한 건이었다. 이진 성공 플래그가 어떻게 false PASS의 온상이 됐고, 그걸 막는 strict_pass 게이트는 어떻게 생겼나.

약 2분
debuggingKPIfalse-passvalidationwar-story

mission_success=1은 PASS가 아니다

로봇팔 검증을 누적해 보니, 수백 개의 런이 mission_success=1 — 즉 "성공"으로 찍혀 있었습니다. 보고서상으론 훌륭했습니다. 그런데 그 성공들을 하나하나 열어 보자, 실제로 산업 등급으로 물건을 집은 건 단 한 건이었습니다. 나머지는 무엇이었을까요?

이진 플래그의 함정

mission_success는 0 아니면 1, 이진 플래그입니다. 문제는 이 플래그가 "무엇을 성공으로 칠지"가 느슨하다는 것입니다. 그래서 온갖 종류의 "사실은 실패"가 1로 새어 들어왔습니다.

도식 렌더링 중…

false PASS는 한 가지가 아니라 여러 패턴으로 들어왔습니다.

  • skip을 pass로 — 단계를 건너뛰었는데 실패가 아니라 성공으로 처리
  • 예외를 skip으로 — 에러가 났는데 조용히 넘어가 성공으로 집계
  • 평균을 전체로 — 일부 셀만 잘됐는데 평균을 내 전체 성공처럼
  • 임계값 모호 — "어느 정도면 성공"의 기준이 없어 통과
  • 커버리지 공백을 pass로 — 측정 안 한 부분을 실패가 아닌 성공으로 가정

strict_pass — 진짜를 가르는 게이트

해법은 "성공"을 여러 임계값의 AND 조건으로 다시 정의하는 것이었습니다. 단순히 "임무 성공"이 아니라, 측정 가능한 물리량으로:

strict_pass = (mission_success = 1)
            AND (물건 들림 > 50 mm)
            AND (놓은 위치 오차 < 100 mm)

"물건을 50mm 이상 확실히 들었고, 목표 위치 100mm 이내에 놓았는가" — 이게 충족돼야 비로소 진짜 PASS입니다.

💡 strict_pass를 적용하자 드러난 현실 — 이 게이트로 다시 채점하니, 가장 잘하던 작업조차 진짜 성공률이 15% 수준이었고, 일부 작업은 0%였습니다. "수백 건 성공"이 사실은 "소수의 진짜 + 다수의 false PASS"였던 것입니다.

작업별 'mission_success=1'(보고상 성공, 회색)과 strict_pass(진짜 성공, 시안) 비율. 모든 작업이 보고상 100% 성공이지만, 들림·배치오차 임계값을 적용한 진짜 성공률은 BACKBONE/COBOT 15%, 나머지는 0%다.작업별 'mission_success=1'(보고상 성공, 회색)과 strict_pass(진짜 성공, 시안) 비율. 모든 작업이 보고상 100% 성공이지만, 들림·배치오차 임계값을 적용한 진짜 성공률은 BACKBONE/COBOT 15%, 나머지는 0%다.

⚠️ 검증 레벨을 구분하라 — "코드가 돈다(L0)", "단위 테스트 통과(L1)", "E2E 실제 동작(L2)", "영상 확인(L3)"은 전혀 다른 수준입니다. mission_success=1은 L0~L1에 가깝고, 진짜 PASS는 L2 이상에서만 말할 수 있습니다. 낮은 레벨의 통과를 "검증됐다"고 부르면 안 됩니다.

왜 이게 중요한가

검증 플랫폼의 존재 이유는 "되는 척"을 걸러내는 것입니다. 이진 성공 플래그를 믿으면, 가장 중요한 가치 — 신뢰 — 가 무너집니다. strict_pass 같은 fail-loud 게이트는 불편하지만(성공률이 확 떨어져 보이니까), 그 불편함이 정확함입니다. "나사 몇 개 빠뜨리고 다 됐다고 보고"하지 않으려면, 게이트가 엄격해야 합니다.

한 줄 정리

📌 mission_success=1 ≠ 진짜 PASS. 이진 플래그는 skip·예외·평균·모호한 임계값을 통해 false PASS를 양산한다. strict_pass(성공 AND 들림>50mm AND 오차<100mm) 같은 다중 임계값 AND 게이트로 다시 채점해야 진짜가 드러난다 — 그러면 '수백 건 성공'이 소수로 줄어든다.