Голосовые системы

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 после поставки проверены:

  1. Тёмная тема по умолчанию; два завершённых потока и все четыре запроса выбранной сессии сохранены. Активных подключений в момент проверки 0; сценарии принимающего и idle подключения проверены на локальном стенде и в тестах.
  2. Полные ID, длительности 227,325 и 235,904 с, счётчики 110 и 112 событий, backend Whisper Turbo, состояние «Полная», переходы к записи видны в общем экране.
  3. Открытие запроса → аудио → диагностика (кнопка запуска доступна) → соответствующий поток с графиками и разделами сообщений/событий. Диагностика во время этой UI-проверки не запускалась.
  4. Переход к исходной записи и возврат Back: снова два потока и четыре запроса, архив раскрыт.
  5. Светлая/тёмная тема, переключение Enter, сохранение после reload. При переключении на открытом аудио source и выбранный диапазон не изменились.
  6. Реальный Chrome: viewport 390×844, ширина документа 375 px, горизонтального переполнения нет. Временный viewport сброшен.
  7. Новых ошибок console после поставки в проверенной вкладке не зафиксировано. В журнале оставались старые сообщения расширения от 11:13 UTC, до поставки 11:24 UTC.

Снимки: тёмная тема, светлая тема, 390 px, до изменения. Вкладка оставлена на общей странице сессии в тёмной теме.

Логи CI и подтверждённые статусы сохранены рядом с отчётом. В текущем объёме нерешённых блокеров нет. Обновлять Chrome extension не требуется.

Исходник

Скачать Markdown · К материалам исследования