diff --git a/docs/agent/TASKS.md b/docs/agent/TASKS.md index 788175f..9092ff7 100644 --- a/docs/agent/TASKS.md +++ b/docs/agent/TASKS.md @@ -53,6 +53,20 @@ - Проверка: `cd evening_detective_frontend && npm run type-check && npm run lint && npm run lint:css`. - Следующий шаг: изменить `HeaderMenu.vue`, затем выполнить фронтенд-проверки. +### ED-020 — Музыка из плейлиста на экранах игры + +- Статус: `TODO` +- Приоритет: `P1` +- Репозитории: `evening_detective_server`, `evening_detective_frontend` +- Цель: воспроизводить заранее подготовленный MP3-плейлист в режиме экранов игры. +- Решение: хранить общие плейлисты в системе; разрешить администратору, автору и организатору загружать и удалять MP3; дать автору возможность выбрать или изменить плейлист для своего сценария; дать организатору при подготовке экранов выбрать плейлист и параметры воспроизведения. +- Критерии: доступны загрузка и удаление MP3 для администратора, автора и организатора; автор может изменить плейлист сценария; организатор настраивает старт/паузу, громкость, переключение треков, зацикливание и включение звука; одновременно музыку воспроизводит только один экран — экран с включённым звуком; остальные экраны показывают тот же экран без звука; состояние музыки и текущий трек синхронизируются для подключённых экранов; переподключившийся экран получает актуальные настройки. +- Ограничения: использовать существующие экранный flow, авторизацию и realtime-механизм; поддержать только MP3; не добавлять внешний музыкальный сервис, новый протокол или зависимость без необходимости; не ломать текущий режим экранов. +- Не входит: другие форматы аудио и одновременное воспроизведение музыки на нескольких экранах. +- Проверка: `cd evening_detective_server && go test ./...`; `cd evening_detective_frontend && npm run type-check && npm run lint && npm run lint:css`. +- Ручная проверка: загрузить и удалить MP3 от разных ролей, назначить плейлист сценарию, подготовить экран, включить звук на одном экране, проверить управление треками и переподключение. +- Следующий шаг: изучить текущие модели и API сценариев, загрузки файлов, экранов и realtime-состояния, затем выбрать минимальную точку хранения плейлистов и синхронизации музыки. + ### ED-014 — Периодическое сохранение сценариев в Git - Статус: `TODO`