gendesign/tradein-mvp/backend
lekss361 48e2201c7b
All checks were successful
CI / changes (pull_request) Successful in 7s
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
fix(tradein): guard ГАР-undercount знаменателя в v_building_sale_share
ГАР часто недо-регистрирует помещения (лишь 68k из 919k домов имеют квартиры),
из-за чего малые знаменатели раздували % — топ листа был забит «100% = 5 из 5»
и 91 дом показывал >100% (active>flats, физически невозможно). Добавляю гейт:
sale_share_pct считается только если flat_count_effective >= GREATEST(этажность, 8)
И active_secondary <= flat_count_effective. Проверено на проде (rollback):
2769→2596 достоверных (−91 >100% −82 undercount), over100=0, топ — реальные
сигналы (Крауля 89А 10/11=90.9%, Ткачей 17 15/19=78.9%). Недостоверные → «н/д».
2026-06-28 16:04:56 +00:00
..
app feat(tradein): канонический матч ГАР↔houses (0%→41% yield) + tradein_canon_addr + --match-only (#2063) 2026-06-28 15:50:07 +00:00
data/sql fix(tradein): guard ГАР-undercount знаменателя в v_building_sale_share 2026-06-28 16:04:56 +00:00
scripts feat(tradein/domclick): local-runner + ingest tooling → main (split from parked Layer-B) 2026-06-28 10:26:52 +03:00
tests feat(tradein): канонический матч ГАР↔houses (0%→41% yield) + tradein_canon_addr + --match-only (#2063) 2026-06-28 15:50:07 +00:00
.dockerignore feat: add tradein-mvp subproject (Trade-In Estimator под /trade-in) 2026-05-21 00:25:39 +03:00
Dockerfile fix(tradein): гарантировать lxml в backend-образе — bust кэша uv sync + assert import (#2061) 2026-06-28 15:16:04 +00:00
pyproject.toml feat(tradein): ГАР-loader знаменателя — apartments-per-house → gar_house_flats + match к houses (#2059) 2026-06-28 14:54:43 +00:00