ZapretKVN-android/feature
Repository files (latest commit first)
Filename Latest commit message Latest commit date
loop-uh 83d5780de7 Связь не пропадает молча: детектор «подключено, но мёртво», история сессий
По диагностике 0.5.8 («связь пропала» на сервере tinl): статус оставался
«Подключено», а свидетельства сбоя стирало переподключение.

- StallDetector: uplink растёт, а downlink нет при открытых соединениях ≥15 с
  (3 окна по 5 с) или серия DNS-таймаутов (≥3 имён за 20 с) → одна проверка
  через текущий сервер (VpnLivenessProbe) → существующий failover; без замены —
  «Нет связи с сервером» на Главной («Перезапустить», «Сменить сервер») и в
  уведомлении. Тишина — не тревога; не чаще раза в 5 мин; только при горящем
  экране; без периодических запросов.
- Единый поток TrafficSample из CommandStatus (5 с при горящем экране).
- SessionHistory: последние 5 сессий в памяти — сервер, трафик, последний
  рост downlink, причина конца, до 24 ключевых событий; важные строки ядра
  собираются при любом экране; отчёт v9 (session_history, session_traffic),
  попыток 6; квоты лога вытесняют DEBUG раньше обрывов.
- Каждая причина перезапуска — свой триггер и запись в журнал.
- Ручной выбор сервера проверяет связь и откатывается на прежний при провале;
  ManualSelection*InstrumentedTest: выбор не перезапускает VPN.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 01:17:41 +03:00
..
home Связь не пропадает молча: детектор «подключено, но мёртво», история сессий 2026-10-16 01:17:41 +03:00
routing Модули: :core:model и :feature:{home,servers,routing,settings} 2026-10-14 22:37:48 +03:00
servers Незаметность: без ICMP-пинга, IP по кнопке, DNS «Android» через узел 2026-10-15 22:48:56 +03:00
settings Незаметность: без ICMP-пинга, IP по кнопке, DNS «Android» через узел 2026-10-15 22:48:56 +03:00