feat(tradein): scheduler-источник cian_city_sweep (newbuilding Phase 4), seed dormant (#973) #1296
No reviewers
Labels
No labels
admin
analytics
auth
automation
bug
business
chore
ci
compliance
data
data-moat
docs
duplicate
dx
enhancement
Fable 5 ревью
feedback/max
generative
GG-форсайт
needs-discussion
needs-human
observability
pause-bots
performance
priority/p0
priority/p1
priority/p2
priority/p3
scope/backend
scope/db
scope/devops
scope/frontend
scope/qa
scrapers
security
site-finder
stage/1
stage/2
status/blocked
status/done
status/needs-analysis
status/needs-fix
status/qa
status/ready
status/review
status/wip
tech-debt
tradein
ux
week ревью 1
wontfix
вторичка
ИРД
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: lekss361/gendesign#1296
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "feat/cian-city-sweep-schedule"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Закрывает #973 (950-E2: расписание newbuilding enrichment на scraper-контейнере).
Контекст
Newbuilding-обогащение уже реализовано как Phase 4 внутри
run_cian_city_sweep(enrich_houses=True: для домов сcian_zhk_url→fetch_newbuilding+save_newbuilding_enrichment), но уcian_city_sweepне было scheduler-источника — он бежал только инлайн/вручную. Этот PR регистрирует его в in-app scheduler (теперь живёт в отдельномtradein-scraperконтейнере, #1182).Изменения
scheduler.py: импортrun_cian_city_sweep+ triggertrigger_cian_city_sweep_run(зеркалоtrigger_yandex_city_sweep_run:_claim_run→ новаяSessionLocal()в spawned task →run_cian_city_sweepсenrich_houses=True) + dispatch-веткаelif source == "cian_city_sweep"+ docstring.data/sql/103_scrape_schedules_seed_cian_city_sweep.sql: seed-строка,enabled = false(DORMANT), окно 02:00–05:00 UTC, idempotentON CONFLICT (source) DO NOTHING.default_params:pages_per_anchor=3, request_delay_sec=5, radius_m=1500, detail_top_n=10, enrich_houses=true.tests/test_scheduler.py: 3 теста (claim создаёт run, skip при running, dispatch routing).Почему DORMANT
Прокси (
mproxy.site) сейчас недоступен — включённое расписание спамило бы падающими runs. По точному паттернуyandex_city_sweep(078) capability полностью wired, но засеяна выключенной. Включение оператором после восстановления прокси:Работоспособность намеренно НЕ verified (прод-smoke вне scope — прокси мёртв).
Review
101_с101_gendesign_reader_role.sql(#976) → переименовано в103_.test_scheduler_dispatch_routes_cian_city_sweepvacuous (вызывает trigger напрямую, не черезscheduler_loop) — кандидат на follow-up.Out of scope
#974 (yandex_newbuilding activation) — отдельный feature: требует новый
run_yandex_newbuilding_sweepentrypoint, не покрывается этим PR.f07e1a391ato1241d7fe4d