fix(tradein/auth): expire brusnika (user2) trial access #2472

Merged
bot-backend merged 1 commit from fix/expire-brusnika-trial-access into main 2026-07-09 16:07:55 +00:00
Owner

Что

Обрубить доступ «Брусники» аналогично «Практике» (PR #1977).

Брусника заходит под пилот-слотом user2. В auth/roles.yaml меняю user2: pilotuser2: expired.

Почему это единственная правка

Инфраструктура expired-роли уже в проде (PR #1977):

  • роль expired в roles.yamlpaths: [], deny: /**;
  • RouteGuard short-circuit'ит на role=expiredNoAccessScreen variant="trial" («Пробный доступ закончился», контакт @ArtemKopylov87);
  • backend Role Literal и frontend Role type уже включают "expired".

Здесь — только смена роли одного юзера, кода не трогаем.

Поведение после мержа

  • user2 логинится через Caddy basic_auth (логин остаётся в caddy/users.caddy.snippet, чтобы дойти до фронта), /me отдаёт role=expired, RouteGuard рендерит trial-экран. Доступа к /trade-in/** и остальному нет.
  • Остальные пилоты (user1, user3–user10, kopylov) не затронуты.

Проверка

roles.yaml валиден (pre-commit check yaml passed). Смена роли идемпотентна, отката кода не требует.

## Что Обрубить доступ «Брусники» аналогично «Практике» (PR #1977). Брусника заходит под пилот-слотом **user2**. В `auth/roles.yaml` меняю `user2: pilot` → `user2: expired`. ## Почему это единственная правка Инфраструктура `expired`-роли уже в проде (PR #1977): - роль `expired` в `roles.yaml` — `paths: []`, `deny: /**`; - `RouteGuard` short-circuit'ит на `role=expired` → `NoAccessScreen variant="trial"` («Пробный доступ закончился», контакт @ArtemKopylov87); - backend `Role` Literal и frontend `Role` type уже включают `"expired"`. Здесь — только смена роли одного юзера, кода не трогаем. ## Поведение после мержа - user2 логинится через Caddy basic_auth (логин остаётся в `caddy/users.caddy.snippet`, чтобы дойти до фронта), `/me` отдаёт `role=expired`, RouteGuard рендерит trial-экран. Доступа к `/trade-in/**` и остальному нет. - Остальные пилоты (user1, user3–user10, kopylov) не затронуты. ## Проверка roles.yaml валиден (pre-commit `check yaml` passed). Смена роли идемпотентна, отката кода не требует.
lekss361 added 1 commit 2026-07-09 16:06:32 +00:00
fix(tradein/auth): expire brusnika (user2) trial access
All checks were successful
CI / changes (pull_request) Successful in 8s
CI Trade-In / changes (pull_request) Successful in 10s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
3c4a33ca32
Аналогично praktika (#1977): user2 pilot→expired в roles.yaml. RouteGuard
уже short-circuit'ит на role=expired → NoAccessScreen variant="trial"
(«Пробный доступ закончился», контакт @ArtemKopylov87). Логин остаётся в
caddy/users.caddy.snippet, чтобы дойти до фронта и увидеть экран. Инфра
expired-роли + trial-экран уже в проде — здесь только смена роли.
bot-backend merged commit 3fe1216317 into main 2026-07-09 16:07:55 +00:00
Sign in to join this conversation.
No reviewers
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#2472
No description provided.