Skip to content

v1.0.0

Choose a tag to compare

@github-actions github-actions released this 05 Oct 12:15
· 6 commits to main since this release
327ac45

WrtMonitor v1.0.0 - Public Release

Первый публичный выпуск self-hosted управления OpenWrt для одного владельца. Apache License 2.0. Сервер, агент и Android имеют согласованную версию 1.0.0; Android versionCode 126.

Исправлено

  • Публичные аппаратные и диагностические отчёты используют разрешённый набор полей, без raw UCI, системных журналов и аргументов процессов.
  • JWT требуют обязательные claims; обработка архивов восстановления ограничивает размер, пути и типы файлов.
  • Резервные копии сервера создаются в уникальных временных файлах с закрытыми правами доступа.
  • Android корректно различает публичные имена серверов и локальные IPv6-адреса.
  • Заданы обязательный пароль PostgreSQL и проверки ошибок подключения агента.
  • На Netis исправлена реальная ошибка BusyBox: проверка Wi-Fi через tr портила JSON и откатывала уже поднятый SSID. Теперь используется jsonfilter; исправлены также нормализация MAC и duplex.
  • Состояние гостевой сети и профиля доступа согласовано, профиль включён в rollback при изменении/удалении SSID.
  • Короткая PTY-сессия больше не считается ошибкой запуска после успешного завершения. Аппаратный runner использует явно подтверждённые SSH-ключи.

Комплект выпуска

  • Apache License 2.0 включена в сервер, APK, архив агента и файлы выпуска. Лицензии сторонних компонентов сохранены.
  • Добавлены Quick Start, границы аппаратной совместимости, сравнение решений и troubleshooting.
  • Полный release inventory содержит commit, версии и immutable digest контейнера; контрольные суммы подписываются Ed25519 и RSA.
  • Stable gate требует полный физический E2E именно кандидата и отдельное решение владельца.

RELEASE_INVENTORY.json фиксирует commit и immutable digest контейнера. RELEASE_SHA256SUMS.txt покрывает APK, архив агента, TrueNAS YAML, LICENSE и метаданные выпуска и имеет Ed25519/RSA подписи. Отдельный SHA256SUMS.txt описывает файлы внутри архива агента.

Обновление

Штатное обновление сервера через Docker/TrueNAS, агента через подписанный manifest, Android через APK с прежним ключом подписи. Чистая установка не требуется для версионированной БД 0.55.5; перед обновлением сохраните резервную копию. Android versionCode: 126.

Проверки и границы

468 локальных PostgreSQL/backend/agent тестов, OpenWrt harness, responsive browser smoke. CI проверяет Android unit/build/lint/emulator, ShellCheck, contracts, миграции, PostgreSQL backup/restore, чистую установку и обновление с immutable 0.55.5. Security проверяет историю секретов, CodeQL и зависимости.

Аппаратные результаты 1.0.0: Netis NX31 - 91 pass / 4 not applicable; OpenWrt x86/VirtualBox - 76 pass / 19 not applicable. Дополнительно проверены реальная повторная доставка без повторного выполнения, просроченная команда без выполнения, восстановление связи и браузерный PTY. Метод и ограничения, отчёт готовности.

Владелец подтвердил вход, возврат после сна, потерю сети и повторный вход Android на телефоне. Версия установленного APK не записана; это не утверждение о ручной установке финального подписанного APK 1.0.0.

Ограничения: single-owner, поддержка зависит от capabilities роутера; VM без Wi-Fi не подтверждает Wi-Fi. Реальная перепрошивка и внешний VPN-трафик не проверялись. Многодневный soak нового кандидата не выполнялся. Это выпуск для дома/homelab/небольшой сети, не enterprise или multi-tenant controller.

Итог публикации

  • CI тега: все 7 jobs success.
  • Security точного коммита: success.
  • Продвижение GitHub и GHCR latest: success.
  • Скачанные 12 файлов проверены: обе подписи release/agent manifest, все checksum, хеши файлов архива агента.
  • APK: versionName 1.0.0, versionCode 126 > 125, действительная подпись с прежним сертификатом 0.55.5.
  • Inventory commit и OCI labels совпадают с тегом 327ac45de75f506c8e23a7b630d5682fdd499155.
  • Версионный контейнер 1.0.0 и контейнерный latest имеют одинаковый digest:
sha256:4a3fbe2d73ec4d84edaef7d9570b5855f7b97989f141d1e122afbbe5b68b597e

Оба стенда возвращены на рабочий сервер с исходной конфигурацией и агентом 1.0.0. Обновление рабочего TrueNAS-сервера выполняется владельцем штатно, не объявляется выполненным этим выпуском.