From 3bd08732300edfdd149defe72b400c1c2e5304e4 Mon Sep 17 00:00:00 2001 From: bot-backend Date: Sun, 12 Jul 2026 22:12:12 +0000 Subject: [PATCH] fix(tradein/scheduler): re-enable deactivate_stale_domklik now that domclick sweeps run (LOW audit R2 #10) (#2510) --- .../183_reenable_deactivate_stale_domklik.sql | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 tradein-mvp/backend/data/sql/183_reenable_deactivate_stale_domklik.sql diff --git a/tradein-mvp/backend/data/sql/183_reenable_deactivate_stale_domklik.sql b/tradein-mvp/backend/data/sql/183_reenable_deactivate_stale_domklik.sql new file mode 100644 index 00000000..42530efa --- /dev/null +++ b/tradein-mvp/backend/data/sql/183_reenable_deactivate_stale_domklik.sql @@ -0,0 +1,28 @@ +-- 183_reenable_deactivate_stale_domklik.sql +-- +-- ПРОДУКТОВОЕ РЕШЕНИЕ (user, 2026-07-13): ВКЛЮЧАЕМ обратно TTL-деактивацию +-- deactivate_stale_domklik (была отключена миграцией 163 «до возобновления +-- регулярных domclick-свипов»). +-- +-- Условие из 163 снято: свипы domclick_city_sweep + domclick_detail_backfill +-- возобновлены и стабильно бегают ежедневно (scraped_at свежий, диапазон +-- последней недели), т.е. причина отключения больше не действует. +-- +-- Безопасность re-enable (LOW audit R2 #10): +-- • Джоб ключуется на scraped_at (whitelist last_seen_at/scraped_at в +-- deactivate_stale_avito.py::_ALLOWED_STALENESS_COLUMNS), НЕ на listing_date — +-- исходная гипотеза «выпадет весь domklik по NULL listing_date» неприменима. +-- • При живых свипах scraped_at < NOW()-14d только у реально протухших строк, +-- а не у всего пула (в отличие от ситуации 163, где свипы стояли) — +-- деактивация корректна, а не тотальна. Чинит завышенный freshness domklik. +-- +-- Идемпотентно: повторный прогон — no-op (enabled уже true). Row создаётся +-- миграцией 160; если отсутствует — UPDATE затронет 0 строк (безопасно). + +BEGIN; + +UPDATE scrape_schedules + SET enabled = true + WHERE source = 'deactivate_stale_domklik'; + +COMMIT;