tasks: целевая картина пересобрана — три цели, тринадцать задач, сдвинутые границы

- паспорт: сервис объявлен архивом с бессрочным хранением записей и текстов,
  машинная вычитка расшифровки внутри границ, приложение — основной вход;
  добавлены две границы: не файловое хранилище общего назначения и не биллинг;
- заведены цели upload-reliability, user-settings, usage-stats и тринадцать
  задач; очередь пересобрана — сперва починки, затем разведки о хранилище,
  затем доступ и владелец, и только потом экраны;
- архитектура: четыре новых открытых вопроса — приём большого файла, учёт
  расхода, срок хранения, потолок шести часов.
This commit is contained in:
av
2026-08-11 10:05:22 +03:00
parent 2333e80633
commit d2c85af80a
28 changed files with 730 additions and 61 deletions
+38
View File
@@ -0,0 +1,38 @@
# ✨ Отдавать вычитанный текст рядом с сырым
- **Тип:** feature
- **Категория:** Очередь
- **Зачем:** Сырая расшифровка идёт без знаков препинания, с повторами и словами-паразитами: читать её подряд тяжело, а другого уровня текста нет.
- **Теги:** goal:text-insights
Двигает пункт «Завершения» цели про литературный текст: у записи появляется
второй уровень — тот же разговор, вычитанный до читаемого вида.
Вычитку считает та же внешняя модель, что заголовок и темы. Сырой текст
остаётся и не переписывается: уровни лежат рядом, а не поверх друг друга.
## Затрагивает
- колонка литературного текста у задачи и её миграция;
- контракт чтения записи: поле рядом с сырым текстом;
- шаг выводов из текста: ещё одно обращение к модели;
- экран чтения записи: переключение между уровнями;
- ответ бота: какой из уровней уходит в Telegram.
## Критерии приёмки
- У дошедшей до `done` записи есть литературный текст, а сырой остался
нетронутым. Оракул — тест конвейера на подставной модели: оба поля заполнены,
сырое совпадает с ответом распознавания.
- Отказ модели на вычитке не роняет задачу и не портит сырой текст. Оракул —
тест с моделью, возвращающей ошибку: задача в `done`, сырой текст на месте.
- Выключенный в настройках уровень не запрашивается и остаётся пустым. Оракул —
тест с выключенной вычиткой: обращений за ней нет.
- Экран показывает оба уровня с переключением между ними. Оракул — тест экрана
на подставном API.
## Рамки
Ручной правки текста человеком не делаем — это граница паспорта: сервис отдаёт
машинную вычитку, а редактором не становится. Берётся после
`llm-insights-adapter`: клиент модели заводит она.