|
All checks were successful
CI Trade-In / changes (pull_request) Successful in 9s
CI Trade-In / browser-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / changes (pull_request) Successful in 11s
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 4m55s
Замер на проде 2026-08-29: страница отказа ДомКлика при HTTP 401 — РОВНО 26 624 байта, байт в байт та же, что снималась 28.08 под кодом 403. Ни PoW, ни QRATOR, ни капчи. Приходит одинаково и с валидной сохранённой сессией (16 куков из domclick_session), и полностью анонимно — значит это не «сессия отвергнута», а WAF-отказ с подменённым кодом ответа. В таблице классификатора 401 не было (403/429 → platform, 5xx → infra), поэтому все три пробы подряд дали ban_kind='unknown' — ровно то, что #3196 и должен был убрать. Механика диагноза при этом рабочая: статус доезжает от page.goto до исключения целым, шов blocked.status = status подтверждён живым 401 на проде. Правка доменная — в _ban_kind_of_block домкликового таска, а не в общей scraper_kit.browser_fetcher.ban_kind_from_status: у других поставщиков 401 обычно значит «наша сессия протухла», это наша сторона, и метка 'platform' там зря запустила бы ротацию IP (#2611). |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| asking_to_sold_ratio.py | ||
| avito_detail_backfill.py | ||
| backfill_house_coords_from_listings.py | ||
| backfill_listings_coords_geoportal.py | ||
| cadastral_geo_match.py | ||
| cian_history_backfill.py | ||
| deactivate_stale_avito.py | ||
| deal_city_price_bands_refresh.py | ||
| deals_freshness_monitor.py | ||
| domclick_detail_backfill.py | ||
| domrf_kapremont_load.py | ||
| ekb_geoportal_ingest.py | ||
| gar_flats_load.py | ||
| geocode_missing.py | ||
| listing_source_snapshot.py | ||
| newbuilding_enrich_backfill.py | ||
| osm_poi_ekb_refresh.py | ||
| purge_expired_trade_in_data.py | ||
| refresh_search_matview.py | ||
| rosreestr_quarter_poll.py | ||
| sber_freshness_monitor.py | ||
| sber_index_pull.py | ||
| yandex_address_backfill.py | ||
| yandex_detail_backfill.py | ||
| yandex_newbuilding_sweep.py | ||
| zhkh_flats_load.py | ||