ai-coding-mines목차GitHub

성공 응답에 "핵심 산출물 0개"가 섞이면 성공이 아니다

Python · DB

증상

등록 47/47이 registered: true, reason: null로 전부 성공. 그런데 전량 이미지 0장이었다. 실물을 눈으로 볼 때까지 아무도 몰랐다.

원인

외부 데이터의 형식을 가정했다. 엔트리가 {name, sources:[{url, priority}...]} 구조인데 v.get("url")로 flatten해서 전부 None이 됐다. URL이 빈 문자열이 되니 수집이 아예 안 돌았고, 그래도 등록 자체는 성공했다.

해법

규율

수집=이미지, 등록=이미지, 번역=번역본 — "있어야 할 것 0개"는 조용히 넘기지 않는다.

빈 레코드가 가격만 얹은 채 등록을 통과해 판매까지 갔다

스크래핑이 실패한 잔재 — 본문도 속성도 없는 레코드 — 에 가격 하나만 붙어 등록 검증을 통과했고, 판매중 상태로 발견됐다. 주문이 들어오면 발주 자체가 불가능하다. 소싱처 미연결은 "어디서 사는지 모른다"지만 이건 상품이 없다.

빈 레코드의 네 가지 지표(정상 건과 대조):

  1. 이미지가 해시 파일명 1장 — 정상은 벤더 코드 파일명 + 모델컷 2장 이상
  2. 속성 전량 공란, 본문 비어 있음
  3. 옵션이 자리표시 문구("상세설명 참조")
  4. 고시정보 양식이 카테고리와 불일치 — 폰 액세서리인데 자동차부품 양식

★ 등록 검증에 "가격 있음"만 있고 "핵심 산출물 있음"이 없으면, 실패 잔재가 정상 건과 같은 문을 통과한다.