diff --git a/docs/agent/COMPLETED_TASKS.md b/docs/agent/COMPLETED_TASKS.md index 9180054..22ded92 100644 --- a/docs/agent/COMPLETED_TASKS.md +++ b/docs/agent/COMPLETED_TASKS.md @@ -2,6 +2,15 @@ Архив задач, переведённых в статус `DONE`. +### ED-015 — План экранов игры для организатора + +- Статус: `DONE` +- Приоритет: `P1` +- Репозитории: `evening_detective_server`, `evening_detective_frontend` +- Результат: добавлен необязательный план экранов игры с линейными шагами, текущим индексом и параметрами текста и таймера. Организатор может создать, изменить, удалить и переставить шаги, а также перейти на любой шаг; состояние применяется ко всем подключённым экранам и повторно применяется при привязке нового экрана. Добавлен текстовый режим экрана. Игры без плана продолжают работать через существующее ручное управление; синхронизация использует текущий polling. +- Проверки: целевые backend-пакеты и `screen_plan_service` проходят; frontend `npm run type-check`, `npm run lint`, `npm run lint:css`, `npm run build` и `git diff --check` пройдены; protobuf сгенерирован штатными командами. Полный backend `go test ./...` дополнительно упирается в sandbox-запрет `listen tcp` в gateway-тестах. +- Ручная проверка: не выполнялась в среде агента; требуется проверить реальными экранами создание плана, переходы, синхронизацию нескольких дисплеев и переподключение. + ### ED-016 — Привязка экрана к игре через сканер - Статус: `DONE` diff --git a/docs/agent/TASKS.md b/docs/agent/TASKS.md index 9741cc1..c1af9be 100644 --- a/docs/agent/TASKS.md +++ b/docs/agent/TASKS.md @@ -108,21 +108,6 @@ - Проверка: ручная проверка пользователем — изменить сценарий, убедиться в появлении commit и push в отдельном репозитории, проверить ограничение частоты и отображение ошибки при недоступном push. - Следующий шаг: изучить серверный flow изменения сценариев, экспортный формат, текущие фоновые механизмы и конфигурацию окружения, затем выбрать минимальную точку запуска отложенной Git-синхронизации. -### ED-015 — План экранов игры для организатора - -- Статус: `TODO` -- Приоритет: `P1` -- Репозитории: `evening_detective_server`, `evening_detective_frontend` -- Цель: дать организатору возможность до начала игры составить план показа экранов и во время игры управлять текущим экраном для всех подключённых дисплеев. -- Контекст: экраны отображают участникам надписи, таймер и другие элементы; должны использоваться уже существующие типы экранов. -- Решение: организатор создаёт для игры линейную последовательность экранов, настраивает параметры каждого шага, переходит вперёд и назад, а также может перескочить на любой шаг. Выбранный экран и его параметры синхронно применяются ко всем подключённым к игре экранам. -- Критерии: план сохраняется для игры до старта; организатор видит и редактирует последовательность; доступны все существующие типы экранов; параметры текста, таймера и других поддерживаемых элементов сохраняются; переход вперёд, назад и на выбранный шаг меняет экран у всех подключённых дисплеев; переподключившийся экран получает актуальное состояние. -- Ограничения: переиспользовать существующие типы экранов, авторизацию, realtime-механизм и игровые состояния; не добавлять новый протокол или зависимость без необходимости; не ломать текущий режим показа экранов; сгенерированные protobuf-файлы менять только через существующую генерацию. -- Не входит: создание новых типов экранов, визуальный редактор произвольных экранов, планирование по времени без действия организатора и сохранение планов между разными играми. -- Проверка: `cd evening_detective_server && go test ./...`; `cd evening_detective_frontend && npm run type-check && npm run lint && npm run lint:css`. -- Ручная проверка: создать план с несколькими типами экранов, изменить параметры, перейти вперёд, назад и на произвольный шаг, подключить несколько экранов и проверить синхронное переключение и восстановление состояния после переподключения. -- Следующий шаг: изучить текущие типы экранов, flow подключения дисплеев, realtime-синхронизацию и сохранение игровых состояний, затем выбрать минимальную модель плана и точку управления переходами. - ### ED-017 — Демо-игра из каталога - Статус: `TODO` diff --git a/prod b/prod index 952d4c9..059c3ac 160000 --- a/prod +++ b/prod @@ -1 +1 @@ -Subproject commit 952d4c9c97c11c963d093dcc73cc509af04afd76 +Subproject commit 059c3aca3e919d3a66b1242fd9a406d3f32dc7b9