Skip to content

fix: маршруты, медиа и Worker; Android APK и статический ARM64 CLI - #60

Merged
by-sonic merged 9 commits into
mainfrom
codex/resolve-open-issues
Sep 19, 2026
Merged

by-sonic merged 9 commits into
mainfrom
codex/resolve-open-issues

Conversation

@by-sonic

@by-sonic by-sonic commented Sep 19, 2026 •

Copy link
Copy Markdown
Owner

Что изменено

Обработаны все семь открытых issues: #59, #58, #50, #42, #32, #53 и #9. Когда все маршруты недоступны, подключения теперь соблюдают cooldown. Ограниченный параллелизм позволяет перейти к резерву без ожидания каждого зависшего адреса; ошибки после handshake снимают предпочтение маршрута и попадают в диагностику. Журнал продолжает работать после первых 64 разных событий.

Для медиа исправлено ошибочное направление CDN DC203 в DC2 через DNS fallback. При живой проверке WebSocket CDN не отвечал, тогда как обфусцированный MTProto TCP к его закреплённому адресу работал. Добавлен этот ограниченный маршрут с преобразованием transport-шифрования; Worker остаётся резервом. Ключи и шифрование содержимого Telegram не меняются.

Worker открывает TCP до ответа 101, возвращает 502/504 при отказе и ограничивает очередь записей. Ядро использует rustls с проверкой сертификата и hostname. Добавлены статический ARM64 musl CLI, Android-приложение поверх актуального ядра, управляемый foreground service, постоянный GUI-секрет с миграцией и безопасная диагностическая сводка.

Проверки

  • CI на текущем HEAD: Rust fmt/Clippy/tests на macOS, Windows и Linux; Rust 1.88; frontend и macOS GUI bundle — прошли. Headless suite: 108 тестов ядра и 12 CLI, два внешних сетевых теста явно ignored.
  • Статический ARM64: тесты, ELF без INTERP/NEEDED, запуск, SIGTERM, права секрета 600 и его сохранение после перезапуска — прошли; бинарь и SHA-256 доступны в artifacts.
  • 12 Worker tests исполняют настоящий deployment-файл с mock Cloudflare API. Wrangler deploy --dry-run прошёл без публикации. npm audit: 0 уязвимостей.
  • Независимый Node probe проверил живой req_pq_multi → resPQ, nonce и фрагментацию через Windows CLI по всем 12 направлениям: DC1–5, -1…-5, 203 и -203. CDN: 256–324 мс. Бинарь из CI a3a2f4d; текущий 9dc2db1 отличается только README и распознаванием кнопки в автотесте Android. Проба не создаёт auth key и не использует Telegram-аккаунт.
  • Android APK и Android 15 emulator: обе архитектуры собраны, подпись и Rust-библиотека проверены. Эмулятор прошёл Start → фон 5 секунд → Stop → restart → force-stop/relaunch; проверены foreground service и настоящий SOCKS5-ответ ядра. result.json: launch passed, lifecycle passed; crash log пустой. APK и отчёт доступны в artifacts.
  • Независимое ревью транспорта, ядра, Worker и Android: блокирующих замечаний не осталось.

Границы результата

Успешный транспортный обмен ещё не подтверждает авторизацию и скачивание медиа. Сеть авторов жалоб, физические Android/HyperOS и NanoPi R4S, живой Cloudflare Worker и длительная фоновая работа телефона не проверены. Сетевые issues оставлены открытыми до проверки симптомов в соответствующих условиях.

Android APK экспериментальный, с debug-подписью; это не стабильный мобильный релиз. По запросу владельца подготовлен выпуск 2.0.0-beta.15. Релиз сначала собирается в черновик и публикуется после проверки файлов. Существующие PR #36 и #49 не изменялись.

Полная таблица issue → изменение → проверка: docs/ISSUES_2026-09-19.md. Инструкции: docs/ANDROID.md, docs/OPENWRT.md и docs/LIVE_PROBE.md.

@by-sonic
by-sonic marked this pull request as ready for review September 19, 2026 12:56
@by-sonic
by-sonic merged commit 05ce956 into main Sep 19, 2026
1 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant