- три плагина слились в один `av-dev`: служебные `docs/.docs.json` и `tasks/.tasks.json` заменены на `.av-dev.toml` в корне, в гейте переехали пути трёх скриптов, вызовы скиллов переименованы по всему репозиторию - тип задачи `goal` и `ROADMAP.md` упразднены: семь целей закрыты с причинами, теги сняты, объявлена стадия `support` - метка `small`/`medium`/`large` снята из процесса — вместо «Триггеров метки» в review.md подраздел «Когда звать глубокое ревью»; следом разобран урожай doc-consistency: девять фактов сведены к одному дому
24 lines
1.6 KiB
Markdown
24 lines
1.6 KiB
Markdown
# ✨ Спаривать VobSub .idx+.sub и проставлять языковой суффикс субтитра
|
||
|
||
- **Тип:** feature
|
||
- **Категория:** Ядро продукта
|
||
- **Зачем:** Привязка субтитр→серия уже работает; остались пары VobSub .idx+.sub и потеря Lang/Flags
|
||
|
||
Базовая привязка субтитр→серия для сериала уже работает: `layout.PlanFile` несёт
|
||
`Season/Episode`, а `seriesDst` именует субтитр по стему эпизода
|
||
(`internal/layout/layout.go`, код старше аудита 2026-07-03). Для фильма тоже —
|
||
субтитр именуется по базе видеофайла.
|
||
|
||
Реальные пробелы, оставшиеся от аудита:
|
||
|
||
- **Пары VobSub** `.idx`+`.sub` не спариваются — их надо переносить вместе как одну
|
||
дорожку.
|
||
- **Языковой суффикс теряется:** у `recognize.PlanFile` нет полей `Lang/Flags`, и
|
||
`toLayoutPlan` (`internal/httpapi/review.go`) не проставляет язык — субтитр ляжет
|
||
без `*.ru.srt`-суффикса, который ждёт Jellyfin.
|
||
|
||
Смоделировать язык/флаги субтитра сквозь recognize→layout и спаривание `.idx`+`.sub`;
|
||
спека recognition уже требует «внешние субтитры SHALL привязываться к видео».
|
||
|
||
Связано: openspec/specs/recognition, specs/jellyfin-layout.md, пакеты recognize, layout.
|