trade-in/v2 [FE-3]: overlay «Аналитика дома» (AnalyticsView) #2040

Closed
opened 2026-06-28 11:04:53 +00:00 by lekss361 · 1 comment
Owner

Под-issue #2036. dependsOn: FE-1.

Wire AnalyticsView:

  • header + 3 KPI ← useEstimateHouseAnalytics.kpi (total_lots, median_exposure_days, median_bargain_pct, sold_rate_pct, radius_m).
  • priceHistory полилинии ← useEstimateHouseAnalytics.price_history[] (year × source avito_imv/yandex_valuation, median_price_per_m2) — точки СЧИТАТЬ вперёд (data→SVG points), не копировать из fixtures.
  • sellTime 4 тира + эталон ₽/м² ← useEstimateSellTimeSensitivity (buckets[4]: price_premium_label/median_exposure_days/p25_days/p75_days/n_lots + target_median_price_per_m2).
  • scatterDetailanalogs[]/actual_deals[] (price×days_on_market; для сделок без exposure — fallback sales-vs-listings.days_listing_to_deal). FE px + nice-scale ticks.
  • опц.: useEstimateCianPriceChanges для бейджа изменений цен.

Acceptance: overlay «Аналитика» рендерит реальные KPI/тиры/полилинии/scatter; next build зелёный.

Под-issue #2036. dependsOn: FE-1. Wire `AnalyticsView`: - header + 3 KPI ← `useEstimateHouseAnalytics.kpi` (`total_lots`, `median_exposure_days`, `median_bargain_pct`, `sold_rate_pct`, `radius_m`). - `priceHistory` полилинии ← `useEstimateHouseAnalytics.price_history[]` (year × source `avito_imv`/`yandex_valuation`, `median_price_per_m2`) — точки СЧИТАТЬ вперёд (data→SVG points), не копировать из fixtures. - `sellTime` 4 тира + эталон ₽/м² ← `useEstimateSellTimeSensitivity` (`buckets[4]`: `price_premium_label`/`median_exposure_days`/`p25_days`/`p75_days`/`n_lots` + `target_median_price_per_m2`). - `scatterDetail` ← `analogs[]`/`actual_deals[]` (price×days_on_market; для сделок без exposure — fallback `sales-vs-listings.days_listing_to_deal`). FE px + nice-scale ticks. - опц.: `useEstimateCianPriceChanges` для бейджа изменений цен. Acceptance: overlay «Аналитика» рендерит реальные KPI/тиры/полилинии/scatter; `next build` зелёный.
lekss361 added the
enhancement
scope/frontend
tradein
labels 2026-06-28 11:06:12 +00:00
Author
Owner

Закрыто. Основной wiring на реальные API-данные был сделан ещё в 267585e3 (28.06, #2039/#2040/#2041, code-reviewer APPROVE) — AnalyticsView уже рендерит useEstimateHouseAnalytics/useEstimateSellTimeSensitivity/price_history-полилинии/scatter из analogs/actual_deals. PR #2298 (мёрж 698c1be4, задеплоен) добил маленький остаток, появившийся после (#2043 BE-1): реальный cv вместо FE-приближения + единый source-registry вместо локальных лейблов. Smoke на проде (qa-tester): overlay рендерится, KPI/полилинии/scatter корректны, консоль чистая.

Закрыто. Основной wiring на реальные API-данные был сделан ещё в 267585e3 (28.06, #2039/#2040/#2041, code-reviewer APPROVE) — AnalyticsView уже рендерит `useEstimateHouseAnalytics`/`useEstimateSellTimeSensitivity`/price_history-полилинии/scatter из `analogs`/`actual_deals`. PR #2298 (мёрж 698c1be4, задеплоен) добил маленький остаток, появившийся после (#2043 BE-1): реальный `cv` вместо FE-приближения + единый `source-registry` вместо локальных лейблов. Smoke на проде (qa-tester): overlay рендерится, KPI/полилинии/scatter корректны, консоль чистая.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#2040
No description provided.