Files
transcriber/tasks/items/web-access.md
T
av 115b3796e8 Нарезка задач под целевое состояние: PWA, вход, хранилище
Роадмап: web-access переименована под приложение, которое ставится на
телефон; заведена цель ready-notification — уведомление о готовности
без открытого приложения.

Беклог: десять задач. Многопользовательская цепочка (oidc-login,
record-ownership, telegram-account-link), веб (json-api-for-spa,
spa-skeleton, upload-and-status-screen, records-list-screen,
installable-pwa), уведомления через apprise и ntfy, разведка выбора
фреймворка. Очередь: долги, хранилище, вход, приложение.

Решение сменилось с htmx на SPA, поэтому conventions/web-ui.md снята
целиком и оставлена честной строкой до итога разведки. Открытые вопросы
архитектуры, границы паспорта и триггеры метки ревью приведены в
соответствие.
2026-08-10 21:36:54 +03:00

27 lines
2.2 KiB
Markdown

# 🎯 Записи загружаются и читаются в приложении, которое ставится на телефон
- **Тип:** goal
- **Секция:** Запланировано
- **Зачем:** Сегодня записи принимает только бот и голый HTTP API без интерфейса: отдать сервис человеку, у которого нет Telegram, нечем.
Приложение получает поверхность, на которой запись загружают и забирают текст,
не открывая Telegram и не вызывая API руками. Ставится оно на телефон и
открывается с ярлыка, как обычное приложение. Конвейер обработки при этом
остаётся прежним — меняется вход и способ показать результат.
Границы взяты уже: запись звука в самом приложении и работа без сети за целью
**не стоят** — файл выбирают в системном диалоге, а без сети приложение
показывает, что связи нет.
## Завершение
1. Экран принимает файл и заводит задачу — ту же, что заводит бот.
2. Состояние задачи видно на экране и обновляется само, пока задача не дошла до
`done` или `failed`; отказ показывается человекочитаемым текстом.
3. Готовый текст читается и копируется с экрана целиком, без деления на части.
4. Список своих записей открывается и листается.
5. Приложение ставится на телефон из браузера и запускается с ярлыка на
отдельном экране, без адресной строки.
6. Открытое без сети, приложение показывает это состоянием, а не пустой
страницей и не ошибкой браузера.