gendesign/tradein-mvp/frontend
bot-frontend 5af7542522 fix(tradein): resilience-хвост аудита (#770 findings #26-33 + global-error)
#26 QueryClient: не ретраить 4xx/429 (anti-storm), mutations retry:false.
#27 WhatIfPanel: seq-guard на out-of-order пересчёты.
#28 WhatIfPanel: caveat-title на дельту (включает scrape-разброс).
#29 стабильные React keys в ListingsCard/DealsCard (composite вместо index).
#30 asHouseType/asRepairState — runtime-валидация перед cast (EstimateForm/HeroSummary).
#31 humanizeAgo: мин→ч→дн для data_freshness_minutes (ListingsCard).
#32 DealsCard: period_months вместо хардкода «7 месяцев».
#33 .gitignore: broader cookies pattern (.avito/.yandex). .bak в git нет — nothing to rm.
#25 (частично): global-error.tsx + history error-state. Sub-part ?id-restore
    error-UI в page.tsx — deferred (нужен UX error-state в restore-флоу).

Refs #770
2026-05-30 20:09:16 +03:00
..
public fix(tradein): commit empty frontend/public via .gitkeep 2026-05-21 00:59:13 +03:00
src fix(tradein): resilience-хвост аудита (#770 findings #26-33 + global-error) 2026-05-30 20:09:16 +03:00
.dockerignore feat: add tradein-mvp subproject (Trade-In Estimator под /trade-in) 2026-05-21 00:25:39 +03:00
Dockerfile fix(tradein): HOSTNAME=0.0.0.0 + NEXT_PUBLIC_API_BASE_URL build-arg 2026-05-21 10:21:32 +03:00
next.config.ts fix(tradein): убрать basePath redirect-loop 2026-05-21 01:05:49 +03:00
package.json feat(tradein): house analytics section (chart + KPI + sold list) (#546) 2026-05-24 18:09:45 +00:00
pnpm-lock.yaml feat(tradein): house analytics section (chart + KPI + sold list) (#546) 2026-05-24 18:09:45 +00:00
tsconfig.json feat: add tradein-mvp subproject (Trade-In Estimator под /trade-in) 2026-05-21 00:25:39 +03:00