매일 정상 종료하던 수집 작업이 신작을 모두 빠뜨린 원인을 찾고, 완료 조건을 바꿨다
- 2025-06 이후 출시작 0 → 5,930개
- 카탈로그 30,658 → 41,249개
문제 상황
추천은 DB에 수집된 게임 안에서만 이루어지므로, 목록에서 빠진 신작은 검색이나 추천 결과에 나오지 않는다. Silksong, Borderlands 4처럼 2025년 6월 이후 출시작이 하나도 검색되지 않았는데, 수집 작업은 매일 정상 종료 기록만 남기고 있었다. 처음에는 신작을 넣는 배치를 실행하지 않았다고 생각했지만 실행 기록은 정상이었다. SteamSpy를 직접 호출해 보니 2025-07-18 출시된 마법소녀의 마녀재판의 리뷰 수와 태그가 모두 비어 있었고, 같은 시점 Steam 공식 리뷰 API에는 리뷰가 34,518개 있었다. 출시일별로 비교하니 2025-05-30과 2025-06-10 사이부터 데이터가 갱신되지 않았다. 배치가 리뷰 50개 미만을 걸러 내므로 신작은 오류 없이 모두 탈락했다.
해결 방안
신작만 공식 API로 보충하는 방법은 제외했다. 같은 태그의 가중치가 SteamSpy 7,935, Steam 859처럼 척도가 달라 섞으면 추천 점수가 왜곡되기 때문이다. 대신 Steam 공식 목록 API(IStoreQueryService/Query)로 수집을 모두 옮겨 한 번에 1,000개씩 받게 했다. 수집 완료도 빈 페이지를 받았다는 이유만으로 판정하지 않고, 서버가 알려 준 전체 개수까지 받았는지로 판정하게 바꿨다. 중간에 빈 페이지, 저장 0건, 페이지 전체 저장 실패, 최대 페이지 도달은 모두 실패로 끝나게 했다.
결과
운영 첫 실행(2026-09-29)은 5분 16초에 38,033개를 저장했고 실패는 0이었다. 카탈로그는 30,658개에서 41,249개가 됐고, 2025년 6월 이후 출시작은 0개에서 5,930개가 됐다. 이틀째에는 게임이 하루 만에 2,227개 늘어난 것이 이상해 다시 조사했다. 리뷰 순이라고 믿었던 정렬 옵션 30은 같은 요청에도 순서가 달라 중복 저장과 누락을 만들고 있었다. 전체 131,045개를 한 번씩 순회해 중복이 0개인 정렬 2를 확인하고 바꿨다. 다음 실행에서 저장 횟수 38,842회가 실제 대상 수와 맞았고, 빠졌던 328개 중 327개가 들어왔다.


