gendesign/tradein-mvp/backend/app
bot-backend 1cbd4bd4b2 fix(estimator): sanity-clamp quarter-index factor in _apply_quarter_index (#859)
Follow-up hardening from PR #858 review. The quarter-index factor
(target_index / avg_analog_index) was unbounded — pathological FDW data could
yield an extreme multiplier on a client-visible price. Clamp factor to
[estimate_quarter_index_factor_min, _max] = [0.6, 1.8] (outside the realistic
quarter-to-quarter location spread for EKB вторичка). Bounds in settings;
passed as kwargs so _apply_quarter_index stays pure/testable. Clamp fires
logged at INFO. Formula and #764 guards unchanged.

Refs #859, #764
2026-05-31 10:11:16 +03:00
..
api feat(tradein): admin backfill endpoints — cian price-history (T8a) + yandex address (T10) + house IMV (T7) (#856) 2026-05-31 06:37:10 +00:00
core fix(estimator): sanity-clamp quarter-index factor in _apply_quarter_index (#859) 2026-05-31 10:11:16 +03:00
observability feat(tradein): enrich GlitchTip SDK init — integrations + PII scrub (#396) (#643) 2026-05-29 09:23:17 +00:00
schemas docs(tradein): clarify n_analogs vs analogs[] top-10 cap (#698) (#737) 2026-05-30 15:00:48 +00:00
services fix(estimator): sanity-clamp quarter-index factor in _apply_quarter_index (#859) 2026-05-31 10:11:16 +03:00
tasks feat(estimator): exclude city-centroid listings from radius analogs (Refs #769 Part E) 2026-05-30 21:22:21 +03:00
__init__.py feat: add tradein-mvp subproject (Trade-In Estimator под /trade-in) 2026-05-21 00:25:39 +03:00
main.py feat(tradein): enrich GlitchTip SDK init — integrations + PII scrub (#396) (#643) 2026-05-29 09:23:17 +00:00