tasks: спроектирован контракт приложения и переставлена голова очереди
- json-api-for-spa: адреса приложения уехали в своё пространство /app/, приём стал POST /app/audiorecords, опрос /api/status/:id убран, заведены список, карточка, текст, /app/me и /app/config; имя файла отправителя легло своей колонкой рядом с заголовком - три действия над записью — правка заголовка, возврат в работу и журнал событий — собраны задачей audiorecord-actions - голова очереди: контракт, каркас, экран загрузки, список, действия - в прежних задачах поправлены адреса, рубежи конвейера и остатки Telegram
This commit is contained in:
@@ -12,18 +12,19 @@
|
||||
|
||||
## Затрагивает
|
||||
|
||||
- `TranscribeService.createTranscribeJob` — проверка длительности и веса до
|
||||
записи файла на диск;
|
||||
- контракт `POST /api/audio`: код и тело ответа на запись сверх потолка;
|
||||
- ответ бота на слишком длинную запись;
|
||||
- `TranscribeService.createRecord` — проверка длительности и веса до записи
|
||||
файла в хранилище;
|
||||
- контракт `POST /app/audiorecords`: код и тело ответа на запись сверх потолка;
|
||||
- `GET /app/config` — потолок длительности рядом с потолком размера, чтобы экран
|
||||
отклонял такую запись до отправки;
|
||||
- секция конфигурации: потолок длительности и потолок веса;
|
||||
- `docs/database.md` — настройки с числовым значением.
|
||||
|
||||
## Критерии приёмки
|
||||
|
||||
- Запись длиннее потолка отклоняется на приёме: задача не заводится, файл на
|
||||
диске не остаётся. Оракул — тест приёма на записи сверх потолка: задач ноль,
|
||||
каталог хранения пуст.
|
||||
- Запись длиннее потолка отклоняется на приёме: аудиозапись не заводится, файл в
|
||||
хранилище не остаётся. Оракул — тест приёма на записи сверх потолка: записей
|
||||
ноль, каталог хранения пуст.
|
||||
- Отправитель видит человекочитаемый текст с названным пределом, а не код
|
||||
ошибки. Оракул — тест: в теле ответа предел числом, текста внутренней ошибки
|
||||
нет.
|
||||
@@ -36,5 +37,6 @@
|
||||
|
||||
Берётся после `intake-limits-measure`: до неё потолок брать неоткуда. Длительность
|
||||
известна из `ffprobe` — значит, проверка идёт после чтения метаданных, но до
|
||||
записи в базу. Предел веса на стороне сервера уже есть
|
||||
(`router.MaxMultipartMemory`), и он не отменяется, а дополняется.
|
||||
записи в базу. Предел размера на стороне сервера уже есть — `entity.MaxRecordSize`
|
||||
стоит и у поля файла, и у тела запроса приёма, — и он не отменяется, а
|
||||
дополняется потолком длительности.
|
||||
|
||||
Reference in New Issue
Block a user