Monitor 5.11: потоки над запросами и темы
Реализовано
- На странице сессии единый экран: активные аудиоподключения, раскрываемые завершённые потоки, затем запросы. Прежние две вкладки убраны.
- Состояние, полный ID, длительность, полный счётчик событий, backend и состояние записи сохранены. Ссылки открывают прежние подробные экраны.
- Поиск, фильтры и страницы запросов не скрывают активные подключения. Завершённые потоки читаются страницами. Значок
+означает наличие следующих страниц, а не полный счётчик. - Сохранены запросы, дорожки, события, аудио, диагностика, поток, исходная запись, служебные операции и каталог таблиц. Старые ссылки работают; Back возвращает фильтры и раскрытие архива.
- По умолчанию тёмная тема. Кнопка в заголовке переключает светлую/тёмную и сохраняет выбор для сайта. Палитра применяется к таблицам, JSON, статусам и графикам. Переключение не пересоздаёт проигрыватель.
- На узком экране строки потоков становятся карточками. UUID доступен полностью через подсказку и текст; технические сведения не удалены.
Проверки
| Проверка | Результат |
|---|---|
| Полный frontend suite | PASS: 415 тестов / 58 файлов, также на CI точного SHA |
| Адресные Monitor tests | PASS: 126 тестов / 14 файлов |
| Последняя правка жизненного цикла подписки | PASS: 5 audioStreams tests, затем полный suite в CI |
| TypeScript, Vite production, runtime settings | PASS |
| Chrome: поиск и сохранение активных подключений | PASS на реальных компонентах с синтетическими данными |
| Chrome: запрос, запись, графики, Back, каталог | PASS на локальном стенде |
| Chrome: тёмная/светлая, сохранение после reload, Enter | PASS на локальном стенде |
| Chrome: 390 px, отсутствие горизонтального переполнения | PASS на локальном стенде |
В локальном стенде применены реальные компоненты Monitor и синтетические ответы существующих API. Пользовательское аудио в fixtures не добавлялось. Стенд и его сервер после проверки закрыты; fixture не входит в коммит. Физическая речь и ASR в рамках этой UI-правки повторно не измерялись.
Объём и ресурсы
База сравнения: e19084f20b3724f6c40603c3927f965a1358790b.
- 18 файлов: +246 / −87 строк, чистое изменение +159.
- Без документации: 17 файлов, +210 / −87, чистое изменение +123. Включены тесты; vendor, generated и сборочные артефакты не учитываются.
- Удалены переключение двух списков сессии и отдельный renderer этих вкладок. Сами подробные экраны сохранены.
- Новых сервисов, API, таблиц БД, зависимостей, таймеров и NATS-подписок: 0.
- Добавлен один ключ настройки браузера
monitor.theme; постоянного серверного хранения не добавлено. - Общий экран читает метаданные потоков, которые раньше читались при открытии отдельной вкладки. Live-снимки не перечитывают историю из БД. Графики и PCM по-прежнему загружаются только при открытии.
- Длительности активных подключений обновляются на существующих live-снимках. Неизменившийся список не пересоздаётся. Счётчики событий и архивные сведения обновляются существующей кнопкой «Обновить».
Скорость, CPU и память сравнительным нагрузочным тестом в этой UI-правке не измерялись; сокращение кода или отсутствие новых подписок не объявляется измеренным ускорением.
Исходники и CI
- Commit:
34566e13e090552fb9df8f361decde8e81159942, опубликован вmain. - Frontend build-label: 5.11; расширение 1.8.0 не менялось.
- Pipeline 5395.
- Пять обязательных checks PASS: Python 22873; Browser NATS 22874; Frontend 22875; Ruby 22876; Dialog integration 22877.
- Сборка Frontend 22895: PASS.
Поставка и рабочий UI
PASS. Preflight 22900 и адресная поставка 22934 завершены успешно.
- Изменён только
chat-agent_src_front. Штатный deploy проверяет replica=1, завершённый update, running/health контейнера и совпадение его Image ID с проверенным образом; финальный guard проверяет неизменность остальных сервисов. Job 22934 прошла эти проверки. - Revision:
34566e13e090552fb9df8f361decde8e81159942. - Образ:
builder-registry.builder.giscloud.ru/gis/chat-agent/front/main@sha256:a51c56da52fda583b839176f09474db3dd3b1030e17de1fd6ae89421d0f9f4ed. - Обновление прошло через штатный путь краткого drain/resume. Длительность job 77,109 с не равна времени закрытого приёма.
- Инфраструктура, DNS, SSH, схема БД, PostgreSQL, расширение и voice-сервисы не изменялись.
На рабочем Monitor после поставки проверены:
- Тёмная тема по умолчанию; два завершённых потока и все четыре запроса выбранной сессии сохранены. Активных подключений в момент проверки 0; сценарии принимающего и idle подключения проверены на локальном стенде и в тестах.
- Полные ID, длительности 227,325 и 235,904 с, счётчики 110 и 112 событий, backend Whisper Turbo, состояние «Полная», переходы к записи видны в общем экране.
- Открытие запроса → аудио → диагностика (кнопка запуска доступна) → соответствующий поток с графиками и разделами сообщений/событий. Диагностика во время этой UI-проверки не запускалась.
- Переход к исходной записи и возврат Back: снова два потока и четыре запроса, архив раскрыт.
- Светлая/тёмная тема, переключение Enter, сохранение после reload. При переключении на открытом аудио source и выбранный диапазон не изменились.
- Реальный Chrome: viewport 390×844, ширина документа 375 px, горизонтального переполнения нет. Временный viewport сброшен.
- Новых ошибок console после поставки в проверенной вкладке не зафиксировано. В журнале оставались старые сообщения расширения от 11:13 UTC, до поставки 11:24 UTC.
Снимки: тёмная тема, светлая тема, 390 px, до изменения. Вкладка оставлена на общей странице сессии в тёмной теме.
Логи CI и подтверждённые статусы сохранены рядом с отчётом. В текущем объёме нерешённых блокеров нет. Обновлять Chrome extension не требуется.