66 lines
6.2 KiB
Markdown
66 lines
6.2 KiB
Markdown
# Проверка 2026.09.26.3
|
||
|
||
Изменения выполнены в отдельной копии проекта. Рабочий сервер пользователя,
|
||
рабочие базы, Stat2TV, WFL и реальный vMix не подключались.
|
||
|
||
Полный набор: **421 passed, 40 failed**. По сравнению со вторым этапом
|
||
(409 passed, 40 failed) добавлены 12 проходящих проверок. Набор 40 падающих
|
||
тестов совпадает по идентификаторам; новых падений нет. Они не скрыты через
|
||
skip/xfail и не удалены. Причины разобраны отдельно.
|
||
|
||
## Новые и расширенные проверки
|
||
|
||
- 8 серверных проверок автоматического открепления: граница ровно 2 часа,
|
||
отсутствие продления фоновыми отметками, изоляция другого аккаунта, другой
|
||
активный вход того же аккаунта, повторная проверка после обновления активности,
|
||
передача управления другому оператору, закрытый браузер/offline Agent и
|
||
переподключение, запоздалая попытка назначения, новая привязка после входа,
|
||
запуск/остановка фонового задания. Одна проверка может включать несколько
|
||
перечисленных сценариев.
|
||
- Расширен существующий тест Countdown: модель раздельно хранит длительность
|
||
и текущее положение vMix. До исправления при новом времени 2:00 оставался
|
||
прежний остаток 0:37; новый порядок команд устанавливает 2:00. Проверяются
|
||
пауза/продолжение, ручная правка, сброс, перезагрузка, другое удаление на том
|
||
же Input, отсутствие посекундного транспорта и запрет команд зрителю.
|
||
- Новый JavaScript сценарий исполняет функции рабочего интерфейса: полный и
|
||
неполный черновик, выдача по данным Agent без локальной отметки F1, новое
|
||
остановленное время перед Overlay In, повторный показ без перезапуска,
|
||
редактирование скрытого Input, отсутствие команд зрителя. Проверяется сброс
|
||
локального назначения при ошибке отправки и защита от запоздалого ответа.
|
||
- 3 проверки текущего Mapping транспорта: 372 поля / 12 Inputs в исходном
|
||
порядке, маршрутизация только своему Agent, обрыв после трёх команд и
|
||
прекращение оставшейся отправки, отсутствие отправки полей при неудачном
|
||
назначении матча. Старые BUILD97 тесты оставлены как исторические падения.
|
||
|
||
Три ранее проходившие текстовые проверки BUILD77/BUILD95 приведены в соответствие
|
||
с новым согласованным поведением и новым условием видимости. Их старое ожидание
|
||
«готовое удаление не синхронизируется до старта» больше не соответствует запросу.
|
||
Поведение дополнительно проверено исполняемым JavaScript, а не только поиском строк.
|
||
|
||
## Интеграционная проверка
|
||
|
||
Временный FastAPI сервер, SQLite, настоящий код страницы в jsdom и два подставных
|
||
Agent. Проверены реальные API-запросы, права и отправленные WebSocket кадры:
|
||
|
||
- запуск удаления до первого пробела: Set → Stop → Start с новым временем;
|
||
- пауза без сброса, продолжение без повторной установки, правка и сброс;
|
||
- отсутствие отправки Countdown каждую секунду;
|
||
- фактический выбор нарушения через меню при уже выданном по tally титре;
|
||
- Set → Stop → Overlay In, остановленные локальные часы, закрытие меню;
|
||
- отсутствие команд в Agent второго оператора и ошибок выполнения страницы.
|
||
|
||
Дополнительно проверен синтаксис изменённого JavaScript.
|
||
|
||
## Границы результата
|
||
|
||
Модель Countdown основана на документации vMix; проверка на Windows с реальным
|
||
vMix и производственной PostgreSQL здесь не проводилась. SQLite проверки не
|
||
заменяют нагрузочный тест или проверку PostgreSQL advisory locks в кластере.
|
||
jsdom исполняет DOM/JavaScript, но не проверяет пиксельную отрисовку браузера.
|
||
Исправление не развёрнуто на рабочем сервере.
|
||
|
||
Успех быстрого транспорта означает доставку кадра в WebSocket Agent, а не
|
||
подтверждение исполнения команды vMix. Это существующий режим. Он не позволяет
|
||
обещать успешное отображение при неверном Input/SelectedName или ошибке vMix.
|
||
Архив не содержит измерения производственного CPU/RAM или гарантии нулевой нагрузки.
|