gendesign/tradein-mvp/backend
lekss361 bd7f40428a feat(tradein): same-building anchor estimator (#651/#652 v2) behind flag
Replaces radius-median ppm2 with a same-building anchor (Tier A: normalized
street+house comps; Tier C: <=500m segment-matched; Tier D: existing radius
fallback). Similarity-weighted mean + guarded premium uplift + ppm2-banded
asking->sold haircut + hard guardrail + tightened FSD range. Fixes ~2.5x
premium underestimate / 15-25% comfort dilution. Address normalizer handles
e->e, Tkacheva->Tkachey alias, base-house-number across corpus letters.
Behind estimate_same_building_anchor_enabled (default on); OFF = prior behavior.
Validated offline (55 golden: coverage 53->95%, premium medAPE 53->18%) + 4 live cases.
19 new tests; full suite 1106 passed; ruff clean.

Refs #651 #652
2026-05-29 23:51:34 +03:00
..
app feat(tradein): same-building anchor estimator (#651/#652 v2) behind flag 2026-05-29 23:51:34 +03:00
data/sql feat(tradein): white-label branded page for client «Практика» (#657) (#672) 2026-05-29 16:09:23 +00:00
scripts feat(backtest): per-rooms asking→sold correction block (#648 S1) (#650) 2026-05-29 13:11:55 +00:00
tests feat(tradein): same-building anchor estimator (#651/#652 v2) behind flag 2026-05-29 23:51:34 +03:00
.dockerignore feat: add tradein-mvp subproject (Trade-In Estimator под /trade-in) 2026-05-21 00:25:39 +03:00
Dockerfile feat(tradein): persistent infra для backfill scripts (PR F) (#592) 2026-05-27 06:59:54 +00:00
pyproject.toml feat(rbac): role-based access control via X-Authenticated-User middleware (#585) 2026-05-26 06:18:40 +00:00