15 KiB
SCREEN-008 — Результаты приёмки 0.2.0-rc.1
«Собран» не означает аппаратный PASS. Отчёты владельца пока не получены.
| Стенд | Артефакт | Установка | Реальный проектор/звук | Полный час офлайн | Обновление/сеть/сон | Физическая медиана/p95 |
|---|---|---|---|---|---|---|
| macOS 13+ Intel | Ожидается сборка на Mac | Не проверено | Не проверено | Не проверено | Не проверено | Нет замеров |
| macOS 13+ Apple Silicon | Ожидается сборка на Mac | Не проверено | Не проверено | Не проверено | Не проверено | M1 16 ГБ: цель p95 ≤150 мс, нет замеров |
| Windows 11 x64 | Собран, проверен архив | Не проверено | Не проверено | Не проверено | Не проверено | Нет замеров |
| Windows 11 ARM64 | Собран, проверен архив | Не проверено | Не проверено | Не проверено | Не проверено | Нет замеров |
| Ubuntu 24.04 x64 | Собран, проверен архив | Не проверено | Не проверено | Не проверено | Не проверено | Нет замеров |
| Debian 13 x64 | Тот же Linux x64 архив | Не проверено | Не проверено | Не проверено | Не проверено | Нет замеров |
| Ubuntu 24.04 ARM64 | Собран, проверен архив | Не проверено | Не проверено | Не проверено | Не проверено | Нет замеров |
| Debian 13 ARM64 | Тот же Linux ARM64 архив | Не проверено | Не проверено | Не проверено | Не проверено | Нет замеров |
Программная проверка 2026-10-17
Стенд: Manjaro Linux x64, один физический дисплей. Node.js 26.8.1,
Electron 42.11.15, electron-builder 26.15.3, ffmpeg n9.0.1.
Версия приложения 0.2.0-rc.1. Сборка из рабочей копии (dirty: true),
Git revision 1d4028b18382983196da94d7f2a5762d23d0150f.
npm run type-check, ESLint, Stylelint, 73 теста — PASS.npm run dist -- --linux --win --x64 --arm64 --publish never— PASS. Все четыре архива распакованы и проверены: ELF/PE архитектура, разрешённый состав app.asar, версия приложения и хеши включённых файлов.- Артефакты:
release/evening-detective-screen-0.2.0-rc.1-{linux-x64,linux-arm64}.tar.gzиrelease/evening-detective-screen-0.2.0-rc.1-{win-x64,win-arm64}.zip. У каждого —.build-info.json; текущие контрольные суммы:release/SHA256SUMS-linux-arm64_linux-x64_win-arm64_win-x64. Архивы 0.1.0 и прежний SHA256SUMS не относятся к кандидату. - Упакованный Linux x64: обновление с сохранённого стенда 0.1.0 и два запуска кандидата на изолированном профиле — PASS. Два офлайн-файла, выбранный пакет, снимок результатов и настройки сохранены; Range работает; автоматического открытия показа/звука/таймера нет. Проверены начало/конец диагностического журнала.
- GUI smoke — PASS: восемь режимов, 11 превью, локальные WAV/H.264 и Range, независимая музыка, существующее серверное управление и запреты IPC. Проверены аварии дисплея/питания/окна, настоящее завершение renderer и повторное открытие без автопуска; все 16 блокировок сна освобождены. Дисплей синтетический, события топологии/fullscreen/сна подставлены; флаги no-sandbox/mute-audio/ disable-gpu использованы только для теста. Физические задержки не измерялись.
- Повторный packaged smoke после исправления завершения тестового процесса — PASS.
sha256sum -c SHA256SUMS-linux-arm64_linux-x64_win-arm64_win-x64— четыре OK.git diff --check— PASS.
Windows-архивы здесь не запускались. GitHub Actions не запускался, артефактов macOS нет. Этот стенд не подтверждает Ubuntu/Debian, реальный проектор, системный аудиовыход, сон, час офлайн и физическую задержку на M1.
Начало аппаратной приёмки Linux (2026-10-17)
- Повторная проверка SHA-256 четырёх архивов — OK.
- Доступный стенд: Manjaro x86_64, KDE Wayland/XWayland.
kscreen-doctor -oобнаружил только встроенный eDP-1: 3072×1920, масштаб 1.5; внешнего дисплея/проектора на момент проверки нет. - Запущен
release/linux-unpacked/evening-detective-screenбез тестовых флагов, с отдельным постоянным профилемrelease/acceptance-profile-linux-x64. Журнал подтвердил app-start версии 0.2.0-rc.1 / Electron 42.11.15 / linux x64. - В stderr: ошибка инициализации VAAPI i965 и три сообщения о падении GPU-процесса с exit_code=139. Основной процесс не завершился на момент наблюдения, но видимость/работоспособность пульта владельцем ещё не подтверждены. Обычный запуск пока не отмечается PASS; тестовые флаги для обхода не добавлялись.
- Ожидается подключение реального проектора и подтверждение интерфейса владельцем. Физический звук, час офлайн, телефон, сон, переподключение и замеры не выполнены. Этот Manjaro-стенд не заменяет Ubuntu/Debian из обязательной матрицы.
Проверка согласования интерфейса (2026-10-17)
Проверены текущие исходники после упаковки кандидата. Архивы 0.2.0-rc.1 не пересобирались и не включают следующие изменения интерфейса.
- Названия восьми режимов согласованы с сайтом, статусы игр показаны по-русски.
- Подключение явно указывает локально выбранную игру, независимо от игры в серверном списке загрузки; отключение не обещает отвязку на сервере.
- Отдельно отображается подтверждённое сервером назначение звука. Локальный mute его не изменяет; отсутствие текущего опроса явно обозначено.
- Type-check, ESLint, Stylelint, 74 теста, сборка, GUI smoke — PASS. Новый GUI-сценарий выбирает серверную игру для подготовки при другом локальном пакете, проверяет неизменность цели управления и перевод статуса. После выбора нового локального пакета цель меняется; серверное назначение звука видно в UI.
- Проверены 28 ссылок документации и git diff --check — PASS.
Прежние ограничения GUI-стенда сохраняются: Linux x64, синтетический внешний дисплей, тестовые no-sandbox/mute-audio/disable-gpu. Новых аппаратных результатов нет.
Диагностика запуска на Manjaro XWayland (2026-10-17)
Вывод о видимости окна ниже опровергнут 2026-10-18: снимок страницы и isVisible() подтвердили внутреннее состояние Electron, но окно не было зарегистрировано в KWin. Прежний обход GPU-композиции удалён; исправление ниже.
- Обычный запуск исходников с чистым профилем воспроизвёл три падения GPU-процесса с exit_code=139. Coredump указывает на libGLESv2/ANGLE, EGL_CreateWindowSurface и eglCreateWindowSurface. Отдельная ошибка VAAPI i965 не является установленной причиной: отключение аппаратного декодирования видео не устранило падения.
- OpenGL через use-angle=gl также не помог. Отключение только GPU-композиции устранило падения. В main этот обход включён для Linux при Wayland-сессии; размещение окон по-прежнему через X11/XWayland. Sandbox не отключается.
- Обычный запуск исправленных исходников и Linux x64 из linux-unpacked — PASS: только временный профиль и localhost debugger для диагностики, без no-sandbox, disable-gpu и mute-audio. Пульт отрисован, проверен снимок; падений GPU нет.
- 77 тестов, type-check, ESLint, Stylelint, сборка и GUI smoke — PASS. В smoke использован только mute-audio, внешний дисплей синтетический; все восемь режимов, WAV/H.264, серверное управление и восстановление после падения renderer прошли.
- Linux x64 0.2.0-rc.1 пересобран: проверены состав приложения, архитектура,
хеши и распакованный архив. SHA-256 архива:
f8c35174057d7dec6609825517617c64d75f82bd29874a8b88118563b07d7236. Обновлены build-info, SHA256SUMS-linux-x64 и запись Linux x64 в общем manifest. Остальные архивы не пересобирались; в них остаётся прежний код. - Запуск на этом компьютере подтверждён; физический проектор, системный звук, аппаратный p95, час офлайн и остальные ОС по-прежнему не подтверждены. SCREEN-001/008 остаются IN_PROGRESS. Diff проверен вручную по применимому стандарту; нарушений не найдено. Коммиты и push агент не выполнял.
Исправление невидимого окна (2026-10-18)
- Без раннего X11-флага Electron возвращал native handle
1и isVisible=true, но_NET_CLIENT_LISTKWin оставался пустым. DOM пульта был загружен. Это объясняет ложноположительные прежние проверки снимком страницы и GUI smoke. - С CLI-флагом
--ozone-platform=x11до запуска процесса native handle стал настоящим X11 ID0x1200004; тот же ID появился в_NET_CLIENT_LIST. Пульт загружен, падений GPU и XGetWindowAttributes нет, GPU не отключён. - Причина: Electron выбирает Ozone до main.js. Поздний appendSwitch менял параметры дочернего GPU, сохраняя Wayland-окно основного процесса. Порядок инициализации Electron 42.
- npm dev/smoke/acceptance теперь запускают Electron через scripts/start.cjs, передающий X11 заранее только на Linux и сохраняющий код завершения процесса. Обычный Linux-запуск без раннего X11 перезапускается с ним до создания окон. Отключение GPU-композиции и поздний appendSwitch удалены; sandbox сохранён.
- 77 тестов, type-check, ESLint, Stylelint, сборка и GUI smoke с mute-audio — PASS. В smoke добавлена проверка native X11 ID; внешний дисплей синтетический. Полный diff проверен вручную по применимому стандарту; нарушений не найдено.
- Именно
npm run devзапущен на обычном профиле: KWin зарегистрировал окно0x1200004. Linux x64 пересобран, состав и распакованный архив проверены; обновлены build-info, SHA256SUMS-linux-x64 и запись в общем manifest. Остальные архивы не пересобирались. - SCREEN-001/008 остаются IN_PROGRESS: реальный проектор, системный звук, аппаратный p95, час офлайн и матрица ОС не подтверждены. Коммитов и push нет.
Отчёт одного стенда
- Дата, версия приложения и SHA-256 архива:
- ОС/версия/архитектура; CPU/RAM:
- Дисплей/проектор, разрешение/масштаб, переходник; для Linux X11/XWayland:
- Аудиовыходы (кабель/USB/HDMI) и форматы:
- Предупреждения неподписанного запуска и результат установки:
- Подготовка/восемь режимов/музыка/таймер/результаты:
- Телефон Safari iPhone / Chrome Android:
- Час работы офлайн; отключение и возврат сети:
- Переподключение дисплея/fullscreen/сон/перезапуск:
- Замена приложения с сохранением профиля:
- 30 физических пусков каждого формата/выхода; медиана/p95:
- Сбои и непройденные пункты; приложенные diagnostic*.jsonl:
Не прикладывать пароли, токены, файл credentials.bin и весь пользовательский профиль.