Стабильный выпуск CSQTT 2.1.10.
Исправлено:
- при SSH-входе по ключу можно отдельно указать необязательный пароль sudo для deploy и uninstall;
- количество валидных VK-хешей и допустимый лимит workers обновляются без stale Compose state;
- диагностика запуска разделяет отсутствие TURN allocation и готовый TURN без CSQTT server handshake;
- сообщения диагностики подсказывают проверить UDP/TCP-TLS, endpoint, порт, пароль, firewall и server logs.
Release hardening:
- любой Android release fail-closed проверяет обе native ABI, ELF identity, Cargo outputs, Cargo locks, provenance, embedded server и deploy markers;
- добавлены штатная Linux-сборка Android Rust core и единый Windows/Linux provenance schema;
- GitHub CI проверяет Android unit/lint и Rust fmt/clippy/tests на чистом checkout;
- версии Android, Rust client, Rust server, deploy script и web panel синхронизированы на 2.1.10.
Артефакты:
- universal, arm64-v8a и armeabi-v7a Android APK;
- статический Linux amd64 server;
- native client provenance и SHA256SUMS.
Android APK подписаны тем же release-сертификатом, что и 2.1.8, поэтому устанавливаются обновлением поверх предыдущей версии. Встроенная проверка обновлений обращается только к danusha2345/csqtt-android.
Промежуточный tag v2.1.9 не публиковался как Release и не переписывался; этот выпуск полностью его заменяет.