Commit graph

2 commits

Author SHA1 Message Date
lekss361
95bada3855 feat(tradein): brand-by-account + result IA redesign (distinct asking/sale prices)
- Resolve brand from account: /me returns brand (praktika/kopylov->praktika);
  useBrand uses ?brand= param OR me.brand (param wins) -> praktika auto-branded
  on login (no manual ?brand= needed).
- Result IA (Brusnika-style): single «Ожидаемая цена сделки» headline (lower,
  -X% vs asking, 5-12% note); two DISTINCT reference figures (asking объявления
  vs ДКП Росреестр) + price bars; sources row; 3 always-on explainer cards
  (asking!=real, ремонт по состоянию, скрытые расходы <=15%).
- Defer commercial buyback value (Brusnika p.4): OfferCard stub + TODO, no
  invented numbers (pending Praktika commercial terms).
- tsc clean, ruff clean, 35 backend tests (7 new /me-brand).

Refs #657
2026-05-30 09:38:09 +03:00
88cdfd6adb feat(rbac): role-based access control via X-Authenticated-User middleware (#585)
All checks were successful
Deploy Trade-In / changes (push) Successful in 5s
Deploy / changes (push) Successful in 6s
Deploy Trade-In / build-frontend (push) Successful in 27s
Deploy / build-frontend (push) Successful in 30s
Deploy Trade-In / build-backend (push) Successful in 1m8s
Deploy Trade-In / deploy (push) Successful in 45s
Deploy / build-backend (push) Successful in 2m40s
Deploy / build-worker (push) Successful in 3m20s
Deploy / deploy (push) Successful in 1m16s
Backend RBAC + Caddy header_up. Closes part of #fixes-rbac-pra.
2026-05-26 06:18:40 +00:00