Commit graph

  • 6e2bb80690 Merge pull request 'fix(tradein): collapse CRM block + density so input form fits laptops' (#943) from fix/tradein-form-fit-laptops into main lekss361 2026-06-01 08:02:47 +00:00
  • 702f322b22 fix(tradein): collapse CRM block + density so form fits laptops fix/tradein-praktika-logo-form-scroll bot-backend 2026-06-01 10:58:43 +03:00
  • 8751fe819b Merge pull request 'fix(tradein): praktika wordmark logo + form button cutoff on short viewports' (#942) from fix/tradein-praktika-logo-form-scroll into main lekss361 2026-06-01 07:18:49 +00:00
  • ed15559f80 fix(tradein): praktika wordmark logo + form button cutoff on short viewports bot-backend 2026-06-01 10:15:49 +03:00
  • a23e650fae fix(tradein): system-curl subprocess transport for Yandex SERP over SOCKS5 (#940) Co-authored-by: lekss361 <lekss361@gendsgn.local> Co-committed-by: lekss361 <lekss361@gendsgn.local> lekss361 2026-05-31 22:39:06 +00:00
  • 4f7426b28c fix(tradein): system-curl subprocess transport for Yandex SERP over SOCKS5 bot-backend 2026-06-01 01:35:47 +03:00
  • 921c14e054 feat(trade-in): OfferCard — убрать редактируемую цену + ползунок торга, разбивка на дефолтах (#939) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 22:31:20 +00:00
  • 5dbcc45b34 feat(trade-in): OfferCard — убрать редактируемую цену + ползунок торга, разбивка на дефолтах bot-backend 2026-06-01 01:17:00 +03:00
  • 567549c3aa feat(tradein): cian full-load secondary-only — drop novostroyki at parse (#938) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 21:35:32 +00:00
  • d93e96fb0c feat(tradein): checkpoint/resume for yandex full-load — survive restart (#930) (#937) Co-authored-by: lekss361 <lekss361@gendsgn.local> Co-committed-by: lekss361 <lekss361@gendsgn.local> lekss361 2026-05-31 21:34:23 +00:00
  • 3294bc2021 fix(tradein): exclude novostroyki from radius-median comp pool (#935) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 21:33:23 +00:00
  • 77ed21a479 feat(tradein): cian full-load secondary-only — drop novostroyki at parse bot-backend 2026-06-01 00:32:31 +03:00
  • d45018f0c2 feat(tradein): checkpoint/resume for yandex full-load — survive restart (#930) bot-backend 2026-06-01 00:17:32 +03:00
  • 571980c56e feat(tradein): ppm²-tier segmentation of asking→sold ratio (#928, flag OFF) (#934) Co-authored-by: lekss361 <lekss361@gendsgn.local> Co-committed-by: lekss361 <lekss361@gendsgn.local> lekss361 2026-05-31 21:22:39 +00:00
  • 14bcb21221 fix(tradein): exclude novostroyki from radius-median comp pool bot-backend 2026-06-01 00:21:35 +03:00
  • 3bcfb6b2f1 feat(tradein): checkpoint/resume for yandex full-load — survive restart (#930) feat/yandex-exhaustive-price-room bot-backend 2026-06-01 00:17:32 +03:00
  • 4b0fd10cb0 fix(tradein): #928 cache-key collision, migration-098 band guard, tier-signal note bot-backend 2026-06-01 00:13:16 +03:00
  • 846c5014c6 feat(tradein): checkpoint/resume for cian full-load — survive restart (#930) (#932) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 21:11:48 +00:00
  • 2bcccdf619 feat(tradein): exhaustive Yandex realty load — adaptive room×price + concurrency (#931) Co-authored-by: lekss361 <lekss361@gendsgn.local> Co-committed-by: lekss361 <lekss361@gendsgn.local> lekss361 2026-05-31 21:10:26 +00:00
  • 47afe402c1 feat(tradein): checkpoint/resume for cian full-load — survive restart (#930) bot-backend 2026-06-01 00:03:09 +03:00
  • 46db7ebcba feat(tradein): ppm2-tier segmentation of asking->sold ratio pool, flag-gated (#928) bot-backend 2026-05-31 23:58:46 +03:00
  • 830657c1ab feat(tradein): exhaustive Yandex realty load — adaptive room×price + concurrency bot-backend 2026-05-31 23:58:38 +03:00
  • 5e94d558b5 perf(tradein): cian full-load incremental save + concurrent pagination (#929) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 20:27:27 +00:00
  • 2ebc3eeead fix(tradein): drop undefined _cancelled assign in cian-full-load cancel path bot-backend 2026-05-31 23:24:42 +03:00
  • a9f71686a9 perf(tradein): cian full-load incremental save + concurrent pagination bot-backend 2026-05-31 23:19:46 +03:00
  • ecf8add2ce fix(browser): pageError.location needs valid defaults, not just optional chaining (#918 follow-up) (#927) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 20:15:39 +00:00
  • 7141648d35 fix(browser): pageError.location needs valid defaults, not just optional chaining (#918 follow-up) bot-backend 2026-05-31 23:13:19 +03:00
  • 0883f6d0f1 feat(tradein): exhaustive Cian EKB secondary load — room×price partitioning (#926) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 19:54:19 +00:00
  • 587564153f fix(tradein): cian _rotate_ip uses cian_proxy_rotate_url; page-scope idiom bot-backend 2026-05-31 22:51:52 +03:00
  • 46269b527a feat(tradein): exhaustive Cian EKB secondary load — room×price partitioning bot-backend 2026-05-31 22:43:05 +03:00
  • 26c0b94131 Merge pull request 'fix(tradein): add cian_proxy_url to test _mock_settings — unblock deploy (#923)' (#925) from fix/cian-proxy-test-mock into main lekss361 2026-05-31 19:34:41 +00:00
  • a5457af716 Merge pull request 'fix(tradein): skip TLS verify for sberindex.ru pull — server omits LE intermediate (#922)' (#924) from fix/922-sber-tls-verify into main lekss361 2026-05-31 19:34:24 +00:00
  • b9690d4d63 fix(tradein): add cian_proxy_url to test _mock_settings — unblock deploy (#923) bot-backend 2026-05-31 22:34:16 +03:00
  • ca0943689d fix(tradein): skip TLS verify for sberindex.ru pull — server omits LE intermediate (#922) bot-backend 2026-05-31 22:33:42 +03:00
  • 02af421799 feat(tradein): dedicated Cian mobile proxy — separate egress from Avito (#923) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 19:30:14 +00:00
  • e63bdd9c65 feat(tradein): dedicated Cian mobile proxy — separate egress from Avito (#cian-proxy) bot-backend 2026-05-31 22:27:30 +03:00
  • 3bd107f923 test(tradein): fix #794 test regressions on main (broken by #919 early squash-merge) (#921) Co-authored-by: lekss361 <lekss361@gendsgn.local> Co-committed-by: lekss361 <lekss361@gendsgn.local> lekss361 2026-05-31 19:05:10 +00:00
  • 2564cd6667 test(tradein): fix #794 test regressions on main — update sber/dkp tests to new API, dedup test files bot-backend 2026-05-31 22:00:54 +03:00
  • d2722df52f test(tradein): fix #794 regressions — update existing sber/dkp tests to new API, dedup test files feat/794-sber-time-adjust bot-backend 2026-05-31 21:55:14 +03:00
  • 4999c877ae feat(tradein): СберИндекс time-adjust for frozen Rosreestr ДКП + per-dashboard filter fix (#794) (#919) Co-authored-by: lekss361 <lekss361@gendsgn.local> Co-committed-by: lekss361 <lekss361@gendsgn.local> lekss361 2026-05-31 18:48:22 +00:00
  • 19cf1162a0 fix(browser): null-guard pageError.location in playwright bundle (#915) (#918) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 18:45:41 +00:00
  • 468bdb052b fix(tradein): sber series fallback continues on error + benchmark gated to ЕКБ region (#794 review) bot-backend 2026-05-31 21:37:41 +03:00
  • a6afb4ad2b fix(browser): null-guard pageError.location in playwright bundle (#915) bot-backend 2026-05-31 21:34:43 +03:00
  • 3485b977f1 feat(tradein): СберИндекс time-adjust for frozen Rosreestr ДКП + per-dashboard filter fix (#794) bot-backend 2026-05-31 21:33:36 +03:00
  • 62d989b8a3 feat(tradein): Cian browser auto-login — POST /admin/scrape/cian/auto-login (#639) (#917) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 18:24:51 +00:00
  • 683cb50245 fix(tradein): wire validated Cian login selectors + 2-step flow + review fixes (#639) bot-backend 2026-05-31 21:17:09 +03:00
  • 92f44ac968 feat(tradein): route avito pipeline SERP+detail+houses through BrowserFetcher (#915) (#916) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 18:10:38 +00:00
  • 9fbe8e2717 fixup(tradein): merge main (#901 avito browser branch) + real SERP-routing test (#915) bot-backend 2026-05-31 21:07:46 +03:00
  • e19e45b3f4 Merge remote-tracking branch 'forgejo/main' into feat/915-pipeline-browser-routing bot-backend 2026-05-31 21:05:37 +03:00
  • 10bed769d3 fixup(tradein): real _cffi assert + module-level firewall import + SERP-routing test (#915) bot-backend 2026-05-31 21:01:21 +03:00
  • 1f18a2ccdc feat(tradein): Cian browser auto-login — POST /admin/scrape/cian/auto-login (#639) bot-backend 2026-05-31 20:57:39 +03:00
  • 5f3f55faef feat(tradein): route avito pipeline SERP+detail+houses through BrowserFetcher (#915) bot-backend 2026-05-31 20:30:53 +03:00
  • 639d3b0cea feat(tradein): systemd timer scheduler — trigger script + units + SCHEDULER_ENABLE flag (#581) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 16:53:38 +00:00
  • 2c5b83268b feat(tradein): systemd timer scheduler — trigger script + units + SCHEDULER_ENABLE flag (#581) bot-backend 2026-05-31 19:50:49 +03:00
  • 441e48141b feat(tradein): avito SERP via BrowserFetcher behind scraper_fetch_mode (#901) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 16:49:35 +00:00
  • 80b953d0bc fixup(tradein): avito browser-mode — skip curl client alloc + rotation-false test (#901) bot-backend 2026-05-31 19:46:34 +03:00
  • 1eb241da34 feat(tradein): avito SERP via BrowserFetcher behind scraper_fetch_mode (#901) bot-backend 2026-05-31 19:36:08 +03:00
  • 9d357f0cc4 Merge pull request 'fix(browser): bump fetch wait 2500→6000ms so avito listings hydrate (#905) — migration proven' (#912) from fix/905-browser-wait-ms into main lekss361 2026-05-31 16:20:42 +00:00
  • f09d9737ce fix(browser): bump fetch wait 2500→6000ms so avito listings hydrate (#905) bot-backend 2026-05-31 19:17:01 +03:00
  • c43a25ef42 Merge pull request 'fix(browser): camoufox reads AVITO_PROXY_URL → real avito data not soft-block stub (#905)' (#911) from fix/905-browser-proxy-env into main lekss361 2026-05-31 15:51:43 +00:00
  • 3527a6bc8d style(browser): fix pre-existing ruff lints in server.py (RUF100, E501) bot-backend 2026-05-31 18:50:35 +03:00
  • 57acec215f fix(browser): read AVITO_PROXY_URL for camoufox proxy (#905) bot-backend 2026-05-31 18:49:45 +03:00
  • 71874310aa Merge pull request 'chore(tradein): browser-smoke.sh — verify tradein-browser /health + /fetch (#905)' (#910) from chore/browser-smoke-script into main lekss361 2026-05-31 15:43:24 +00:00
  • 71f05308e9 chore(tradein): browser-smoke.sh — verify tradein-browser /health + /fetch (#905) bot-backend 2026-05-31 18:42:17 +03:00
  • 4aeeef8c2d Merge pull request 'fix(browser): local camoufox + HTTP wrapper, drop broken playwright WS server (#905)' (#909) from fix/905-browser-http-wrapper into main lekss361 2026-05-31 15:27:10 +00:00
  • 6044a1fe3c fix(browser): local camoufox + HTTP wrapper, drop broken playwright WS server (#905) bot-backend 2026-05-31 18:25:00 +03:00
  • bb64fe247a Merge pull request 'fix(browser): run camoufox fetch as root so geoip mmdb write succeeds — RED build-browser (#905)' (#908) from fix/905-camoufox-geoip-mmdb into main lekss361 2026-05-31 14:53:04 +00:00
  • 393ecea458 fix(browser): run camoufox fetch as root so geoip mmdb write succeeds (#905) bot-backend 2026-05-31 17:51:43 +03:00
  • d6479c13b9 Merge pull request 'feat(browser): split camoufox into a separate tradein-browser container (Phase 0.5, #905)' (#907) from feat/884-browser-separate-container into main lekss361 2026-05-31 14:44:00 +00:00
  • 98b0632dae Merge pull request 'feat(tradein): DomClick вторичка scraper via BrowserFetcher (#796)' (#904) from feat/796-domclick-scraper into main lekss361 2026-05-31 14:43:39 +00:00
  • 0566fed5a2 ci(tradein): build+push tradein-browser image in deploy workflow (#905) bot-backend 2026-05-31 17:29:13 +03:00
  • 5fb367295a feat(browser): split camoufox into tradein-browser container, connect-mode (#905) bot-backend 2026-05-31 17:24:35 +03:00
  • 4c0338ce1d fix(tradein): domklik source name, scraper delay, DataDome block detect (#796 fixup) bot-backend 2026-05-31 17:21:30 +03:00
  • 91d51e60d6 Merge pull request 'chore(agents): reviewer back to Opus (revert model-part of aa3d012)' (#906) from chore/reviewer-opus-model into main lekss361 2026-05-31 14:17:32 +00:00
  • 6e0039dd47 chore(agents): reviewer back to Opus (revert model-part of aa3d012) bot-backend 2026-05-31 17:16:57 +03:00
  • 90b3cf1163 fixup: restore reviewer=opus per-role model + ToolSearch step in analyst/backend chore/bot-harness-tuning bot-backend 2026-05-31 17:04:17 +03:00
  • 21069dea36 Merge pull request 'fix(tradein): 095 drop v_data_quality before dropping sale_type_text — RED deploy (#731)' (#903) from fix/731-sale-type-text-view-dep into main lekss361 2026-05-31 14:02:00 +00:00
  • 3c5e9ad368 feat(tradein): DomClick вторичка scraper via BrowserFetcher (#796) bot-backend 2026-05-31 16:58:12 +03:00
  • 5d6238e89a fix(tradein): 095 drop v_data_quality before dropping sale_type_text (#731) bot-backend 2026-05-31 16:57:18 +03:00
  • 53af9a8c55 feat(tradein): add EKB/MSK REF_AREA codes to sber_price_index pull (#794) (#900) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 13:56:17 +00:00
  • 4138584de1 fix(tradein): correct EKB/MSK REF_AREA codes to 66/77 (#794) bot-backend 2026-05-31 16:50:46 +03:00
  • f94608a5f3 Merge pull request 'fix(tradein): camoufox fetch under app-user so runtime finds Firefox (#884)' (#899) from fix/884-camoufox-cache-path into main lekss361 2026-05-31 13:46:08 +00:00
  • 9d945d3b63 feat(tradein): add EKB/MSK REF_AREA codes to sber_price_index pull (#794) bot-backend 2026-05-31 16:44:43 +03:00
  • 751059cb01 fix(tradein): camoufox fetch under app-user so runtime finds Firefox (#884) bot-backend 2026-05-31 16:44:27 +03:00
  • 07b64bc740 Merge pull request 'chore(agents): bot harness tuning — per-role model, forgejo MCP deferral, vault capture, #893 curl hardening' (#898) from chore/bot-harness-tuning into main lekss361 2026-05-31 13:30:47 +00:00
  • 5b4531f4cc perf(tradein): index hygiene — drop dup/redundant + de-partial is_active (#730) (#897) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 13:29:11 +00:00
  • 5fa9588935 chore(agents): bot harness tuning — per-role model, forgejo MCP deferral, vault capture, #893 curl hardening bot-backend 2026-05-31 16:26:17 +03:00
  • dce3251713 perf(tradein): index hygiene — drop dup/redundant + de-partial is_active (#730) bot-backend 2026-05-31 16:20:28 +03:00
  • 191ed03d3c fix(tradein): RouteGuard prod 401 → session-expired screen, stop re-subscribe storm (#800) (#896) Co-authored-by: bot-frontend <bot-frontend@gendsgn.local> Co-committed-by: bot-frontend <bot-frontend@gendsgn.local> bot-frontend 2026-05-31 13:17:44 +00:00
  • c2888ac52d feat(tradein): scheduled monthly Rosreestr new-quarter poll → ingest alert (#888) (#894) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 13:13:55 +00:00
  • fa2bd20ac6 refactor(tradein): drop dead schema — sale_type_text column + audit_log (#731) (#893) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 13:13:43 +00:00
  • 81cd1f61d3 fix(tradein): RouteGuard prod 401 → session-expired screen, stop re-subscribe storm (#800) bot-frontend 2026-05-31 16:07:21 +03:00
  • aaf2bacfa3 feat(tradein): scheduled monthly Rosreestr new-quarter poll → ingest alert (#888) bot-backend 2026-05-31 15:58:03 +03:00
  • e6e5214fa5 refactor(tradein): drop dead schema — sale_type_text column + audit_log (#731) bot-backend 2026-05-31 15:57:37 +03:00
  • 2890199d07 Merge pull request 'feat(tradein): BrowserFetcher camoufox wrapper + Docker/config infra (Phase 0, #884)' (#892) from feat/884-browserfetcher-camoufox into main lekss361 2026-05-31 12:47:49 +00:00
  • 8df536ca5f Merge pull request 'refactor(tradein): unify kadastr_num → cadastral_number (#732)' (#891) from feat/732-cadastral-unify into main lekss361 2026-05-31 12:47:10 +00:00
  • 6ebba84394 docs(agents): консервативный рефактор промтов — analyst verify-before-act, qa anti-idle, гигиена docs/agent-usage-throttle-qa-terminal bot-backend 2026-05-31 15:46:58 +03:00
  • de92c54540 feat(tradein): СберИндекс monthly city-level price index pull (#887, data-layer) (#890) Co-authored-by: bot-backend <bot-backend@gendsgn.local> Co-committed-by: bot-backend <bot-backend@gendsgn.local> bot-backend 2026-05-31 12:44:56 +00:00
  • 22c6d67877 Merge pull request 'docs(agents): usage-limit idle-backoff (weekly cap) + qa terminal для non-UI status/qa' (#889) from docs/agent-usage-throttle-qa-terminal into main lekss361 2026-05-31 12:43:36 +00:00
  • e03f4e4534 feat(tradein): BrowserFetcher camoufox wrapper + Docker/config infra (Phase 0, #884) bot-backend 2026-05-31 15:41:56 +03:00