Denozordec and Claude Opus 5.5
68ee051ab2
android: version 2.19.4 (172) — обновления и отчёты через панель SHX VPN
...
CodeQL / pre-check (push) Failing after 4s
CodeQL / analyze (python) (push) Skipped
CodeQL / analyze (ruby) (push) Skipped
FreeBSD / freebsd (14.4) (push) Skipped
Linux / pre-check (push) Failing after 4s
Linux / latest (apidoc) (push) Skipped
Linux / latest (clang, no, default) (push) Skipped
Linux / latest (clang, no-testable-ke) (push) Skipped
Linux / latest (clang, yes, default) (push) Skipped
Linux / latest (yes, ld) (push) Skipped
Linux / crypto (ubuntu-latest, botan) (push) Skipped
Linux / older (gcc, ubuntu-22.04, nm) (push) Skipped
Linux / alpine (push) Skipped
macOS / pre-check (push) Failing after 4s
SonarCloud / pre-check (push) Failing after 3s
SonarCloud / sonarcloud (push) Skipped
Windows / pre-check (push) Failing after 4s
Windows / cross-compile (win64) (push) Skipped
CodeQL / analyze-cpp (push) Skipped
FreeBSD / pre-check (push) Failing after 3s
Linux / latest (clang, no-dbg) (push) Skipped
Linux / latest (clang, yes, all) (push) Skipped
Linux / latest (clang, yes, fuzzing) (push) Skipped
Linux / latest (dist) (push) Skipped
Linux / latest (gcc, no, default) (push) Skipped
Linux / latest (gcc, yes, default) (push) Skipped
Linux / latest (nm) (push) Skipped
Linux / latest (no-dbg) (push) Skipped
Linux / latest (no-testable-ke) (push) Skipped
Linux / older (clang, ubuntu-22.04, all) (push) Skipped
macOS / macos (macos-14) (push) Skipped
macOS / macos (macos-latest) (push) Skipped
TKM / pre-check (push) Failing after 3s
Windows / cross-compile (win32) (push) Skipped
Windows / native (x86_64, mingw64, win64) (push) Skipped
Android / pre-check (push) Failing after 8s
Android / android (push) Skipped
CIFuzz / pre-check (push) Failing after 3s
CIFuzz / fuzzing (undefined) (push) Skipped
FreeBSD / freebsd (15.0) (push) Skipped
Linux / latest (clang, no, all) (push) Skipped
Linux / latest (clang, no, printf-builtin) (push) Skipped
Linux / latest (coverage) (push) Skipped
Linux / latest (gcc, no, all) (push) Skipped
Linux / latest (gcc, no, printf-builtin) (push) Skipped
Linux / latest (gcc, yes, all) (push) Skipped
Linux / crypto (ubuntu-22.04, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-3) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-4) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-awslc) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-sys) (push) Skipped
Linux / older (gcc, ubuntu-22.04, all) (push) Skipped
Windows / native (i686, mingw32, win32) (push) Skipped
CIFuzz / fuzzing (address) (push) Skipped
Linux / crypto (ubuntu-latest, wolfssl) (push) Skipped
- проверка обновлений через API панели (get.shnt.top/api/v1): подписанный запрос (HMAC),
манифест с подписью Ed25519; старый бакет — только запасной путь при сетевой ошибке
- экраны обновления по макету: страница «Обновления» с каналом и кодом беты, шторки
«Что нового», «Скачивание» (с отменой), «Обязательное обновление», «Не установлено»
- отправка отчёта из журнала в панель: код отчёта, запись в «Событиях», письмо как запасной путь;
к отчёту прикладываются результаты проверки сети (checks.json) и diag.log
- исправлен вылет при скачивании обновления на Android 16.0 (setRequestPromotedOngoing есть только с API 36.1)
- кнопки шторок переносят текст на вторую строку, однословные уменьшаются
- задача Gradle uploadShx: сборка и загрузка APK в панель (scripts/upload-apk.mjs)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-11-08 22:38:45 +07:00
Denozordec and Claude Sonnet 5.5
0e35a794c9
android: version 2.19.1 (169)
...
CodeQL / pre-check (push) Failing after 4s
CodeQL / analyze (python) (push) Skipped
CodeQL / analyze (ruby) (push) Skipped
FreeBSD / freebsd (14.4) (push) Skipped
Linux / pre-check (push) Failing after 4s
Linux / latest (apidoc) (push) Skipped
Linux / latest (clang, no, default) (push) Skipped
Linux / latest (clang, no-testable-ke) (push) Skipped
Linux / latest (clang, yes, default) (push) Skipped
Linux / latest (no-testable-ke) (push) Skipped
Linux / latest (yes, ld) (push) Skipped
Linux / crypto (ubuntu-latest, botan) (push) Skipped
Linux / older (gcc, ubuntu-22.04, nm) (push) Skipped
Linux / alpine (push) Skipped
macOS / pre-check (push) Failing after 4s
SonarCloud / pre-check (push) Failing after 4s
SonarCloud / sonarcloud (push) Skipped
Windows / pre-check (push) Failing after 4s
Windows / cross-compile (win64) (push) Skipped
Android / pre-check (push) Failing after 5s
CodeQL / analyze-cpp (push) Skipped
FreeBSD / pre-check (push) Failing after 4s
Linux / latest (clang, no-dbg) (push) Skipped
Linux / latest (clang, yes, all) (push) Skipped
Linux / latest (clang, yes, fuzzing) (push) Skipped
Linux / latest (dist) (push) Skipped
Linux / latest (gcc, no, default) (push) Skipped
Linux / latest (gcc, yes, default) (push) Skipped
Linux / latest (nm) (push) Skipped
Linux / latest (no-dbg) (push) Skipped
Linux / older (clang, ubuntu-22.04, all) (push) Skipped
macOS / macos (macos-14) (push) Skipped
macOS / macos (macos-latest) (push) Skipped
TKM / pre-check (push) Failing after 4s
Windows / cross-compile (win32) (push) Skipped
Windows / native (x86_64, mingw64, win64) (push) Skipped
Android / android (push) Skipped
CIFuzz / pre-check (push) Failing after 4s
CIFuzz / fuzzing (undefined) (push) Skipped
FreeBSD / freebsd (15.0) (push) Skipped
Linux / latest (clang, no, all) (push) Skipped
Linux / latest (clang, no, printf-builtin) (push) Skipped
Linux / latest (coverage) (push) Skipped
Linux / latest (gcc, no, all) (push) Skipped
Linux / latest (gcc, no, printf-builtin) (push) Skipped
Linux / latest (gcc, yes, all) (push) Skipped
Linux / crypto (ubuntu-22.04, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-3) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-4) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-awslc) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, wolfssl) (push) Skipped
Linux / older (gcc, ubuntu-22.04, all) (push) Skipped
Windows / native (i686, mingw32, win32) (push) Skipped
CIFuzz / fuzzing (address) (push) Skipped
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-14 12:55:25 +07:00
Denozordec and Claude Sonnet 5.5
5ffb5a2dbb
android: «How traffic goes» no longer says the app is not found on the first try: the check waits for the installed-apps list instead of a fixed 300 ms delay
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-14 12:50:50 +07:00
Denozordec and Claude Sonnet 5.5
ae06a58013
android: version 2.19.0 (168)
...
CodeQL / pre-check (push) Failing after 4s
CodeQL / analyze (python) (push) Skipped
CodeQL / analyze (ruby) (push) Skipped
FreeBSD / freebsd (14.4) (push) Skipped
Linux / pre-check (push) Failing after 3s
Linux / latest (apidoc) (push) Skipped
Linux / latest (clang, no, default) (push) Skipped
Linux / latest (clang, no-testable-ke) (push) Skipped
Linux / latest (clang, yes, default) (push) Skipped
Linux / latest (yes, ld) (push) Skipped
Linux / crypto (ubuntu-latest, botan) (push) Skipped
Linux / older (gcc, ubuntu-22.04, nm) (push) Skipped
macOS / pre-check (push) Failing after 5s
Linux / alpine (push) Skipped
SonarCloud / pre-check (push) Failing after 4s
SonarCloud / sonarcloud (push) Skipped
Windows / pre-check (push) Failing after 4s
Windows / cross-compile (win64) (push) Skipped
CodeQL / analyze-cpp (push) Skipped
FreeBSD / pre-check (push) Failing after 3s
Linux / latest (clang, no-dbg) (push) Skipped
Linux / latest (clang, yes, all) (push) Skipped
Linux / latest (clang, yes, fuzzing) (push) Skipped
Linux / latest (dist) (push) Skipped
Linux / latest (gcc, no, default) (push) Skipped
Linux / latest (gcc, yes, default) (push) Skipped
Linux / latest (nm) (push) Skipped
Linux / latest (no-dbg) (push) Skipped
Linux / latest (no-testable-ke) (push) Skipped
Linux / older (clang, ubuntu-22.04, all) (push) Skipped
macOS / macos (macos-14) (push) Skipped
macOS / macos (macos-latest) (push) Skipped
TKM / pre-check (push) Failing after 4s
Windows / cross-compile (win32) (push) Skipped
Windows / native (x86_64, mingw64, win64) (push) Skipped
Android / pre-check (push) Failing after 7s
Android / android (push) Skipped
CIFuzz / pre-check (push) Failing after 3s
CIFuzz / fuzzing (undefined) (push) Skipped
FreeBSD / freebsd (15.0) (push) Skipped
Linux / latest (clang, no, all) (push) Skipped
Linux / latest (clang, no, printf-builtin) (push) Skipped
Linux / latest (coverage) (push) Skipped
Linux / latest (gcc, no, all) (push) Skipped
Linux / latest (gcc, no, printf-builtin) (push) Skipped
Linux / latest (gcc, yes, all) (push) Skipped
Linux / crypto (ubuntu-22.04, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-3) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-4) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-awslc) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-sys) (push) Skipped
Linux / older (gcc, ubuntu-22.04, all) (push) Skipped
Windows / native (i686, mingw32, win32) (push) Skipped
CIFuzz / fuzzing (address) (push) Skipped
Linux / crypto (ubuntu-latest, wolfssl) (push) Skipped
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-14 12:30:09 +07:00
Denozordec and Claude Sonnet 5.5
9109eb8460
android: an unattended service start (watchdog, pause end, FGS retry) no longer wipes the password saved with the profile; smoke-test notes
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-14 12:21:38 +07:00
Denozordec and Claude Sonnet 5.5
1ef8c983c7
android: keepalive/rekey alarms on elapsedRealtime with coalescing; BootReceiver re-arms pause and scenario alarms; scenarios survive a fresh process and run without network rules; watchdog-restored auto session parks again; NetworkManager tracks a network set; idle native engine goes dormant again; traffic history written every 5 min
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-14 11:48:27 +07:00
Denozordec and Claude Sonnet 5.5
072674d1a8
android: version 2.18.2 (167)
...
CodeQL / pre-check (push) Failing after 4s
CodeQL / analyze (python) (push) Skipped
CodeQL / analyze (ruby) (push) Skipped
FreeBSD / freebsd (14.4) (push) Skipped
Linux / pre-check (push) Failing after 4s
Linux / latest (apidoc) (push) Skipped
Linux / latest (clang, no, default) (push) Skipped
Linux / latest (clang, no-testable-ke) (push) Skipped
Linux / latest (clang, yes, default) (push) Skipped
Linux / latest (no-testable-ke) (push) Skipped
Linux / latest (yes, ld) (push) Skipped
Linux / crypto (ubuntu-latest, botan) (push) Skipped
Linux / older (gcc, ubuntu-22.04, nm) (push) Skipped
Linux / alpine (push) Skipped
macOS / pre-check (push) Failing after 4s
SonarCloud / pre-check (push) Failing after 4s
SonarCloud / sonarcloud (push) Skipped
Windows / pre-check (push) Failing after 3s
Windows / cross-compile (win64) (push) Skipped
Android / pre-check (push) Failing after 6s
CodeQL / analyze-cpp (push) Skipped
FreeBSD / pre-check (push) Failing after 4s
Linux / latest (clang, no-dbg) (push) Skipped
Linux / latest (clang, yes, all) (push) Skipped
Linux / latest (clang, yes, fuzzing) (push) Skipped
Linux / latest (dist) (push) Skipped
Linux / latest (gcc, no, default) (push) Skipped
Linux / latest (gcc, yes, default) (push) Skipped
Linux / latest (nm) (push) Skipped
Linux / latest (no-dbg) (push) Skipped
Linux / older (clang, ubuntu-22.04, all) (push) Skipped
macOS / macos (macos-14) (push) Skipped
macOS / macos (macos-latest) (push) Skipped
TKM / pre-check (push) Failing after 4s
Windows / cross-compile (win32) (push) Skipped
Windows / native (x86_64, mingw64, win64) (push) Skipped
Android / android (push) Skipped
CIFuzz / pre-check (push) Failing after 3s
CIFuzz / fuzzing (undefined) (push) Skipped
FreeBSD / freebsd (15.0) (push) Skipped
Linux / latest (clang, no, all) (push) Skipped
Linux / latest (clang, no, printf-builtin) (push) Skipped
Linux / latest (coverage) (push) Skipped
Linux / latest (gcc, no, all) (push) Skipped
Linux / latest (gcc, no, printf-builtin) (push) Skipped
Linux / latest (gcc, yes, all) (push) Skipped
Linux / crypto (ubuntu-22.04, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-3) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-4) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-awslc) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, wolfssl) (push) Skipped
Linux / older (gcc, ubuntu-22.04, all) (push) Skipped
Windows / native (i686, mingw32, win32) (push) Skipped
CIFuzz / fuzzing (address) (push) Skipped
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-14 09:42:48 +07:00
Denozordec and Claude Sonnet 5.5
228f9f6004
android: deleting or updating a profile no longer crashes when its data source was already closed
...
A profile keeps the VpnProfileSqlDataSource it was loaded from, and close() nulls its database, so insert/update/delete on that profile hit a NullPointerException and the profile stayed in place. The data source now reopens the database on demand.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-14 09:41:29 +07:00
Denozordec and Claude Sonnet 5.5
6756d2fca5
android: version 2.18.1 (166)
...
CodeQL / pre-check (push) Failing after 5s
CodeQL / analyze (python) (push) Skipped
CodeQL / analyze (ruby) (push) Skipped
FreeBSD / freebsd (14.4) (push) Skipped
Linux / pre-check (push) Failing after 4s
Linux / latest (apidoc) (push) Skipped
Linux / latest (clang, no, default) (push) Skipped
Linux / latest (clang, no-testable-ke) (push) Skipped
Linux / latest (clang, yes, default) (push) Skipped
Linux / latest (yes, ld) (push) Skipped
Linux / crypto (ubuntu-latest, botan) (push) Skipped
Linux / older (gcc, ubuntu-22.04, nm) (push) Skipped
Linux / alpine (push) Skipped
macOS / pre-check (push) Failing after 4s
SonarCloud / pre-check (push) Failing after 4s
SonarCloud / sonarcloud (push) Skipped
Windows / pre-check (push) Failing after 3s
Windows / cross-compile (win64) (push) Skipped
CodeQL / analyze-cpp (push) Skipped
FreeBSD / pre-check (push) Failing after 3s
Linux / latest (clang, no-dbg) (push) Skipped
Linux / latest (clang, yes, all) (push) Skipped
Linux / latest (clang, yes, fuzzing) (push) Skipped
Linux / latest (dist) (push) Skipped
Linux / latest (gcc, no, default) (push) Skipped
Linux / latest (gcc, yes, default) (push) Skipped
Linux / latest (nm) (push) Skipped
Linux / latest (no-dbg) (push) Skipped
Linux / latest (no-testable-ke) (push) Skipped
Linux / older (clang, ubuntu-22.04, all) (push) Skipped
macOS / macos (macos-14) (push) Skipped
macOS / macos (macos-latest) (push) Skipped
TKM / pre-check (push) Failing after 3s
Windows / cross-compile (win32) (push) Skipped
Windows / native (x86_64, mingw64, win64) (push) Skipped
Android / pre-check (push) Failing after 5s
Android / android (push) Skipped
CIFuzz / pre-check (push) Failing after 4s
CIFuzz / fuzzing (undefined) (push) Skipped
FreeBSD / freebsd (15.0) (push) Skipped
Linux / latest (clang, no, all) (push) Skipped
Linux / latest (clang, no, printf-builtin) (push) Skipped
Linux / latest (coverage) (push) Skipped
Linux / latest (gcc, no, all) (push) Skipped
Linux / latest (gcc, no, printf-builtin) (push) Skipped
Linux / latest (gcc, yes, all) (push) Skipped
Linux / crypto (ubuntu-22.04, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-3) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-4) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-awslc) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, wolfssl) (push) Skipped
Linux / older (gcc, ubuntu-22.04, all) (push) Skipped
Windows / native (i686, mingw32, win32) (push) Skipped
CIFuzz / fuzzing (address) (push) Skipped
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-14 01:52:12 +07:00
Denozordec and Claude Sonnet 5.5
5998c0fc46
android: Home view model no longer re-reads the Wi-Fi SSID on every signal-strength tick (state recomputed only when the transports change); energy plan: no shared network-callback hub, why
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-14 01:44:03 +07:00
Denozordec and Claude Sonnet 5.5
f5b15a0394
android: health check skips probes while inbound tunnel traffic proves liveness (adaptive mode, real probe at least every 5 min) and probes a single target with the screen off; unit tests; energy plan notes keepalive stays at 45 s
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-14 01:22:09 +07:00
Denozordec and Claude Sonnet 5.5
38e5fd84bb
android: less idle CPU work: TUN reader waits on poll+eventfd instead of a 1 s select; scenario app polling stops with the screen and slows down when idle; site DNS refresh waits for the screen; ServerActivity and rememberNow loops follow the lifecycle; energy plan
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-14 01:18:15 +07:00
Denozordec and Claude Opus 5.5
e0113e3413
android docs: the Final 2026 mockup (143 artboard sources and canvas.json) with an artboard-to-code map; app overview, code map, localization and release guide; AGENTS.md updated; old UI plan marked as archive
...
CodeQL / pre-check (push) Failing after 4s
CodeQL / analyze (python) (push) Skipped
CodeQL / analyze (ruby) (push) Skipped
FreeBSD / freebsd (14.4) (push) Skipped
Linux / pre-check (push) Failing after 4s
Linux / latest (apidoc) (push) Skipped
Linux / latest (clang, no, default) (push) Skipped
Linux / latest (clang, no-testable-ke) (push) Skipped
Linux / latest (clang, yes, default) (push) Skipped
Linux / latest (yes, ld) (push) Skipped
Linux / crypto (ubuntu-latest, botan) (push) Skipped
Linux / older (gcc, ubuntu-22.04, nm) (push) Skipped
Linux / alpine (push) Skipped
macOS / pre-check (push) Failing after 4s
SonarCloud / pre-check (push) Failing after 4s
SonarCloud / sonarcloud (push) Skipped
Windows / pre-check (push) Failing after 4s
Windows / cross-compile (win64) (push) Skipped
CodeQL / analyze-cpp (push) Skipped
FreeBSD / pre-check (push) Failing after 4s
Linux / latest (clang, no-dbg) (push) Skipped
Linux / latest (clang, yes, all) (push) Skipped
Linux / latest (clang, yes, fuzzing) (push) Skipped
Linux / latest (dist) (push) Skipped
Linux / latest (gcc, no, default) (push) Skipped
Linux / latest (gcc, yes, default) (push) Skipped
Linux / latest (nm) (push) Skipped
Linux / latest (no-dbg) (push) Skipped
Linux / latest (no-testable-ke) (push) Skipped
Linux / older (clang, ubuntu-22.04, all) (push) Skipped
macOS / macos (macos-14) (push) Skipped
macOS / macos (macos-latest) (push) Skipped
TKM / pre-check (push) Failing after 4s
Windows / cross-compile (win32) (push) Skipped
Windows / native (x86_64, mingw64, win64) (push) Skipped
Android / pre-check (push) Failing after 6s
Android / android (push) Skipped
CIFuzz / pre-check (push) Failing after 4s
CIFuzz / fuzzing (undefined) (push) Skipped
FreeBSD / freebsd (15.0) (push) Skipped
Linux / latest (clang, no, all) (push) Skipped
Linux / latest (clang, no, printf-builtin) (push) Skipped
Linux / latest (coverage) (push) Skipped
Linux / latest (gcc, no, all) (push) Skipped
Linux / latest (gcc, no, printf-builtin) (push) Skipped
Linux / latest (gcc, yes, all) (push) Skipped
Linux / crypto (ubuntu-22.04, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-3) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-4) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-awslc) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-sys) (push) Skipped
Linux / older (gcc, ubuntu-22.04, all) (push) Skipped
Windows / native (i686, mingw32, win32) (push) Skipped
CIFuzz / fuzzing (address) (push) Skipped
Linux / crypto (ubuntu-latest, wolfssl) (push) Skipped
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-13 09:31:05 +07:00
Denozordec and Claude Opus 5.5
637b8061ed
android: version 2.18.0 (165)
...
CodeQL / pre-check (push) Failing after 4s
CodeQL / analyze (python) (push) Skipped
CodeQL / analyze (ruby) (push) Skipped
FreeBSD / freebsd (14.4) (push) Skipped
Linux / pre-check (push) Failing after 4s
Linux / latest (apidoc) (push) Skipped
Linux / latest (clang, no, default) (push) Skipped
Linux / latest (clang, no-testable-ke) (push) Skipped
Linux / latest (clang, yes, default) (push) Skipped
Linux / latest (yes, ld) (push) Skipped
Linux / crypto (ubuntu-latest, botan) (push) Skipped
Linux / older (gcc, ubuntu-22.04, nm) (push) Skipped
Linux / alpine (push) Skipped
macOS / pre-check (push) Failing after 3s
SonarCloud / pre-check (push) Failing after 4s
SonarCloud / sonarcloud (push) Skipped
Windows / pre-check (push) Failing after 4s
Windows / cross-compile (win64) (push) Skipped
CodeQL / analyze-cpp (push) Skipped
FreeBSD / pre-check (push) Failing after 3s
Linux / latest (clang, no-dbg) (push) Skipped
Linux / latest (clang, yes, all) (push) Skipped
Linux / latest (clang, yes, fuzzing) (push) Skipped
Linux / latest (dist) (push) Skipped
Linux / latest (gcc, no, default) (push) Skipped
Linux / latest (gcc, yes, default) (push) Skipped
Linux / latest (nm) (push) Skipped
Linux / latest (no-dbg) (push) Skipped
Linux / latest (no-testable-ke) (push) Skipped
Linux / older (clang, ubuntu-22.04, all) (push) Skipped
macOS / macos (macos-14) (push) Skipped
macOS / macos (macos-latest) (push) Skipped
TKM / pre-check (push) Failing after 3s
Windows / cross-compile (win32) (push) Skipped
Windows / native (x86_64, mingw64, win64) (push) Skipped
Android / pre-check (push) Failing after 6s
Android / android (push) Skipped
CIFuzz / pre-check (push) Failing after 3s
CIFuzz / fuzzing (undefined) (push) Skipped
FreeBSD / freebsd (15.0) (push) Skipped
Linux / latest (clang, no, all) (push) Skipped
Linux / latest (clang, no, printf-builtin) (push) Skipped
Linux / latest (coverage) (push) Skipped
Linux / latest (gcc, no, all) (push) Skipped
Linux / latest (gcc, no, printf-builtin) (push) Skipped
Linux / latest (gcc, yes, all) (push) Skipped
Linux / crypto (ubuntu-22.04, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-3) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-4) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-awslc) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, wolfssl) (push) Skipped
Linux / older (gcc, ubuntu-22.04, all) (push) Skipped
Windows / native (i686, mingw32, win32) (push) Skipped
CIFuzz / fuzzing (address) (push) Skipped
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-13 00:31:57 +07:00
Denozordec and Claude Opus 5.5
29095e087f
android: de, pl, uk, zh-CN and zh-TW translations of all new strings and plurals; old English leftovers in pl/uk/zh-TW translated; short German and Ukrainian tab labels on one line; trusted-network hint centred; German keeps noun capitals in mid-sentence labels
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 22:29:05 +07:00
Denozordec and Claude Opus 5.5
e3e6d51f6f
android: no unattended start of a profile without a saved password (watchdog, network rules, scenarios, reserve, bridge): an event that opens the server instead; «password missing» ends the watchdog expectation; resume and restore keep a typed password; warning on the server page
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 22:01:41 +07:00
Denozordec and Claude Opus 5.5
df1575fe27
android: one order for the network rules and the scenarios (top wins), hand actions beat a running scenario until it ends
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 21:35:17 +07:00
Denozordec and Claude Opus 5.5
a39993075e
android: the rest of the UI in the Final 2026 style: setting rows as on the sub pages, kit colours and type everywhere, server picker labels, shortcut picker and remediation screens; the rules server moves to Scenarios, the old Trusted networks screen goes
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 19:51:18 +07:00
Denozordec and Claude Opus 5.5
9ed278b440
android: mockup line icons everywhere, mockup dialog buttons, server picker sheet as on F_Servers; drop the unused old Home and routing parts
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 19:33:42 +07:00
Denozordec and Claude Opus 5.5
16d4c72920
android: bridge question back in Help
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 16:11:51 +07:00
Denozordec and Claude Opus 5.5
1e32410fca
android: system notifications as in the Final 2026 mockup: connecting with Stop, answers in suggestion pushes, Update / What is new, weekly summary
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 16:09:51 +07:00
Denozordec and Claude Opus 5.5
8880601ef6
android: DNS and ads as in the Final 2026 mockup: filtering resolvers (AdGuard, Cloudflare 1.1.1.2), own DNS, applied to the tunnel
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 16:04:01 +07:00
Denozordec and Claude Opus 5.5
dcf8ace6e1
android: Home scenario hints as in the Final 2026 mockup (trusted network pill, rule suggestion), profile update from the error and expiry cards, a stop button on errors
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 15:58:57 +07:00
Denozordec and Claude Opus 5.5
1a6fb85259
android: scenarios as in the Final 2026 mockup: network rules with own switches, user scenarios (Wi-Fi, mobile, app, time, roaming, whitelists) with an engine, app picker
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 15:47:53 +07:00
Denozordec and Claude Opus 5.5
5ca60d7066
android: resilience of F_Profile at work: backup ports, reserve server, bridge while whitelists are on
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 15:33:36 +07:00
Denozordec and Claude Opus 5.5
e7b801d584
android: server page as in the Final 2026 mockup; profile source, link updates with a diff sheet and a daily check, per-profile IKE fragmentation
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 15:22:53 +07:00
Denozordec and Claude Opus 5.5
638c58f0e4
android: daily traffic history and the statistics screen as in the Final 2026 mockup; today's traffic on Home and the widget
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 15:08:13 +07:00
Denozordec and Claude Opus 5.5
92627da459
android: remove the pre-mockup Home parts (hero, banners, availability card, traffic tiles, glow)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 14:47:33 +07:00
Denozordec and Claude Opus 5.5
15ad5c1151
android: install-permission sheet before updating as in the Final 2026 mockup
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 14:42:18 +07:00
Denozordec and Claude Opus 5.5
92e2f4f069
android: connection steps on Home as in the Final 2026 mockup, read from the daemon log
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 14:39:26 +07:00
Denozordec and Claude Opus 5.5
a08c193a90
android: hint behind the system VPN consent window as in the Final 2026 mockup
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 14:36:09 +07:00
Denozordec and Claude Opus 5.5
8fbebed140
android: battery saving instructions screen as in the Final 2026 mockup
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 11:07:20 +07:00
Denozordec and Claude Opus 5.5
9c96c36fc6
android: all dialogs in the Final 2026 look (28dp card, 22/800 title, 50% scrim), login fields as form fields
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 11:01:25 +07:00
Denozordec and Claude Opus 5.5
ffa38d5f28
android: certificate expiry card on Home as in the Final 2026 mockup
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 10:55:39 +07:00
Denozordec and Claude Opus 5.5
e465797b5f
android: certificates screen as in the Final 2026 mockup (from profiles, added, system; expiry colors)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 10:51:13 +07:00
Denozordec and Claude Opus 5.5
b4a311c84f
android: notification settings as in the Final 2026 mockup (problems, new apps, updates)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 10:47:24 +07:00
Denozordec and Claude Opus 5.5
739068ccb9
android: help screen as in the Final 2026 mockup; log opens directly from settings
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 10:43:54 +07:00
Denozordec and Claude Opus 5.5
8cd704ed08
android: log screen as in the Final 2026 mockup
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 10:35:42 +07:00
Denozordec and Claude Opus 5.5
eb5a89623b
android: server delete confirmation as in the Final 2026 mockup
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 10:31:32 +07:00
Denozordec and Claude Opus 5.5
f193661e68
android: quick settings tile states and widget sizes as in the Final 2026 mockup
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 10:25:38 +07:00
Denozordec and Claude Opus 5.5
53623ebb4a
android: home screen widget in three sizes as in the Final 2026 mockup
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 10:18:47 +07:00
Denozordec and Claude Opus 5.5
db6c806d58
android: VPN notification as in the Final 2026 shade: protected title, pause and change actions
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 10:12:41 +07:00
Denozordec and Claude Opus 5.5
6652970925
android: first-run onboarding and permissions screen as in the Final 2026 mockup
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 10:08:57 +07:00
Denozordec and Claude Opus 5.5
dc8f5a75e1
android: appearance, kill switch and update pages as in the Final 2026 mockup
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 10:04:12 +07:00
Denozordec and Claude Opus 5.5
fecef1135c
android: import preview/error sheet and profile form as in the Final 2026 mockup
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 10:00:09 +07:00
Denozordec and Claude Opus 5.5
200697216d
android: add-server sheet with QR scan and link, share-by-QR screen (Final 2026)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 09:49:51 +07:00
Denozordec and Claude Opus 5.5
434e5bad4e
android: Servers, Settings and Apps direct screens as in the Final 2026 mockup
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 09:43:13 +07:00
Denozordec and Claude Opus 5.5
4ff5ed11bb
android: routing phase 3 and the Final 2026 design system (WIP)
...
- Routing: site and direct-address rules (sites resolved to addresses,
refreshed on connect and every 30 min), package patterns can be
switched off; unified Rules screen with add sheet and empty state;
"How traffic goes" for a site, IP or app with reasons, reachability and
one-tap rules; Recent apps (usage access) with failing apps; new-app
"go direct?" suggestions in Events.
- Diagnostics screen (all-in-one check), "Fastest" server, pause until
morning / until the network changes.
- Design system of the mockup: Manrope font, mockup palette for light and
dark, ShxKit components (cards, rows, switch, buttons, chips, tabs,
fields, sheets), mockup line icons; Home, nav bar, Routing, Rules,
Recent, Events, Diagnostics and route check rebuilt on it; shared
components restyled so the remaining screens pick up the look.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 22:46:27 +07:00
Denozordec and Claude Opus 5.5
60252437ac
android: home phase 2 - events inbox and problem notifications
...
- EventLog keeps what the app noticed and did by itself for 30 days on the
device (events.json); repeats of the same event within 30 minutes are
merged (x3), problems that go away are marked resolved.
- Recorded: connection errors and recovery, carrier whitelists on/off,
health-check reconnects, auto-connect starting/parking the tunnel, the
end of a pause, available updates.
- Problems are pushed on a new "Connection problems" channel, but only
while the app is in the background (Home shows them already).
- «Events» screen (InboxActivity): filters (all, need attention,
connection, routes, app), grouped by day, one action per event; opened
from a bell with an unread badge in the Home header.
- Amber warning colours in the status palette, used for whitelists, no
network and an unresponsive server.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 21:54:01 +07:00
Denozordec and Claude Opus 5.5
75849beb90
android: home phase 1 - header, quick actions, pause, problem cards
...
- Connect tab gets the Shield-S header and, while connected, three quick
actions: pause, switch server, "site not loading?" (route check).
- Pause VPN for 5/15/30/60 min (PauseManager + PauseReceiver): disconnects
like a manual stop and reconnects on an alarm; auto-connect waits, any
connect request cancels the pause. Home shows a countdown, "turn on now"
and "+15 minutes".
- Connection errors become plain-language cards with one fixing action:
no internet (tracked via a non-VPN network callback), server not
responding (with the retry countdown and "other server"), server not
found, sign-in rejected, server not verified, generic failure.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 21:36:34 +07:00
Denozordec and Claude Opus 5.5
8f21e16277
android: 2.17.1 - Shield-S launcher, shortcut and status bar icon
...
CodeQL / pre-check (push) Failing after 4s
CodeQL / analyze (python) (push) Skipped
CodeQL / analyze (ruby) (push) Skipped
FreeBSD / freebsd (14.4) (push) Skipped
Linux / pre-check (push) Failing after 4s
Linux / latest (apidoc) (push) Skipped
Linux / latest (clang, no, default) (push) Skipped
Linux / latest (clang, no-testable-ke) (push) Skipped
Linux / latest (clang, yes, default) (push) Skipped
Linux / latest (yes, ld) (push) Skipped
Linux / crypto (ubuntu-latest, botan) (push) Skipped
Linux / older (gcc, ubuntu-22.04, nm) (push) Skipped
Linux / alpine (push) Skipped
macOS / pre-check (push) Failing after 3s
SonarCloud / pre-check (push) Failing after 4s
SonarCloud / sonarcloud (push) Skipped
Windows / pre-check (push) Failing after 4s
Windows / cross-compile (win64) (push) Skipped
CodeQL / analyze-cpp (push) Skipped
FreeBSD / pre-check (push) Failing after 3s
Linux / latest (clang, no-dbg) (push) Skipped
Linux / latest (clang, yes, all) (push) Skipped
Linux / latest (clang, yes, fuzzing) (push) Skipped
Linux / latest (dist) (push) Skipped
Linux / latest (gcc, no, default) (push) Skipped
Linux / latest (gcc, yes, default) (push) Skipped
Linux / latest (nm) (push) Skipped
Linux / latest (no-dbg) (push) Skipped
Linux / latest (no-testable-ke) (push) Skipped
Linux / older (clang, ubuntu-22.04, all) (push) Skipped
macOS / macos (macos-14) (push) Skipped
macOS / macos (macos-latest) (push) Skipped
TKM / pre-check (push) Failing after 3s
Windows / cross-compile (win32) (push) Skipped
Windows / native (x86_64, mingw64, win64) (push) Skipped
Android / pre-check (push) Failing after 6s
Android / android (push) Skipped
CIFuzz / pre-check (push) Failing after 3s
CIFuzz / fuzzing (undefined) (push) Skipped
FreeBSD / freebsd (15.0) (push) Skipped
Linux / latest (clang, no, all) (push) Skipped
Linux / latest (clang, no, printf-builtin) (push) Skipped
Linux / latest (coverage) (push) Skipped
Linux / latest (gcc, no, all) (push) Skipped
Linux / latest (gcc, no, printf-builtin) (push) Skipped
Linux / latest (gcc, yes, all) (push) Skipped
Linux / crypto (ubuntu-22.04, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-3) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-4) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-awslc) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-sys) (push) Skipped
Linux / older (gcc, ubuntu-22.04, all) (push) Skipped
Windows / native (i686, mingw32, win32) (push) Skipped
CIFuzz / fuzzing (address) (push) Skipped
Linux / crypto (ubuntu-latest, wolfssl) (push) Skipped
- adaptive launcher icon as vectors: purple background, white shield with
the S cut out (even-odd), plus a monochrome layer for Android 13+ themed
icons; profile shortcuts use the same icon
- vector legacy icon for Android 7.x in mipmap-anydpi, old strongSwan PNGs
removed
- connected status bar icon is the Shield-S silhouette; connecting,
warning and disconnected states keep their outlined shields
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 13:17:24 +07:00
Denozordec and Claude Opus 5.5
12a95d1e89
android: 2.17.0 - stability and battery fixes
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:28:46 +07:00
Denozordec and Claude Opus 5.5
66688031cd
android: small cleanups - DB close in finally, single profile reload
...
- HomeViewModel closes the profile database in finally blocks and relies
on the VPN_PROFILES_CHANGED broadcast instead of reloading twice
- READ_EXTERNAL_STORAGE only up to API 32; drop a dead settings flag
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:20:28 +07:00
Denozordec and Claude Opus 5.5
7abac87140
android: run DNS/route diagnostics on their own executor
...
They can block for 10-30 s on a degraded network and delayed any profile
load (connect, retry, profile switch) queued behind them.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:20:28 +07:00
Denozordec and Claude Opus 5.5
1b4fdc83d8
android: tile/widget/log fixes
...
- tile: query the configured profile once per listening session instead
of on every state notification
- widget: DISCONNECTING is shown as such, with a Disconnect button
- log viewer: bounded to 5000 lines, tails only while visible, picks up
a log created or restarted after opening, and no longer yanks the user
back to the bottom while they scroll up
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:19:33 +07:00
Denozordec and Claude Opus 5.5
ce80c36be1
android: routing - package scans off the main thread, no needless reconnects
...
- computeExcludedPackages() (full PackageManager scan) runs on Default,
not Main.immediate, on config changes and package add/remove
- updateConfig() ignores no-op transforms and reconnects when routing is
switched off too (direct apps kept bypassing the tunnel until then)
- config is volatile and read after its version, so an old config can no
longer be cached under a new version
- Direct apps loads the app list once per entry, without GET_META_DATA
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:19:33 +07:00
Denozordec and Claude Opus 5.5
07fb02790c
android: CharonVpnService - handover race, cheaper network/notification updates
...
- underlying-network bookkeeping is guarded by one lock and re-applied
after establish(), so a handover racing with it no longer leaves the
tunnel attributed to a lost network
- use the capabilities passed to onCapabilitiesChanged (no IPC per
signal-strength update); mCurrentProfile is volatile
- countdown-only notification re-posts are limited to one per 5 s
- the connected chronometer keeps its start time across re-posts
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:17:36 +07:00
Denozordec and Claude Opus 5.5
b0f353af90
android: whitelist - working recheck backoff, fewer probe rounds
...
- scheduled rechecks are forced: the 15/30 s steps were below FRESH_MS,
so the unforced recheck returned early and the backoff chain died
- signal-strength-only capability changes are no longer network events
(each one reset the backoff and launched a check)
- tunnel state transitions force a new round at most every 15 s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:17:36 +07:00
Denozordec and Claude Opus 5.5
514b15b1ca
android: home/routing UI - poll only while visible, no idle animation
...
- traffic (1 s) and probe (10 s) loops run only while the Home screen is
shown and the VPN is connected; no 1 s idle tick otherwise
- the refresh button no longer runs a second exit-IP trace
- the glow pulse is not composed at all while disconnected or with
animations off (it redrew a transparent circle every frame)
- RTT sparkline appends each probe result once (it duplicated stale ones)
- Routing dead-host poll is lifecycle-aware
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:15:10 +07:00
Denozordec and Claude Opus 5.5
5f8b813eb4
android: updates - honour the charging constraint, real metered check
...
- drop the in-process 12 h loop: the VPN keeps the process alive, so it
checked and pre-downloaded on battery, defeating the worker constraint
- the worker now waits for the check and a silent download it starts
- metered is judged by the physical network: the VPN reports itself
unmetered, so pre-downloads ran over cellular while connected
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:15:10 +07:00
Denozordec and Claude Opus 5.5
6668dcfb56
android: health check - ping the server only when it can matter
...
- WITH_TUNNEL mode pings the server only once the external targets fail
(no ping fork + DNS lookup outside the tunnel on every healthy cycle;
an ICMP-blocking server no longer forces fast polls)
- initial battery-low state from the sticky ACTION_BATTERY_CHANGED
- non-state notifications no longer restart a pending cycle
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:12:22 +07:00
Denozordec and Claude Opus 5.5
1eb1dfe317
android: RU list - no reconnect for an unchanged list, failure backoff
...
- same SHA-256 as the applied list: only bump the timestamp, no parse,
save or tunnel reconnect (it tore a healthy tunnel down daily)
- a failed download is not retried on every cold start (3 h backoff)
- the saved list is read and parsed off the main thread at startup
- switching the split off in system mode reconnects to drop the routes
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:12:22 +07:00
Denozordec and Claude Opus 5.5
cf89cec20e
android: watchdog backs off whenever a live process owns recovery
...
Retrying, connecting or whitelist-blocked sessions kept the 60 s alarm and
the 10 min Doze wakeup for hours although a live process makes the alarm
useless. They now share the connected backoff (5 min / 60 min).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:12:22 +07:00
Denozordec and Claude Opus 5.5
24e536b9b9
android: updates - no stuck Downloading state, thread-safe singleton
...
After a silent pre-download the state stayed Downloading, so tapping the
"update ready" notification did nothing. It now returns to Available;
an install request without a known update (e.g. after a process restart)
re-checks and installs when found.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:09:40 +07:00
Denozordec and Claude Opus 5.5
e6c893219c
android: DiagLog thread-safe timestamps; auto-connect survives stop/start
...
- SimpleDateFormat is now used under the lock; rotation counts bytes
- AutoConnectManager.stop() clears pendingEvaluate, whose reset runnable
it removes, so later connects are not silently swallowed
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:09:40 +07:00
Denozordec and Claude Opus 5.5
01c398f2f7
android: tile/control activity - no bind leaks, no callbacks after destroy
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:09:40 +07:00
Denozordec and Claude Opus 5.5
f2e4ffe860
android: VpnStateService - single retry countdown, isolated listeners
...
- remove pending RETRY_MSG on reset/set: a Retry tap during a backoff
started a second countdown chain (double-speed ticks, two reconnects)
- notify listeners over a copy with per-listener error handling
- disconnect() tolerates the VPN service not running
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:09:40 +07:00
Denozordec and Claude Opus 5.5
358dcb94b2
android: CharonVpnService - safer foreground and teardown handling
...
- DISCONNECT (plain startService) no longer promotes to the foreground,
and startForeground() refusals on Android 12+ are logged, not fatal
- drop the placeholder notification when nothing was running, so the
service does not stay in the foreground with a stale Disabled state
- onDestroy: shutdownNow/await the profile executor before closing the
database; profile loads catch errors instead of killing the process
- unbind by bind result, not by mService (binding leaked if destroyed
before onServiceConnected)
- the connection thread's crash guard can no longer throw itself
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:09:39 +07:00
Denozordec and Claude Opus 5.5
2b40eebf5b
android: close TCP probe sockets right after connecting
...
tcpPing never closed its socket: every health/whitelist/home probe leaked
an fd until GC and the peer's later FIN/RST woke the radio again.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:09:39 +07:00
Denozordec and Claude Opus 5.5
793ca1b410
android: native - hold charon_mutex while reading routing engine stats
...
getRoutingStats/getDeadDirectTargets are polled from the UI once a second;
a concurrent disconnect frees the engine under charon_mutex, so reading it
without the lock was a use-after-free.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 09:05:09 +07:00
Denozordec and Claude Opus 5.5
5e38fc2f76
android: keep the BETA badge on one line on narrow mode cards
...
CodeQL / pre-check (push) Failing after 4s
CodeQL / analyze (python) (push) Skipped
CodeQL / analyze (ruby) (push) Skipped
FreeBSD / freebsd (14.4) (push) Skipped
Linux / pre-check (push) Failing after 4s
Linux / latest (apidoc) (push) Skipped
Linux / latest (clang, no, default) (push) Skipped
Linux / latest (clang, no-testable-ke) (push) Skipped
Linux / latest (clang, yes, default) (push) Skipped
Linux / latest (yes, ld) (push) Skipped
Linux / crypto (ubuntu-latest, botan) (push) Skipped
Linux / older (gcc, ubuntu-22.04, nm) (push) Skipped
Linux / alpine (push) Skipped
macOS / pre-check (push) Failing after 4s
SonarCloud / pre-check (push) Failing after 3s
SonarCloud / sonarcloud (push) Skipped
Windows / pre-check (push) Failing after 3s
Windows / cross-compile (win64) (push) Skipped
Android / pre-check (push) Failing after 5s
CodeQL / analyze-cpp (push) Skipped
FreeBSD / pre-check (push) Failing after 3s
Linux / latest (clang, no-dbg) (push) Skipped
Linux / latest (clang, yes, all) (push) Skipped
Linux / latest (clang, yes, fuzzing) (push) Skipped
Linux / latest (dist) (push) Skipped
Linux / latest (gcc, no, default) (push) Skipped
Linux / latest (gcc, yes, default) (push) Skipped
Linux / latest (nm) (push) Skipped
Linux / latest (no-dbg) (push) Skipped
Linux / latest (no-testable-ke) (push) Skipped
Linux / older (clang, ubuntu-22.04, all) (push) Skipped
macOS / macos (macos-14) (push) Skipped
macOS / macos (macos-latest) (push) Skipped
TKM / pre-check (push) Failing after 4s
Windows / cross-compile (win32) (push) Skipped
Windows / native (x86_64, mingw64, win64) (push) Skipped
Android / android (push) Skipped
CIFuzz / pre-check (push) Failing after 4s
CIFuzz / fuzzing (undefined) (push) Skipped
FreeBSD / freebsd (15.0) (push) Skipped
Linux / latest (clang, no, all) (push) Skipped
Linux / latest (clang, no, printf-builtin) (push) Skipped
Linux / latest (coverage) (push) Skipped
Linux / latest (gcc, no, all) (push) Skipped
Linux / latest (gcc, no, printf-builtin) (push) Skipped
Linux / latest (gcc, yes, all) (push) Skipped
Linux / crypto (ubuntu-22.04, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-3) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-4) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-awslc) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, wolfssl) (push) Skipped
Linux / older (gcc, ubuntu-22.04, all) (push) Skipped
Windows / native (i686, mingw32, win32) (push) Skipped
CIFuzz / fuzzing (address) (push) Skipped
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 01:55:19 +07:00
Denozordec and Claude Opus 5.5
c23d4dad8b
android: 2.16.0 - Routing 2.0: one direct-apps list, inline RU mode, no per-profile app picker
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 01:48:33 +07:00
Denozordec and Claude Opus 5.5
e2ce8420a7
android: remove per-profile app picker, rule-set UI and SelectedApplicationsActivity
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 01:48:00 +07:00
Denozordec and Claude Opus 5.5
488c0aa210
android: Routing tab redesign - RU sites card, direct apps screen, advanced pages
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 01:47:59 +07:00
Denozordec and Claude Opus 5.5
48f1ed7fb8
android: routing 2.0 strings (en/ru/de), drop obsolete rule-set strings
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 01:47:59 +07:00
Denozordec and Claude Opus 5.5
389712bba3
android: global direct-apps routing model, migration, single-source CharonVpnService excludes
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 01:47:58 +07:00
Denozordec and Claude Opus 5.5
584004a25c
android: 2.15.1 - fix startup crash: R8 stripped WorkDatabase_Impl constructor
...
CodeQL / pre-check (push) Failing after 4s
CodeQL / analyze (python) (push) Skipped
CodeQL / analyze (ruby) (push) Skipped
FreeBSD / freebsd (14.4) (push) Skipped
Linux / pre-check (push) Failing after 4s
Linux / latest (apidoc) (push) Skipped
Linux / latest (clang, no, default) (push) Skipped
Linux / latest (clang, no-testable-ke) (push) Skipped
Linux / latest (clang, yes, default) (push) Skipped
Linux / latest (yes, ld) (push) Skipped
Linux / crypto (ubuntu-latest, botan) (push) Skipped
Linux / older (gcc, ubuntu-22.04, nm) (push) Skipped
Linux / alpine (push) Skipped
macOS / pre-check (push) Failing after 3s
SonarCloud / pre-check (push) Failing after 4s
SonarCloud / sonarcloud (push) Skipped
Windows / pre-check (push) Failing after 4s
Windows / cross-compile (win64) (push) Skipped
Android / pre-check (push) Failing after 4s
CodeQL / analyze-cpp (push) Skipped
FreeBSD / pre-check (push) Failing after 3s
Linux / latest (clang, no-dbg) (push) Skipped
Linux / latest (clang, yes, all) (push) Skipped
Linux / latest (clang, yes, fuzzing) (push) Skipped
Linux / latest (dist) (push) Skipped
Linux / latest (gcc, no, default) (push) Skipped
Linux / latest (gcc, yes, default) (push) Skipped
Linux / latest (nm) (push) Skipped
Linux / latest (no-dbg) (push) Skipped
Linux / latest (no-testable-ke) (push) Skipped
Linux / older (clang, ubuntu-22.04, all) (push) Skipped
macOS / macos (macos-14) (push) Skipped
macOS / macos (macos-latest) (push) Skipped
TKM / pre-check (push) Failing after 3s
Windows / cross-compile (win32) (push) Skipped
Windows / native (x86_64, mingw64, win64) (push) Skipped
Android / android (push) Skipped
CIFuzz / pre-check (push) Failing after 3s
CIFuzz / fuzzing (undefined) (push) Skipped
FreeBSD / freebsd (15.0) (push) Skipped
Linux / latest (clang, no, all) (push) Skipped
Linux / latest (clang, no, printf-builtin) (push) Skipped
Linux / latest (coverage) (push) Skipped
Linux / latest (gcc, no, all) (push) Skipped
Linux / latest (gcc, no, printf-builtin) (push) Skipped
Linux / latest (gcc, yes, all) (push) Skipped
Linux / crypto (ubuntu-22.04, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-3) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-4) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-awslc) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, wolfssl) (push) Skipped
Linux / older (gcc, ubuntu-22.04, all) (push) Skipped
Windows / native (i686, mingw32, win32) (push) Skipped
CIFuzz / fuzzing (address) (push) Skipped
AGP 9 strict full-mode keep rules no longer keep no-arg constructors of
-keep'd classes, so WorkManager's reflectively created Room database
lost its constructor and the app crashed in InitializationProvider.
Restore AGP 8 keep-rule semantics and keep RoomDatabase constructors.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 00:50:59 +07:00
Denozordec and Claude Opus 5.5
6a8528fc98
android: 2.15.0 - Material 3 Expressive redesign
...
CodeQL / pre-check (push) Failing after 3s
CodeQL / analyze (python) (push) Skipped
CodeQL / analyze (ruby) (push) Skipped
FreeBSD / freebsd (14.4) (push) Skipped
Linux / pre-check (push) Failing after 3s
Linux / latest (apidoc) (push) Skipped
Linux / latest (clang, no, default) (push) Skipped
Linux / latest (clang, no-testable-ke) (push) Skipped
Linux / latest (clang, yes, default) (push) Skipped
Linux / latest (yes, ld) (push) Skipped
Linux / crypto (ubuntu-latest, botan) (push) Skipped
Linux / older (gcc, ubuntu-22.04, nm) (push) Skipped
Linux / alpine (push) Skipped
macOS / pre-check (push) Failing after 4s
SonarCloud / pre-check (push) Failing after 3s
SonarCloud / sonarcloud (push) Skipped
Windows / pre-check (push) Failing after 3s
Windows / cross-compile (win64) (push) Skipped
CodeQL / analyze-cpp (push) Skipped
FreeBSD / pre-check (push) Failing after 4s
Linux / latest (clang, no-dbg) (push) Skipped
Linux / latest (clang, yes, all) (push) Skipped
Linux / latest (clang, yes, fuzzing) (push) Skipped
Linux / latest (dist) (push) Skipped
Linux / latest (gcc, no, default) (push) Skipped
Linux / latest (gcc, yes, default) (push) Skipped
Linux / latest (nm) (push) Skipped
Linux / latest (no-dbg) (push) Skipped
Linux / latest (no-testable-ke) (push) Skipped
Linux / older (clang, ubuntu-22.04, all) (push) Skipped
macOS / macos (macos-14) (push) Skipped
macOS / macos (macos-latest) (push) Skipped
TKM / pre-check (push) Failing after 3s
Windows / cross-compile (win32) (push) Skipped
Windows / native (x86_64, mingw64, win64) (push) Skipped
Android / pre-check (push) Failing after 6s
Android / android (push) Skipped
CIFuzz / pre-check (push) Failing after 4s
CIFuzz / fuzzing (undefined) (push) Skipped
FreeBSD / freebsd (15.0) (push) Skipped
Linux / latest (clang, no, all) (push) Skipped
Linux / latest (clang, no, printf-builtin) (push) Skipped
Linux / latest (coverage) (push) Skipped
Linux / latest (gcc, no, all) (push) Skipped
Linux / latest (gcc, no, printf-builtin) (push) Skipped
Linux / latest (gcc, yes, all) (push) Skipped
Linux / crypto (ubuntu-22.04, openssl-sys) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-3) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-4) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-awslc) (push) Skipped
Linux / crypto (ubuntu-latest, openssl-sys) (push) Skipped
Linux / older (gcc, ubuntu-22.04, all) (push) Skipped
Windows / native (i686, mingw32, win32) (push) Skipped
CIFuzz / fuzzing (address) (push) Skipped
Linux / crypto (ubuntu-latest, wolfssl) (push) Skipped
Toolchain AGP 9.1 / Gradle 9.3 / Kotlin 2.2 / compileSdk 37, minSdk 24,
material3 1.5.0-beta01. Expressive theme and motion, redesigned Connect,
Profiles, Routing and Settings screens, adaptive layouts, home-screen
widget, Live Update download progress, predictive back.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 00:38:00 +07:00
Denozordec
8ef7c0a53b
docs: ui plan status - deferred items completed
2026-10-10 00:33:20 +07:00
Denozordec
dc6e1e32fb
android: predictive back scale for settings pages and remediation detail
2026-10-10 00:33:20 +07:00
Denozordec
2681233449
android: route check results as cards with status pills
2026-10-10 00:32:24 +07:00
Denozordec
7a7673119e
android: profile import as an Expressive bottom sheet in a transparent host
2026-10-10 00:32:00 +07:00
Denozordec
8deafeae8e
android: trusted networks - inline location explainer card
2026-10-10 00:31:32 +07:00
Denozordec
59a31d6a1d
android: app picker - hide system apps by default with a toggle
2026-10-10 00:30:41 +07:00
Denozordec
8bedf432e2
android: log screen - level filter chips, snackbar instead of toast
2026-10-10 00:30:27 +07:00
Denozordec
42cd361c58
android: QS tile - connectivity category, toggleable
2026-10-10 00:29:39 +07:00
Denozordec
87c3d73fbc
android: update download progress notification (ProgressStyle / Live Update on API 36+)
2026-10-10 00:29:30 +07:00
Denozordec
564b8aaa8d
android: profiles list-detail on expanded width with in-pane profile form
2026-10-10 00:28:47 +07:00
Denozordec
7cc6343ba1
android: build.gradle comment cleanup
2026-10-10 00:27:29 +07:00
Denozordec
c9048143cc
android: minSdk 24 (material3 1.5 requirement), drop overrideLibrary workaround
2026-10-10 00:27:24 +07:00
Denozordec
203a67ee86
android: a11y (headings, switch role), form snackbar, German strings, smoke tests, docs
2026-10-10 00:21:31 +07:00
Denozordec
3c7c121c7d
android: expanded width - two-column Connect, 640dp settings
2026-10-10 00:13:51 +07:00
Denozordec
0e5e28b4da
android: spacing tokens - migrate padding/spacing literals and ScreenPadding to ShxSpacing
2026-10-10 00:13:08 +07:00
Denozordec
22e4082825
android: home screen widget (Glance), tile subtitle with profile name
2026-10-10 00:13:07 +07:00
Denozordec
0c3ea75cac
android: settings as grouped pages (appearance, automation, security, updates, support), theme mode, snackbars instead of toasts
2026-10-10 00:09:45 +07:00
Denozordec
a451386e0a
android: split RoutingScreen into routing/{RoutingHero,RuleSetList,AdvancedRouting}
2026-10-10 00:09:44 +07:00
Denozordec
8bd65d535e
android: routing - advanced block (RU details, GeoIP, force prefixes), kill switch vs excluded apps note
2026-10-10 00:07:12 +07:00
Denozordec
c5585df135
android: profiles - swipe to delete with undo, search only for long lists
2026-10-10 00:06:05 +07:00
Denozordec and Claude Opus 5.5
385819caf0
android: redesigned Connect screen - morphing hero, profile chip + picker sheet, traffic tiles, one banner slot, collapsed availability
...
Split HomeScreen into home/{HeroConnect,TrafficTiles,AvailabilityCard,HomeBanners}.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 00:05:34 +07:00
Denozordec and Claude Opus 5.5
3f7bd94a69
android: expressive motion - fade-through tabs, back to Connect, LoadingIndicator, wavy progress, snackbar messages
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 00:01:17 +07:00