From 4ea5280f61f0022b2b7f6a147ba769eeba58afbb Mon Sep 17 00:00:00 2001 From: sasa Date: Mon, 31 Aug 2026 23:58:06 +0300 Subject: [PATCH] feat; validate Web Audio engagement, compatibility, and long-run stability on real devices --- docs/AUDIO_DEVICE_VALIDATION.md | 56 +++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 docs/AUDIO_DEVICE_VALIDATION.md diff --git a/docs/AUDIO_DEVICE_VALIDATION.md b/docs/AUDIO_DEVICE_VALIDATION.md new file mode 100644 index 0000000..ecc30af --- /dev/null +++ b/docs/AUDIO_DEVICE_VALIDATION.md @@ -0,0 +1,56 @@ +# Проверка звука на устройствах + +Этот лист фиксирует Milestone 026. Не записывайте детей и не сохраняйте +персональные данные: достаточно анонимных наблюдений ответственного взрослого. + +## Перед началом + +1. Загрузите текущие firmware и LittleFS образы, затем выполните жёсткое + обновление страницы. +2. На каждом устройстве откройте лобби, включите звук явным нажатием и + проверьте `Тихо`, `Обычно`, `Громко` и `Мягкие звуки`. +3. Запишите браузер, ориентацию, способ транспорта (WebSocket или HTTP) и + только результат: pass/fail и краткое анонимное замечание. + +## Матрица + +| Устройство | Браузер | Портрет | Альбом | WS | HTTP | Результат/замечание | +| --------------------------------- | -------------------- | ------- | ------ | --- | ---- | ------------------- | +| Android-телефон | Chromium | | | | | | +| Android-планшет/второе устройство | Chromium | | | | | | +| iPhone/iPad, если доступен | Safari | | | | | | +| Ноутбук | браузер и клавиатура | | | | | | + +## Сценарии + +- После первого нажатия звук включается; после перезагрузки и resume выбор + сохраняется. Мгновенное выключение прекращает уже играющий звук. +- Различимы выбор цели, выстрел, промах, попадание, потопление, входящий + результат, ход, комбо, победа, поражение, повтор и действия восстановления. +- За 30 выстрелов один и тот же тип не звучит подряд одним пресетом. Комбо + ×2, ×3 и ×4+ заметно усиливаются, а `Мягкие звуки` короче и спокойнее. +- Уход в фон, возврат, блокировка/разблокировка и смена вкладки не создают + очередь старых звуков. Потеря WebSocket, HTTP-опрос и восстановление не + повторяют один результат. +- Зритель слышит только публичные попадания/промахи/потопления и не получает + информацию о скрытых кораблях. Leave, profile reset и full reset безопасно + останавливают активный звук. +- При отключённом или заблокированном Web Audio игра остаётся полностью + рабочей и тихой; все события понятны визуально и экранные метки не + дублируются бесполезными объявлениями. + +## Длительная проверка + +Проведите 20 обычных партий со звуком и один 60-минутный сеанс с выстрелами, +комбо, сбросами, переподключениями и сменой видимости. Зафиксируйте отсутствие +ошибок консоли, застрявших звуков, роста памяти/таймеров, ухудшения доставки, +переполнения голосов и просадки heap ESP32. Отметьте, были ли какие-либо +задержанные или пропущенные важные сигналы. + +## Короткая оценка + +Ответственный взрослый или взрослый прокси отмечает только: различимы ли +выстрел/промах/попадание/потопление/победа без чтения; помогают ли звуки +вниманию; не слишком ли громки, резки, басовиты или тревожны; легко ли найти +mute и громкость; не провоцируют ли звуки случайные нажатия. При замечании +укажите тип звука, а не сведения о человеке.