tasks: очередь расставлена от базы к деталям

- порядок беклога и роадмапа назначен слоями: проверки, которым можно
  верить → долги входа → владелец записи и контракт API → конвейер под
  тестами → приложение и возможности поверх; у каждого движения записана
  причина;
- заведены восемь задач под пункты «Завершения», которых не закрывала ни
  одна запись, — цель any-audio-source была без задач вовсе;
- у четырёх задач сняты критерии, требовавшие того, что делает задача ниже
  по очереди; исправлены ссылки на несуществующий repo/sqlite и на
  отменённую разведку об очереди.
This commit is contained in:
av
2026-08-12 20:48:53 +03:00
parent ddc34b3182
commit 8739b18a9f
73 changed files with 490 additions and 139 deletions
@@ -0,0 +1,32 @@
# 🔬 Перечень форматов, которые конвейер принимает на самом деле
- **Тип:** research
- **Категория:** Очередь — Форматы: сначала замер того, что конвейер берёт на самом деле.
- **Зачем:** Команда ffmpeg проверена на голосовых Telegram, а что она берёт помимо них, не мерил никто: перечень выведен из документации, а не из прогона.
- **Теги:** goal:any-audio-source
Двигает пункты 1 и 4 «Завершения» цели: перечень принимаемых форматов замерен и
записан, а расхождение `ogg/vorbis` против заявленного SpeechKit `OGG_OPUS`
разобрано.
## Вопрос
Какие форматы доходят до текста целиком, какие ломаются на конвертации, какие —
на распознавании, и чем на самом деле кодирует конвертер: `vorbis` или `opus`.
## Куда ляжет ответ
- `docs/research/audio-formats.md` — таблица «формат на входе → исход», с
командой замера и версией ffmpeg, на которой он сделан;
- расхождение `ogg/vorbis` против `OGG_OPUS`: строка о том, устранено оно или
проверенно безвредно, и чем это подтверждено;
- форматы, которые принять нельзя, — задачей об отказе на приёме, с провенансом
этой разведки.
## Рамки
Замер идёт на своих файлах во временном каталоге и на подставном распознавателе
`internal/adapter/recognizer/memory.go`; прогон на реальных ключах Yandex
запрещён — там, где без настоящего SpeechKit не обойтись, ответ берётся из
задачи `speechkit-limits`, а не оплачивается заново. Видеофайлы здесь только
измеряются, приём их заводит `video-audio-track-intake`.