Commit graph

  • 059fa83589 Merge pull request 'fix(scrapers): avito_houses — отзывы/история/тип ЖК долетают (виджет-payload вложен глубже) (#1789)' (#1797) from feat/avito-houses-mfe-state into main lekss361 2026-06-19 16:27:03 +00:00
  • 464e9faf7b fix(scrapers): avito_houses читает MFE props-вложенность виджетов — отзывы/история/тип ЖК теперь долетают (#1789) bot-backend 2026-06-19 19:21:49 +03:00
  • 4755f8bd13 Merge pull request 'feat(browser): per-provider concurrency — параллель между поставщиками, ≤1 коннект на поставщика (#1793)' (#1794) from feat/browser-per-provider-concurrency into main lekss361 2026-06-19 16:02:13 +00:00
  • fb7b3323e4 Merge pull request 'fix(tradein): verify=False для WFS геопортала ЕКБ (российский CA-серт)' (#1788) from fix/tradein-ekb-geoportal-ssl-verify into main lekss361 2026-06-19 16:02:04 +00:00
  • 1578dd5a5d fixup(browser): source-fallback routing, lazy launch, test stability (#1793 review) bot-backend 2026-06-19 19:00:10 +03:00
  • 77ae4ca779 feat(browser): per-provider concurrency — параллель между поставщиками, ≤1 коннект на поставщика (#1793) bot-backend 2026-06-19 18:52:55 +03:00
  • 112e5cc2f1 fix(tradein): verify=False for EKB geoportal WFS (Russian-CA cert) bot-backend 2026-06-19 18:19:03 +03:00
  • 7494255180 Merge pull request 'fix(tradein): чинит main-red — патч _geoportal_house_match в cadastral-тесте (хвост #1786)' (#1787) from fix/tradein-geoportal-test-cadastral into main lekss361 2026-06-19 15:07:31 +00:00
  • 91b04a1851 test(tradein): patch _geoportal_house_match in cadastral-before-yandex test bot-backend 2026-06-19 18:06:28 +03:00
  • 1073ebeeb9 test(tradein): patch _geoportal_house_match in cadastral-before-yandex test feat/tradein-ekb-geoportal-buildings bot-backend 2026-06-19 18:03:25 +03:00
  • 7bf39e24df Merge pull request 'fix(db): #1781 backfill listings.house_id_fk from house_sources (cian novostroyki)' (#1784) from fix/1781-cian-novostroyki-fk-backfill into main lekss361 2026-06-19 14:56:09 +00:00
  • 84ceb9d300 Merge pull request 'feat(tradein): ингест зданий из геопортала ЕКБ + tier в геокодере (полный кадастр города)' (#1786) from feat/tradein-ekb-geoportal-buildings into main lekss361 2026-06-19 14:55:43 +00:00
  • 64d113d649 feat(tradein): EKB geoportal building ingest + geocoder tier (complete city buildings) bot-backend 2026-06-19 17:51:07 +03:00
  • 8adbbef88c fix(db): #1781 backfill listings.house_id_fk from house_sources Light1YT 2026-06-19 16:20:32 +05:00
  • 190accc4a7 Merge pull request 'feat(tradein): фронт передаёт координаты выбранной подсказки в /estimate (Variant A, frontend)' (#1783) from feat/tradein-estimate-send-coords into main lekss361 2026-06-19 11:17:31 +00:00
  • 9701d3289d Merge pull request 'feat(tradein): /estimate принимает координаты от автокомплита, минует geocode (Variant A, backend)' (#1782) from feat/tradein-estimate-accept-coords into main lekss361 2026-06-19 11:16:51 +00:00
  • ce0aaa4fb1 feat(tradein): send picked autocomplete coords to /estimate (Variant A) bot-backend 2026-06-19 14:16:08 +03:00
  • 99e2a5d75c feat(tradein): estimate accepts client-provided coords, skips geocode (Variant A) bot-backend 2026-06-19 14:15:02 +03:00
  • 41b3f08303 Merge pull request 'fix(tradein): чинит кадастр-матчер геокодера — резолв адресов из своей базы (~60% упавших)' (#1780) from fix/tradein-cadastral-geocode-matcher into main lekss361 2026-06-19 11:11:13 +00:00
  • c2a1dc8aeb fix(tradein): parse street+house for cadastral geocode match (resolve ~60% of failing addresses from local DB) bot-backend 2026-06-19 14:04:12 +03:00
  • be3a5df8eb Merge pull request 'fix(tradein): удалить white-label бренд «Практика» целиком (БД + маппинг + ассеты)' (#1779) from fix/tradein-remove-praktika-brand into main lekss361 2026-06-19 10:09:38 +00:00
  • ea453c3ff2 fix(tradein): remove «Практика» white-label brand (DB row + account mapping + assets) bot-backend 2026-06-19 12:53:37 +03:00
  • 374238daac Merge pull request 'fix(tradein): budget Cian valuation call to stop 25s estimate stalls («не считает»)' (#1777) from fix/tradein-estimate-latency-budgets into main lekss361 2026-06-19 09:48:41 +00:00
  • 54444cc4a5 Merge pull request 'fix(tradein): убрать хардкод «Практика» из offer-баннера' (#1778) from fix/tradein-offercard-praktika-leak into main lekss361 2026-06-19 09:48:35 +00:00
  • 80380dc32a fix(tradein): budget Cian valuation call to stop 25s estimate stalls bot-backend 2026-06-19 12:43:28 +03:00
  • c5d469da36 fix(tradein): remove hardcoded «Практика» from offer banner + comments bot-backend 2026-06-19 12:41:27 +03:00
  • ee2703419b Merge pull request 'fix(estimator): #1774 Tier A admits same-building novostroyki resales (secondary-dominant gate)' (#1776) from fix/1774-tier-a-same-building-primary into main lekss361 2026-06-19 09:28:16 +00:00
  • 19f740f2e9 Merge pull request 'fix(avito): de-glue house number from district in _clean_address (#1773 part)' (#1775) from fix/1773-avito-address-deglue into main lekss361 2026-06-19 09:26:26 +00:00
  • 07d9cc8e8b fix(estimator): #1774 Tier A admits same-building novostroyki resales when secondary-dominant Light1YT 2026-06-19 14:00:13 +05:00
  • 78e7705a5f fix(avito): de-glue house number from district marker in _clean_address (#1773) Light1YT 2026-06-19 13:33:43 +05:00
  • cf6dc59cb6 Merge pull request 'fix(avito): reconnect-retry on detail 429 under backconnect proxy' (#1771) from fix/avito-detail-429-reconnect into main lekss361 2026-06-19 04:42:11 +00:00
  • d65a88f704 fix(avito): reconnect-retry on detail 429 under backconnect proxy bot-backend 2026-06-18 23:29:47 +03:00
  • 59728a197d Merge pull request 'feat(avito): incremental daily + exhaustive weekly schedule split (+ scheduler interval_days)' (#1770) from feat/avito-incremental-schedule-split into main lekss361 2026-06-18 20:25:39 +00:00
  • 0fd1d63ab3 Merge pull request 'fix(avito): tolerate 429 per-bucket instead of banning whole sweep' (#1769) from fix/avito-429-bucket-skip into main lekss361 2026-06-18 20:25:26 +00:00
  • 1f7018d415 feat(scheduler): per-source interval_days cadence (weekly exhaustive avito) bot-backend 2026-06-18 23:10:18 +03:00
  • bf63683833 feat(avito): incremental daily + exhaustive weekly schedule split bot-backend 2026-06-18 23:04:35 +03:00
  • bee44ffd3d fix(avito): tolerate 429 per-bucket instead of banning whole sweep bot-backend 2026-06-18 23:03:28 +03:00
  • b7d43db6da Merge pull request 'fix(avito): reconnect-retry on detail 403/firewall under backconnect proxy' (#1768) from fix/avito-detail-403-reconnect-retry into main lekss361 2026-06-18 19:14:39 +00:00
  • c993243bc7 fix(avito): reconnect-retry on detail 403/firewall under backconnect proxy bot-backend 2026-06-18 22:12:03 +03:00
  • bf2b1fca79 Merge pull request 'feat(avito): incremental SERP pagination with date early-stop (param-gated, default off)' (#1766) from feat/avito-incremental-pagination into main lekss361 2026-06-18 19:03:37 +00:00
  • 73c4a90946 Merge pull request 'feat(listings): card_hash column + snapshot-dedup on unchanged cards' (#1767) from feat/listings-card-hash into main lekss361 2026-06-18 19:03:28 +00:00
  • 8436532bf4 feat(listings): card_hash column + snapshot-dedup on unchanged cards bot-backend 2026-06-18 22:01:54 +03:00
  • bdedac3012 feat(avito): incremental SERP pagination with date early-stop (param-gated, default off) bot-backend 2026-06-18 22:01:46 +03:00
  • c58c5a5aab Merge pull request 'fix(avito): gate 403 reconnect-retry on proxy presence only (was dead code in prod)' (#1765) from fix/avito-403-reconnect-gate into main lekss361 2026-06-18 18:32:54 +00:00
  • 44e316c514 fix(avito): gate 403 reconnect-retry on proxy presence only, not rotate_url absence bot-backend 2026-06-18 21:31:20 +03:00
  • 69ef61beb8 Merge pull request 'fix(avito): reconnect-retry on SERP 403/firewall under backconnect proxy' (#1764) from fix/avito-403-backconnect-reconnect-retry into main lekss361 2026-06-18 18:13:20 +00:00
  • 9dc3be56e3 fix(avito): reconnect-retry on SERP 403/firewall under backconnect proxy bot-backend 2026-06-18 20:41:32 +03:00
  • 8d516d0781 Merge pull request 'fix(tradein): avito _extract_total_count returns 0 on no-results page — stop empty-bracket split/rotate waste' (#1763) from fix/avito-empty-page-total-zero into main lekss361 2026-06-18 17:05:34 +00:00
  • 6454aa312d fix(tradein): avito _extract_total_count returns 0 on no-results page (stop empty-bracket split waste + fallback-listing scrape) bot-backend 2026-06-18 20:01:41 +03:00
  • f82ee32f50 Merge pull request 'feat(tradein): avito curl_cffi 429 short-retry — enables backconnect curl SERP (×50 faster than browser)' (#1762) from feat/avito-curl-429-retry into main lekss361 2026-06-18 16:26:28 +00:00
  • 2c6d0e4c71 feat(tradein): avito curl_cffi 429 short-retry (backconnect conn-limit transient, no rotate/ban) bot-backend 2026-06-18 19:24:05 +03:00
  • 8a7538ab13 Merge pull request 'perf(browser): block image/media/font resources in camoufox fetch (~10x smaller pages, faster via proxy)' (#1761) from perf/camoufox-block-resources into main lekss361 2026-06-18 15:18:28 +00:00
  • 1533baad97 perf(browser): block image/media/font resources in camoufox fetch (~10x smaller pages, faster via proxy) bot-backend 2026-06-18 18:16:53 +03:00
  • e05e81f654 Merge pull request 'perf(tradein): shared EKB seed price-brackets across avito/cian/yandex (city-dict ready for multi-city)' (#1760) from perf/shared-price-brackets-cian-yandex into main lekss361 2026-06-18 14:57:41 +00:00
  • ffecc6962d perf(tradein): shared EKB seed price-brackets across avito/cian/yandex (city-dict ready for multi-city) bot-backend 2026-06-18 17:55:55 +03:00
  • 0538834c6b Merge pull request 'perf(tradein): avito seed price-brackets with open top bucket (≤2k blocks, no price ceiling)' (#1759) from perf/avito-seed-price-brackets into main lekss361 2026-06-18 14:33:07 +00:00
  • 3f85fa59ff perf(tradein): avito seed price-brackets with open top bucket (≤2k blocks, no price ceiling) bot-backend 2026-06-18 17:29:31 +03:00
  • c8f6fd1535 Merge pull request 'fix(tradein): praktika brand only under praktika account — drop kopylov mapping (brand leak)' (#1758) from fix/praktika-brand-only-praktika-user into main lekss361 2026-06-18 13:36:20 +00:00
  • 5c37fcbfad fix(tradein): praktika brand only under praktika account — drop kopylov mapping (brand leak) bot-backend 2026-06-18 16:29:18 +03:00
  • add002e8d7 Merge pull request 'fix(tradein): avito full-load probe resilience — browser 500/timeout splits/skips instead of crashing run' (#1757) from fix/avito-fullload-probe-resilience into main lekss361 2026-06-18 13:11:46 +00:00
  • 5b14d88290 Merge pull request 'feat(site-finder): snapshot.pdf exclude_dev param — hide competitor by developer name' (#1756) from feat/snapshot-exclude-dev into main lekss361 2026-06-18 13:11:29 +00:00
  • cbeeb9c414 fix(tradein): avito full-load probe resilience — browser 500/timeout splits/skips instead of crashing run bot-backend 2026-06-18 16:03:39 +03:00
  • 5408466905 chore(frontend): regen api-types for snapshot exclude_dev param bot-backend 2026-06-18 15:51:56 +03:00
  • 1302fe63d7 feat(site-finder): snapshot.pdf exclude_dev param — hide competitor by developer name bot-backend 2026-06-18 15:23:28 +03:00
  • 493142b990 Merge pull request 'feat(tradein): populate offer_price_history for yandex from gate price.previous/trend' (#1754) from feat/yandex-price-history into main lekss361 2026-06-18 11:37:05 +00:00
  • 0f975e8a53 Merge pull request 'fix(tradein): avito sweep page-level retry — transient page error no longer aborts run' (#1755) from fix/avito-sweep-page-retry into main lekss361 2026-06-18 11:36:53 +00:00
  • 6c132d7f0a fix(tradein): avito sweep page-level retry — transient page error no longer aborts run bot-backend 2026-06-18 14:29:01 +03:00
  • 6c82528db5 feat(tradein): populate offer_price_history for yandex from gate price.previous/trend bot-backend 2026-06-18 14:23:23 +03:00
  • 00f6464f54 Merge pull request 'feat(tradein): avito exhaustive full-load (room×price bisection) — mirror cian' (#1753) from feat/avito-exhaustive-fullload into main lekss361 2026-06-18 11:05:26 +00:00
  • 1ddbf867f8 feat(tradein): avito exhaustive full-load (room×price bisection) — mirror cian bot-backend 2026-06-18 13:55:18 +03:00
  • 10b93011a3 Merge pull request 'feat(tradein): schedule cian_full_load (exhaustive secondary) + anchor sweep NB-only' (#1752) from feat/cian-schedule-fullload-nb-only into main lekss361 2026-06-18 10:38:31 +00:00
  • 158a24c25b feat(tradein): schedule cian_full_load (exhaustive secondary) + anchor sweep NB-only bot-backend 2026-06-18 13:25:23 +03:00
  • ca4a61124e Merge pull request 'feat(cadastral): geo-nearest building matcher via local cad mirror' (#1750) from feat/cadastral-geo-match into main lekss361 2026-06-18 08:44:24 +00:00
  • 2b4f80e39f Merge pull request 'feat(site-finder): карта точек подключения (НСПД) в секции «Сети» (#1746 part)' (#1751) from fix/1746-networks-section-map into main lekss361 2026-06-18 08:44:16 +00:00
  • 48bedb5f65 Merge branch 'main' into feat/cadastral-geo-match lekss361 2026-06-18 08:44:06 +00:00
  • 6fe72d2374 Merge pull request 'feat(site-finder): продуктовые решения по фидбеку analyze (#1741-1745)' (#1749) from fix/sf-product-decisions into main lekss361 2026-06-18 08:43:43 +00:00
  • e89fd66639 feat(site-finder): карта точек подключения (НСПД) в секции «Сети» (#1746, доступная часть) Light1YT 2026-06-18 12:48:23 +05:00
  • d93553c489 fix(site-finder): перенумеровать под-подписи Section3 4.1/4.2/4.3 под новый порядок + doc-хедеры (#1741 хвост) Light1YT 2026-06-18 12:38:54 +05:00
  • f9769571a3 fix(cadastral): single-statement match UPDATE — OFFSET chunk skipped rows bot-backend 2026-06-18 10:28:19 +03:00
  • edd187b47f feat(cadastral): geo-nearest building matcher via local cad mirror bot-backend 2026-06-18 10:18:54 +03:00
  • 8cd0620543 feat(site-finder): продуктовые решения по фидбеку analyze (#1741 #1742 #1743 #1744 #1745) Light1YT 2026-06-18 12:18:04 +05:00
  • 6214baf0c9 Merge pull request 'fix(site-finder): 5 дефектов из фидбека analyze (#1736-1740)' (#1748) from fix/sf-feedback-batch into main lekss361 2026-06-18 07:06:45 +00:00
  • 3280859170 Merge remote fix/sf-feedback-batch (#1736 minimap test) into local fix/sf-feedback-batch bot-backend 2026-06-18 10:05:56 +03:00
  • c859872217 fix(parcels): wrap forecast-export PDF in try/except+logger (#1739 completion) bot-backend 2026-06-18 10:05:25 +03:00
  • 0f9babb7ff test(site-finder): wrap MiniMap test render in QueryClientProvider (#1736) bot-backend 2026-06-18 10:03:48 +03:00
  • bcd24923b8 Merge remote-tracking branch 'forgejo-backend/main' into fix/sf-feedback-batch bot-backend 2026-06-18 10:01:43 +03:00
  • e7342d9f98 chore(frontend): regenerate api-types.ts for forecast pdf export (#1739) bot-backend 2026-06-18 10:00:26 +03:00
  • 7448db0be0 Merge pull request 'feat(avito): dedicated newbuilding (novostroyka) citywide sweep' (#1747) from feat/avito-newbuilding-sweep into main lekss361 2026-06-18 07:00:22 +00:00
  • b1c0ea1268 fix(site-finder): 5 дефектов из боевого фидбека analyze (#1736 #1737 #1738 #1739 #1740) Light1YT 2026-06-18 11:47:21 +05:00
  • 1a658a65a6 feat(avito): dedicated newbuilding (novostroyka) citywide sweep feat/avito-newbuilding-sweep bot-backend 2026-06-18 09:45:54 +03:00
  • bf91eb0be0 Merge pull request 'feat(browser): per-source proxy pool behind FEATURE_BROWSER_POOL_ENABLED (Phase 1)' (#1735) from feat/browser-per-source-proxy-pool into main lekss361 2026-06-18 06:06:57 +00:00
  • b9eb478c8f feat(browser): per-source proxy pool behind FEATURE_BROWSER_POOL_ENABLED (Phase 1) bot-backend 2026-06-18 09:01:50 +03:00
  • 635851a71c Merge pull request 'fix(yandex): read predicted price from entity.predictions.predictedPrice (#1725)' (#1734) from fix/yandex-predicted-price-path-1725 into main lekss361 2026-06-18 05:12:25 +00:00
  • 41f2402b25 fix(yandex): read predicted price from entity.predictions.predictedPrice (#1725) bot-backend 2026-06-18 08:03:05 +03:00
  • 8f9c11a45f Merge pull request 'feat(browser): concurrent page pool (BROWSER_CONCURRENCY, default 4) + raise mem_limit to 5g' (#1733) from feat/browser-concurrent-pool into main lekss361 2026-06-17 21:07:31 +00:00
  • a6717705b9 fix(browser): reset page_counter on recycle + close login page in finally (#796 review) feat/browser-concurrent-pool bot-backend 2026-06-18 00:06:50 +03:00
  • 820fd819bb feat(browser): concurrent page pool (BROWSER_CONCURRENCY, default 4) + raise mem_limit to 5g bot-backend 2026-06-17 23:55:11 +03:00
  • 6d3fad6b96 Merge pull request 'fix(backfill): drop nonexistent kadastr_num column from listings SELECT' (#1732) from fix/backfill-kadastr-column into main lekss361 2026-06-17 20:53:26 +00:00
  • 73fa739e0f fix(backfill): drop nonexistent kadastr_num column from listings SELECT fix/backfill-kadastr-column bot-backend 2026-06-17 23:47:30 +03:00
  • 367b2719a9 Merge pull request 'fix(avito): proactive IP rotate at sweep start + raise max_rotations 2→4 (Datadome ban recovery)' (#1731) from fix/avito-proactive-ip-rotate into main lekss361 2026-06-17 20:39:13 +00:00