gendesign/tradein-mvp/backend
bot-backend 5f4b88e6a9
All checks were successful
CI / changes (pull_request) Successful in 9s
CI Trade-In / changes (pull_request) Successful in 9s
CI Trade-In / frontend-checks (pull_request) Has been skipped
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 2m36s
fix(tradein/scraper): не помечать городом развёртки объявления соседних городов
oblast city-sweep (avito/cian/yandex) ставил ОДИН city на весь batch
save_listings без проверки координат — Верхняя Пышма (~15км от ЕКБ,
yandex radius_m=25000) получала 97% лотов, физически лежащих в ЕКБ
(замер на проде). listings.city теперь читается asking_to_sold_ratio.py
как ценовой предиктор — неверная метка искажала выкупные цены.

save_listings(..., city_anchor=(lat, lon), city_radius_km=...) режет
city per-lot, если у лота ЕСТЬ координаты и они дальше radius_km от
anchor'а города-цели (haversine, без ST_DWithin round-trip). Лоты БЕЗ
координат (авито — большинство, Серов 142/150) оставлены как есть:
нечем сверить, а без city колонка теряет смысл именно для адресов без
города в тексте, ради которых её и завели (#2594).

Радиус per-city (pipeline.get_city_stamp_radius_km): дефолт 15км
(Первоуральск/Каменск-Уральский/Н.Тагил/Серов — 41-307км от ЕКБ,
guard никогда ложно не режет их лоты); Верхняя Пышма — 8км (сам город
всего ~15.3км от ЕКБ, дефолтный порог не сработал бы).

Guard активен только для oblast-городов (city_slug задан) — ЕКБ-развёртка
(city_slug=None) не имеет более крупного соседа в регионе и не проверяется.
2026-08-02 14:26:09 +03:00
..
app Merge pull request 'fix(tradein/snapshot): починить зависающий запрос снапшотов и бюджет времени (#2607)' (#2618) from fix/tradein-snapshot-query-perf into main 2026-08-02 09:19:20 +00:00
data/sql fix(tradein/snapshot): починить зависающий запрос снапшотов и добавить бюджет времени (#2607) 2026-08-02 11:55:43 +03:00
scripts chore(tradein/geocoder): удалить остатки скриптов Яндекс-геокодера, часть 3 (#2593) 2026-07-31 23:16:19 +03:00
tests fix(tradein/scraper): не помечать городом развёртки объявления соседних городов 2026-08-02 14:26:09 +03:00
.dockerignore feat: add tradein-mvp subproject (Trade-In Estimator под /trade-in) 2026-05-21 00:25:39 +03:00
Dockerfile chore(scraper-kit): docker-context wiring + restore backend workspace dep (#2137) 2026-07-02 14:21:38 +00:00
pyproject.toml feat(tradein/auth): password hashing + session config foundation (#2550) 2026-07-30 09:40:51 +03:00