fix(tradein/scheduler): re-enable deactivate_stale_domklik now that domclick sweeps run
All checks were successful
CI Trade-In / changes (pull_request) Successful in 9s
CI / changes (pull_request) Successful in 9s
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
CI Trade-In / backend-tests (pull_request) Successful in 52s

Migration 163 disabled the TTL deactivation 'until domclick sweeps resume'. The
sweeps (domclick_city_sweep + domclick_detail_backfill) are running daily again
and keep scraped_at fresh, so the disable condition no longer holds. Re-enable is
safe: the job keys on scraped_at (not listing_date), so with live sweeps only
genuinely stale rows fall outside the 14d TTL. Fixes overstated domklik freshness.
LOW audit R2 (#10).
This commit is contained in:
bot-backend 2026-07-13 01:09:50 +03:00
parent 348be445e3
commit 56ddf98be4

View file

@ -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;