fix(traffic): показывать причину неполного опроса peers
This commit is contained in:
1 parent
d8f8d3c7a4
commit
c69d99ba80
19 files changed
+1367
-23
No files matched your search
@@ -1,6 +1,6 @@
|
||||
# UX/UI: протокол внешней приёмки 12.5
|
||||
|
||||
Актуальное продолжение 2026-10-12: завершён12.5.182 — атомарная проверка полного WireGuard peer-среза, без записи корректного префикса при ошибке/дубликатах. OwnSQL51/37534ms/backend build/source455+524/1040compiled/native2/browser2 passed. Backend ux-peer182 healthy, frontend ux-status181 без изменений; ownDB/role/container удалены. Следующий183 — явная диагностика optional peer endpoint failure и покрытие истории;12.5 открыта.
|
||||
Актуальное продолжение 2026-10-12: завершён12.5.183 — причина optional WireGuard peer failure сохраняется и показывается, подтверждённые interface rates не маскируются. OwnSQL53/37478ms/4E2E11.2s/types/build/ESLint/source455+524/1040compiled/API/UI passed. Both ux-warning183 healthy/running; ownDB/role/container удалены. Следующий184 — покрытие истории при пропусках/смене идентичности;12.5 открыта.
|
||||
|
||||
IPsec78: реальный PSK responder established, mode-config198.18.78.10 и online=true подтверждены API; точные собственные объекты удалены. Сертификатный/DN online, late failure и history restore остаются открытыми. [Отчёт](ux-ui/acceptance/ipsec-mode-config-2026-10-09.json), [журнал](ux-ui-progress.md).
|
||||
|
||||
@@ -696,7 +696,7 @@ flowchart LR
|
||||
|
||||
## 12.5.77 — основной блок IPsec (2026-10-09)
|
||||
|
||||
Актуальное продолжение 2026-10-12: завершён12.5.182 — атомарная проверка полного WireGuard peer-среза, без записи корректного префикса при ошибке/дубликатах. OwnSQL51/37534ms/backend build/source455+524/1040compiled/native2/browser2 passed. Backend ux-peer182 healthy, frontend ux-status181 без изменений; ownDB/role/container удалены. Следующий183 — явная диагностика optional peer endpoint failure и покрытие истории;12.5 открыта.
|
||||
Актуальное продолжение 2026-10-12: завершён12.5.183 — причина optional WireGuard peer failure сохраняется и показывается, подтверждённые interface rates не маскируются. OwnSQL53/37478ms/4E2E11.2s/types/build/ESLint/source455+524/1040compiled/API/UI passed. Both ux-warning183 healthy/running; ownDB/role/container удалены. Следующий184 — покрытие истории при пропусках/смене идентичности;12.5 открыта.
|
||||
|
||||
Подробный объём, протоколы, схема и ограничения: [12.5.77 в журнале](ux-ui-progress.md).
|
||||
|
||||
@@ -2133,3 +2133,24 @@ Backend TypeScript/build passed; [source455/524](ux-ui/acceptance/traffic-peer-s
|
||||
[Native read-only](ux-ui/acceptance/traffic-peer-native-2026-10-12.json) проверил ответы identity/interface/peers обоих CHR; оба доступны. Фактическое число peers сохранено в отчёте: пустой native список не выдан за приёмку активного туннеля. Положительные/некорректные peer случаи доказаны собственными fixtures; новые VPN объекты не создавались, этот блок исправляет collector parser. DB read-only, RouterOS config writes0/password changes0/messages0. [Production UI1440/320](ux-ui/acceptance/traffic-peer-deployed-2026-10-12.json) проверен с actual API/live/receipt labels без ошибок/overflow.
|
||||
|
||||
Следующий183: optional peer endpoint failure пока не получает отдельной видимой причины — interface success остаётся успешным, stale peer становится unknown по предыдущему181. Нужно сохранить причину частичного сбоя, не превращая успешные interface measurements в ошибку. Покрытие пропусков истории, recreated identity, масштаб и внешние интеграции остаются12.5. Локальный коммит без push.
|
||||
|
||||
## 12.5.183 — понятная причина частичного сбоя peer-опроса (2026-10-12)
|
||||
|
||||
Optional WireGuard peer error больше не исчезает в catch. Collector сохраняет причину в текущей записи traffic_collection_state, snapshot.warning и trafficSettings.lastError. Успешный interface poll остаётся status=ok: известные interface скорости/история не теряются из-за ошибки отдельного peer endpoint. Перезапуск с корректным peer ответом очищает прежнюю причину.
|
||||
|
||||
Existing observations.error передаёт причину в DTO. ReUI Alert показывает «Часть измерений недоступна» при current measurements с предупреждением; при unknown/stale остаётся профильная подпись и та же причина. Manual collect response содержит warnings с serverId; event получает warning level и «завершён с ограничениями». Нового schema/state enum и миграции нет. Общий scheduler не объявляет interface poll неуспешным из-за optional peers; ограничение сохранено в его snapshot.
|
||||
|
||||
| Состояние | Схема | Результат |
|
||||
| --- | --- | --- |
|
||||
| Interface success + peer401/invalid | measured rates + warning → пользователь видит часть недоступных данных | known0 остаётся0; peer Нет данных |
|
||||
| Следующий полный poll | warning очищен → обычное текущее состояние | причина прежнего сбоя не остаётся ложной |
|
||||
|
||||
TypeScript/backend build/ESLint прошли.4 E2E11.2s:2 новых на1440/320 сохраняют measured0/history и показывают WireGuard401 reason,2 проверяют status TTL/legacy. Это API-fixture UI, не отказ реальных credentials.
|
||||
|
||||
[Own PG SQL](ux-ui/acceptance/traffic-warning-sql-2026-10-12.json):53 cases9counter+14history+10TCP SSE+6volume+14status,37478ms, без skip.3 предыдущих malformed/duplicate/shape cases теперь также проверяют сохранение warning;2 новые — peer-only401 с успешным iface+DTO cause и recovery с очищением причины. Временная база/ограниченная role/container удалены; exact namespace и отсутствие отражены в публичном отчёте.
|
||||
|
||||
[Source455/524](ux-ui/acceptance/traffic-warning-source-2026-10-12.json)/[compiled1040](ux-ui/acceptance/traffic-warning-compiled-2026-10-12.json) SHA256 parity. Обе production builds прошли. Frontend ux-warning183 сначала проверен с backend ux-peer182 [interop](ux-ui/acceptance/traffic-warning-interop-2026-10-12.json), затем [both ux-warning183](ux-ui/acceptance/traffic-warning-runtime-2026-10-12.json) healthy/running/imageIds. Только .env tags; rollback frontend ux-status181/backend ux-peer182, без secret env copy.
|
||||
|
||||
[Actual API](ux-ui/acceptance/traffic-warning-api-2026-10-12.json)/[browser1440/320](ux-ui/acceptance/traffic-warning-deployed-2026-10-12.json) подтвердили нормальный runtime/live/receipt labels без page errors/overflow. Оба CHR доступны в preceding182 native read; этот checker не отправлял новых native commands и не создавал искусственный отказ на реальных устройствах. Пароли/конфигурация не менялись, messages0. Туннельное соединение не заявлено: native peers182 были пустыми, fault/recovery доказаны в изолированном SQL/HTTP сценарии. Перезагрузить вкладку для нового Alert.
|
||||
|
||||
Следующий184 — явно определить покрытие периода при отсутствующих poll waves/переименовании или пересоздании интерфейса и не выдавать lower-bound за полный период. Внешние интеграции/масштаб и итоговая12.5 остаются открыты. Локальный коммит без push.
|
||||
Reference in new issue
Block a user