|
Some checks failed
CI Trade-In / changes (pull_request) Successful in 9s
CI / changes (pull_request) Successful in 8s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Failing after 1m57s
CI / backend-tests (pull_request) Successful in 14m44s
Task 1: _norm_flat теперь читает catalog_url_hash из уже доступного kn-API elemId вместо жёсткого None (domrf_kn.py:479) — разблокирует источник хэшей для 983k квартир при следующем kn-sweep. elemId or None корректно нормализует и отсутствие, и пустую строку. Task 2: новый scrape_kn_catalog_flats Celery task оборачивает уже смерженный scrape_catalog_batch (#2441) — batch-выборка по последнему snapshot WHERE catalog_url_hash IS NOT NULL + 30d freshness/force. Зарегистрирован в celery_app, ручной триггер POST /kn-catalog-flats. Beat-запись оставлена закомментированной — по образцу уже отключённого object-level catalog scraper: DOM.РФ WAF hard-ban на VPS IP с 2026-05-24 (см. #2443), cooldown не подтверждён. Task ships полностью dormant: beat не назначен в рантайме, admin-endpoint требует авторизации, browser- stack импортируется лениво внутри функции (не на старте воркера), живой fetch недостижим без непустого batch. code-reviewer отдельно проверил WAF-safety независимо — подтверждено. Batch наполнится непустыми строками только после того, как Task 1 задеплоится И пройдёт свежий kn-sweep — ожидаемо 0 строк первое время. Refs #2442, #2441, #2443 |
||
|---|---|---|
| .. | ||
| analysis_runs | ||
| analytics | ||
| cadastre | ||
| chat | ||
| etl | ||
| exporters | ||
| forecasting | ||
| generative | ||
| llm | ||
| photos | ||
| scrapers | ||
| site_finder | ||
| __init__.py | ||
| analytics_queries.py | ||
| analytics_refresh.py | ||
| dadata_client.py | ||
| forecast_request_cache.py | ||
| insights.py | ||
| job_settings.py | ||
| objective_etl.py | ||
| objective_sync_config.py | ||
| own_projects.py | ||
| weather_cache.py | ||