diff --git a/docs/agent/COMPLETED_TASKS.md b/docs/agent/COMPLETED_TASKS.md index 30c3ddd..9180054 100644 --- a/docs/agent/COMPLETED_TASKS.md +++ b/docs/agent/COMPLETED_TASKS.md @@ -2,6 +2,13 @@ Архив задач, переведённых в статус `DONE`. +### ED-016 — Привязка экрана к игре через сканер + +- Статус: `DONE` +- Репозитории: `evening_detective_server`, `evening_detective_frontend` +- Результат: на странице игры добавлено сканирование QR-кода экрана с немедленной привязкой к текущей игре; список экранов показывает онлайн/оффлайн-состояние и предупреждает о недоступности более минуты. Сервер разрешает управление организатору и администратору, корректно перепривязывает экран и переносит текущее состояние целевой игры. +- Проверки: `GOCACHE=/tmp/evening-detective-go-cache go test ./...`, `npm run type-check`, `npm run lint`, `npm run lint:css`, `git diff --check` пройдены. + ### ED-026 — Количество игроков при создании команды из панели игры - Статус: `DONE` diff --git a/docs/agent/TASKS.md b/docs/agent/TASKS.md index fe1acc2..9741cc1 100644 --- a/docs/agent/TASKS.md +++ b/docs/agent/TASKS.md @@ -123,21 +123,6 @@ - Ручная проверка: создать план с несколькими типами экранов, изменить параметры, перейти вперёд, назад и на произвольный шаг, подключить несколько экранов и проверить синхронное переключение и восстановление состояния после переподключения. - Следующий шаг: изучить текущие типы экранов, flow подключения дисплеев, realtime-синхронизацию и сохранение игровых состояний, затем выбрать минимальную модель плана и точку управления переходами. -### ED-016 — Привязка экрана к игре через сканер - -- Статус: `TODO` -- Приоритет: `P1` -- Репозитории: `evening_detective_server`, `evening_detective_frontend` -- Цель: дать организатору возможность сразу привязывать экран к выбранной игре сканированием QR-кода экрана. -- Контекст: непривязанный экран уже показывает QR-код; одна игра может использовать несколько экранов. -- Решение: на странице управления конкретной игрой организатор запускает существующий сканер и сканирует QR-код экрана. Экран сразу привязывается к игре, подключается к её realtime-состоянию и начинает показывать игру; экран, привязанный к другой игре, перепривязывается. -- Критерии: сканирование привязывает экран к выбранной игре без дополнительного подтверждения; несколько экранов одновременно получают состояние одной игры; перепривязка с другой игры работает; после переподключения экран получает актуальное состояние. -- Ограничения: переиспользовать существующие QR-коды, авторизацию, realtime-механизм и flow экранов; не добавлять новый протокол или зависимость без необходимости; сгенерированные protobuf-файлы менять только через существующую генерацию. -- Не входит: новый формат QR-кода, отдельное подтверждение привязки, управление планом экранов и создание новых типов экранов. -- Проверка: `cd evening_detective_server && go test ./...`; `cd evening_detective_frontend && npm run type-check && npm run lint && npm run lint:css`. -- Ручная проверка: открыть игру, отсканировать QR-коды двух экранов, проверить их подключение и синхронное отображение; затем перепривязать один экран к другой игре и проверить новое состояние. -- Следующий шаг: изучить текущий flow QR-кода, подключения и привязки экрана, затем выбрать минимальную точку вызова привязки из сканера. - ### ED-017 — Демо-игра из каталога - Статус: `TODO` diff --git a/prod b/prod index 88db2c1..952d4c9 160000 --- a/prod +++ b/prod @@ -1 +1 @@ -Subproject commit 88db2c1e5f491a21930cc1cbfda5e0fe47450e8b +Subproject commit 952d4c9c97c11c963d093dcc73cc509af04afd76