L×Box v2.4.1
Per-app trace — редизайн (§160). Вкладка App (детальный трейс по приложению) переехала с 4 саб-табов на тогл Live / Aggregated с общим фильтром и drill-down деталями по тапу — и тот же движок (TraceExplorer) теперь питает экран Stats → Live, так что оба места ведут себя одинаково. Попутно закрыт баг атрибуции: чужие приложения больше не протекают в сессию профайлера. Ядро без изменений — v1.13.13-lx.14.
Quick links:
🔧 Changed ·
🛠 Fixed ·
🔬 Verified ·
📲 Install ·
🇷🇺 На русском
🔧 Changed
| # | Было | Стало |
|---|---|---|
| §160 | App-трейс: 4 саб-таба Live / Domains / IPs / Connections, тапа в детали нет нигде | Тогл Live / Aggregated (SegmentedButton) + ось by Domain / by IP. Connections удалён (дубль Live), Domains+IPs слиты в AggregatedView. Общий фильтр сверху (поиск + чипы типа события) на оба режима + пауза Live
|
| §160 | Деталей соединения по тапу в App не было | Drill-down по тапу в обоих режимах: общий sheet события (traffic_event_detail_sheet) и sheet агрегата (свод + список соединений → событие). Поля host / IP / process внутри sheet кликабельны → в общий поиск
|
| §160 | Stats → Live и App-трейс — разные виджеты с дублирующейся логикой | Единый движок TraceExplorer (тогл/фильтр/детали/пауза); App и Live — тонкие обёртки над ним, каждая отвечает только за свой источник событий и шапку. App-строка Live: 3-строчный тайл + иконка приложения (образец Conns-row)
|
| §160 | Счётчик соединений в агрегате показывал суммарное число | Активные / всего (0/5 conns) — активные = max(0, open − close) по ключу
|
🛠 Fixed
| # | Что |
|---|---|
| §160 | Чужие приложения протекали в сессию профайлера. Атрибуция считалась на open (чужие отбрасывались), но tcpClose писался в сессию безусловно — отсюда verified-события от youtube/imo/gsf/heytap и пр. в сессии целевого приложения (по Debug API — 14/54 чужих tcpClose в сессии Telegram). Фикс: атрибуция фиксируется на open (_ConnSnapshot.inSession) и наследуется close'ом — чужие close уходят, target + unattributed остаются. Сессия / JSON / API / агрегаты / байты снова чистые
|
🔬 Verified
flutter analyze— No issues found.flutter test— 1196 passed (вкл. §160activeByKey+ open/close attribution symmetry, регрессия «non-target connection close also ignored»).- §160 — on-device подтверждено: Live → тап → детали; Aggregated by Domain/IP → свод + список соединений → событие; общий фильтр в обоих режимах; чистая атрибуция проверена по Debug API.
- Ядро без изменений —
v1.13.13-lx.14(форк sing-box-lx, fetch с SHA256-verify).
📲 Install
adb install -r LxBox-v2.4.1-arm64-v8a.apkБез uninstall! Поверх существующей установки. Настройки и подписки сохранятся.
🇷🇺 Кратко на русском
- App-трейс переделан (§160) — вместо четырёх вкладок (Live / Domains / IPs / Connections) теперь два режима: Live (живая лента событий, с паузой) и Aggregated (свод по доменам/IP, переключатель оси). Общий фильтр сверху работает в обоих. По тапу на любой строке открываются детали; внутри можно ткнуть домен/IP/процесс, чтобы кинуть его в поиск.
- Stats → Live теперь такой же — оба экрана используют один движок, ведут себя одинаково (детали, агрегат, пауза появились и в Stats → Live).
- Фикс «чужие приложения в статистике» — раньше в трейс выбранного приложения иногда попадали соединения посторонних приложений. Больше не попадают.
- Ядро без изменений —
v1.13.13-lx.14.
Предыдущий релиз: v2.4.0.