gendesign/tradein-mvp/backend/app
bot-backend 01cc7057cd feat(tradein): insufficient_data flag on AggregatedEstimate (#697)
When no comps/anchor are found the estimate returns median=0/range 0-0, and
the frontend can render a literal «0 ₽». Add a computed boolean
insufficient_data (= median_price_rub <= 0) so the UI shows an explicit
«недостаточно данных» state instead.

Implemented as a Pydantic @computed_field derived from median_price_rub —
correct automatically across all four AggregatedEstimate construction sites
(main estimate, _empty_estimate, and both GET-rehydration paths), no DB column,
no risk of per-site drift. Additive/serialized; existing fields untouched.

Refs #697
2026-05-30 17:38:52 +03:00
..
api feat(tradein): add data_quality flag to /sales-vs-listings (#721) (#723) 2026-05-30 13:21:08 +00:00
core feat(tradein): brand-by-account + result IA redesign (distinct asking/sale prices) (#683) 2026-05-30 06:45:14 +00:00
observability feat(tradein): enrich GlitchTip SDK init — integrations + PII scrub (#396) (#643) 2026-05-29 09:23:17 +00:00
schemas feat(tradein): insufficient_data flag on AggregatedEstimate (#697) 2026-05-30 17:38:52 +03:00
services fix(tradein): sanitize ДКП deal outliers (floor / ppm²) (#699) (#733) 2026-05-30 14:31:44 +00:00
tasks feat(tradein): daily asking→sold ratio refresh (#648 S4) (#663) 2026-05-29 13:49:36 +00: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