Files
transcriber/tasks/items/settings-screen.md
T
av d2c85af80a tasks: целевая картина пересобрана — три цели, тринадцать задач, сдвинутые границы
- паспорт: сервис объявлен архивом с бессрочным хранением записей и текстов,
  машинная вычитка расшифровки внутри границ, приложение — основной вход;
  добавлены две границы: не файловое хранилище общего назначения и не биллинг;
- заведены цели upload-reliability, user-settings, usage-stats и тринадцать
  задач; очередь пересобрана — сперва починки, затем разведки о хранилище,
  затем доступ и владелец, и только потом экраны;
- архитектура: четыре новых открытых вопроса — приём большого файла, учёт
  расхода, срок хранения, потолок шести часов.
2026-08-11 10:05:22 +03:00

3.0 KiB

Сделать экран настроек и хранить настройки по пользователю

  • Тип: feature
  • Категория: Очередь
  • Зачем: Настроек у пользователя нет вовсе: уровни текста и канал уведомлений задаются общим конфигом сервиса.
  • Теги: goal:user-settings

Двигает пункты 1, 2 и 3 «Завершения» цели: у каждого пользователя свои переключатели уровней текста и свой канал уведомлений, и они переживают повторный вход.

Здесь появляется дом настроек — таблица и эндпоинты; применяют их задачи уровней текста и доставки уведомлений.

Затрагивает

  • таблица настроек пользователя: переключатели уровней текста, канал и адрес уведомлений, и её миграция;
  • эндпоинты чтения и записи своих настроек;
  • новый экран приложения;
  • значения по умолчанию для пользователя, у которого настроек ещё нет;
  • docs/database.md — представление данных и значения по умолчанию.

Критерии приёмки

  • Изменённая настройка видна после повторного входа и не меняется у соседа. Оракул — тест эндпоинта на двух учётных записях: запись первой, чтение обеими.
  • Пользователь без сохранённых настроек читает значения по умолчанию, а не пустой ответ. Оракул — тест чтения для новой учётной записи.
  • Чужие настройки не читаются и не пишутся по идентификатору. Оракул — тест запроса к настройкам другого владельца: 404 либо 403, содержимое не отдаётся.
  • Экран показывает переключатели уровней и поле канала, а сохранение доходит до эндпоинта. Оракул — тест экрана на подставном API.

Рамки

Применением настроек к конвейеру занимаются llm-insights-adapter, literary-text-level и ntfy-delivery — здесь только дом настроек и экран. Выпуск токенов API живёт на этом же экране, но заводит его api-tokens. Берётся после oidc-login: до неё настройки не к кому привязать.