From 0f7f5ea0ab0e61e49963f2f66ca9b5d1b5064b81 Mon Sep 17 00:00:00 2001 From: bot-backend Date: Sat, 27 Jun 2026 22:39:47 +0300 Subject: [PATCH] =?UTF-8?q?fix(tradein/domclick-local):=20resume=20?= =?UTF-8?q?=E2=80=94=20=D1=83=D0=B1=D1=80=D0=B0=D1=82=D1=8C=20=D0=BF=D1=80?= =?UTF-8?q?=D0=B5=D0=B6=D0=B4=D0=B5=D0=B2=D1=80=D0=B5=D0=BC=D0=B5=D0=BD?= =?UTF-8?q?=D0=BD=D1=8B=D0=B9=20added=3D=3D0=20break=20=D0=B2=20=5Fpaginat?= =?UTF-8?q?e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit При resume первые страницы каждого бакета = топ-qi офферы, уже лежащие в done → _add_offers возвращал added=0 → _paginate делал break → enumerate собирал 0 новых (st=0 при resume; на первом прогоне done пуст, не проявлялось). Терминаторы пагинации — только пустая страница и offset>=bound. Подтверждено: resume со 114 done → st собрал 546 новых студий (660-114). --- tradein-mvp/backend/scripts/domclick_local_runner.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tradein-mvp/backend/scripts/domclick_local_runner.py b/tradein-mvp/backend/scripts/domclick_local_runner.py index 26e7ff9e..8f7979fd 100644 --- a/tradein-mvp/backend/scripts/domclick_local_runner.py +++ b/tradein-mvp/backend/scripts/domclick_local_runner.py @@ -852,10 +852,11 @@ async def _paginate( ) if not offers: break - added = _add_offers(offers, seen, done, out, target_new) + # NB: НЕ break при added==0. При resume первые страницы бакета — это топ-qi + # офферы, уже лежащие в `done` → added=0, но новые id есть на след. страницах. + # Терминаторы — только пустая страница (выше) и offset>=bound (total/cap). + _add_offers(offers, seen, done, out, target_new) page_idx += 1 - if added == 0: - break async def _sweep_bucket(