gendesign/tradein-mvp/frontend
bot-backend 50a3a29b72 fix(mera/b2c): блок точности называет то окно, которое измерено
Подпись обещала «сделки с июня 2025 года», а выборка бэктеста берётся
ORDER BY id DESC LIMIT :sample (backend/scripts/backtest_estimator.py,
_SAMPLE_SQL) — это последние по порядку загрузки строки, а не срез окна.
Проверка на проде 30.08.2026: у всех 327 сделок deal_date = 2026-04-01,
то есть один квартал; проверены оба варианта запуска (без --city и с
--city Екатеринбург) — результат одинаковый. Случайной выборки в скрипте
нет, поэтому чинится подпись, а не замер: числа те же, окно названо своё.

Заодно:
- доля выборки на витрине (5,5 % сделок квартала). Знаменатель — из ТОГО ЖЕ
  окна (5 954 годных сделки ЕКБ за II кв 2026), а не 24 333 за всё окно
  с июня 2025: доля от непокрытого окна повторила бы ту же ошибку;
- дата замера выведена рядом с числами: регулярного пересчёта у них нет,
  без даты они стареют молча;
- __tests__/backtest-freshness.test.ts краснеет, когда замеру больше
  BACKTEST_MAX_AGE_DAYS (100 дн. = квартальная пачка Росреестра + запас).
  Фальсифицирован: дата 2026-01-05 → красный с текстом «замеру 236 дн.».

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-30 00:09:43 +05:00
..
public refactor(tradein/v2): перенос HUD v2 в tradein-mvp frontend 2026-06-28 13:10:23 +03:00
scripts chore(mera-public): isolation guard + favicon + Caddy handle (#2631) (#2644) 2026-08-05 06:20:40 +00:00
src fix(mera/b2c): блок точности называет то окно, которое измерено 2026-08-30 00:09:43 +05:00
.dockerignore feat: add tradein-mvp subproject (Trade-In Estimator под /trade-in) 2026-05-21 00:25:39 +03:00
Dockerfile chore(ci): node 20 отслужил — рантайм фронтов и оба CI-джоба на node 24 LTS 2026-08-29 14:02:55 +03:00
eslint.config.mjs ci(tradein): pre-merge гейт — backend pytest + frontend type-check/lint (#2208) (#2220) 2026-07-02 19:56:22 +00:00
next.config.ts fix(tradein/frontend): redirect legacy /trade-in root to canonical /v2 2026-07-02 19:26:55 +03:00
package-lock.json chore(deps/mera): vitest 2 → 3 — заодно уходит вся dev-цепочка vite/esbuild 2026-08-29 14:08:05 +03:00
package.json chore(deps/mera): vitest 2 → 3 — заодно уходит вся dev-цепочка vite/esbuild 2026-08-29 14:08:05 +03:00
tsconfig.json feat: add tradein-mvp subproject (Trade-In Estimator под /trade-in) 2026-05-21 00:25:39 +03:00
vitest-env.d.ts test(tradein/frontend): первые проверки поведения — пустое поле, погашенное число, отказ 429 (#2766) (#2769) 2026-08-07 07:55:37 +00:00
vitest.config.ts test(tradein/frontend): первые проверки поведения — пустое поле, погашенное число, отказ 429 (#2766) (#2769) 2026-08-07 07:55:37 +00:00
vitest.setup.ts test(tradein/frontend): первые проверки поведения — пустое поле, погашенное число, отказ 429 (#2766) (#2769) 2026-08-07 07:55:37 +00:00