38 lines
2.9 KiB
Markdown
38 lines
2.9 KiB
Markdown
# Role Switch And Production Copy Design
|
||
|
||
**Goal:** Убрать из пользовательского интерфейса явную demo/PWA-подачу, добавить служебный сценарий быстрого входа по специальному email с выбором роли и подготовить аккуратную клиентскую ссылку для показа выбора доставки.
|
||
|
||
## Scope
|
||
|
||
- Обычный рабочий OTP-вход остается основным сценарием.
|
||
- При вводе специального email `roles@local` логин переключается в локальный служебный режим:
|
||
- пользователь выбирает роль `manager`, `logistician` или `driver`;
|
||
- OTP не требуется;
|
||
- приложение авторизует пользователя через локальный fallback-профиль для выбранной роли.
|
||
- Из интерфейса убираются тексты и панели, которые прямо продают demo/PWA-режим.
|
||
- Для клиентского показа появляется локальный showcase-token с понятными слотами:
|
||
- завтра / послезавтра;
|
||
- до обеда / после обеда.
|
||
|
||
## UX Decisions
|
||
|
||
- Служебный email не скрывается глубоко в коде: он поддерживается формой логина напрямую, чтобы им было удобно пользоваться на встрече.
|
||
- Тексты в логине и дашборде должны звучать как рабочий продукт, без слов `demo`, `демонстрация`, `PWA-версия`, `offline demo`.
|
||
- Быстрый вход по роли оформляется как сервисный режим доступа, а не как обучающий блок.
|
||
- Клиентская showcase-ссылка должна выглядеть как реальная страница подтверждения доставки, а не как технический мок.
|
||
|
||
## Data Approach
|
||
|
||
- Для служебного role-switch входа используются уже существующие локальные профили ролей.
|
||
- Для showcase-клиента используется локально собранный invitation payload, без вызова Supabase.
|
||
- Боевой Supabase flow не меняется и продолжает обслуживать обычные invitation token.
|
||
|
||
## Validation
|
||
|
||
- Тесты на логин покрывают:
|
||
- обычный OTP-copy без demo-текста;
|
||
- служебный режим по `roles@local`;
|
||
- выбор роли без OTP.
|
||
- Тесты client flow покрывают showcase invitation.
|
||
- После правок прогоняются таргетированные тесты UI и auth.
|