증상
2축 옵션 구성(색상 × 플러그 타입)을 가진 상품이 등록에서 계속 거부됐다. 플랫폼의 옵션 모델이 그 구조를 표현하지 못한다. 변환이 아니라 손실이라 고칠 방법이 없었다.
해법
실패하면 대표 옵션 하나만 남겨 재시도하도록 폴백을 뒀다(items[:1]). 실측 실패 5건 → 0건.
★★ 앞선 항목에서는 같은 상황을 "3회 실패하면 사유를 적고 건너뛴다"로 처리했다. 그보다 나은 수가 있었다 — 건너뛰면 0건이고 축소 등록하면 1건이다. ★ "실패"와 "완전 성공" 사이에 중간 결과를 만들 수 있는지 먼저 보라.
⚠️ ★★★ 그런데 축소 폴백은 정보를 버리고, 그 손실은 사용자에게 간다
대표 옵션의 이름을 기본으로 넣었다. 그 이름은 구매자에게 아무것도 알려주지 않는다. 2축 상품을 1개로 등록하면 고객은 자기가 무엇을 받는지 모른다 — 플러그 타입이 다르면 그건 반품 사유다.
★★★ 기술적 성공이 제품적 성공이 아니다. "등록 성공 5건"은 지표상 완벽하고, 실제로는 사양 미고지 상품 5건이다.
★ 그래서 폴백에는 두 가지를 붙여야 한다.
fallback:single_option. "성공"으로만 집계하면 추적이 끊긴다★★ 손실 있는 폴백은 성공 카운터에 그냥 더하지 마라. 별도 집계가 없으면 언제 정상화해야 하는지 알 방법이 사라진다 — 나중에 플랫폼이 다축을 지원해도 어느 건을 고쳐야 하는지 모른다.