fix(api): сохранять неизвестные показатели диагностики

This commit is contained in:
Denozordec committed 2026-10-01 08:54:31 +07:00
1 parent 33185fddae
commit 9d2101d700
4 files changed
+74 -35

No files matched your search

+9 -1
View File
@@ -26,7 +26,7 @@
| 7 | Серверы и мониторинг: детали, формы, URL-контекст, права | Завершён в границах локальной приёмки 2026-09-23; внешние ограничения ниже |
| 8 | Трафик и статистика | Завершён 2026-09-28 в границах локальной приёмки; ограничения в блоке 8.13 |
| 9 | VPN, Firewall и Filters | Завершён в границах локальной приёмки 2026-09-30; блоки 9.1–9.64, ограничения в 9.64 |
| 10 | Маршрутизация, диагностика, карта и терминал | В работе: 10.1–10.66; оптимизатор, карта и терминал приняты локально; диагностика /probes в работе |
| 10 | Маршрутизация, диагностика, карта и терминал | В работе: 10.1–10.67; оптимизатор, карта и терминал приняты локально; диагностика /probes в работе |
| 11А | Пользователи, контейнеры, сертификаты и резервные копии | Не начат |
| 11Б | Оповещения, сбор данных, интеграции, релизы и настройки | Не начат |
| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Не начат |
@@ -36,6 +36,14 @@
## Блок 10.67 — неизвестные измерения и маршрутный срез (2026-10-01)
- Ping сохраняет seq=0/TTL=0/sent=0/received=0, отсутствующие/невалидные счётчики помечает ?, пустой ответ подписан без измерений. Нет ложного avg-rtt из поля time суммарной строки. BW/trace пустые показатели показывают —, известный ноль сохранён.
- Route требует IPv4 target до lookup. IPv4/CIDR парсятся целиком, без parseInt префиксов/лишних сегментов. Неизвестные active/prefix записи не превращаются в no route: неполнота явно показана, при наличии подтверждённого маршрута он подписан best confirmed match. Distance unknown не становится 255/0; routing-mark missing не называется main.
- Existing main/active filtering, longest-prefix/distance ordering и сетевые методы сохранены; malformed/unknown записи не используются как подтверждённые маршруты.
- Backend test:probes/build/lint прошли; DI HTTP проверяет нули/unknown ping/BW, плохой target/CIDR, mixed known/unknown маршруты и приоритеты. Моки не проверяют реальную FIB/RouterOS/IP.
- Далее 10.68: корректная привязка отмены к жизненному циклу HTTP ответа и прекращение последующих MTU проб; затем клавиатура/адаптивность и локальная приёмка /probes. Этап 10 ещё в работе.
## Блок 10.66 — аргументы и достоверность MTU (2026-10-01)
- Zod проверяет typed tool/target/числа/boolean/enum/timeout до lookup; число не берётся из строки, false не превращается в true. Неполная цель/невалидный timeout/небезопасные значения дают 400. Существующие defaults и caps ping 100/8192/255, trace 64 hops/3 probes/10–3000 ms/budget 58 s и BW 3–120 s сохранены для валидных аргументов.
+9
View File
@@ -415,3 +415,12 @@ Shared контракт и backend observed исходные значения/д
- Backend test:probes/test:exec, build и lint прошли; HTTP DI покрывает bad types, disabled, unknown MTU, успешный seq=0, все timeout, caps/trace boolean/time. 2 frontend E2E подтвердили 403/502 и сохранение цели/повтор. JWT тест отправляет валидный probes payload; реальные RouterOS/БД/сеть не проверены.
- Далее 10.67: достоверные ping/BW/route показатели и строгий IPv4/CIDR; затем отмена backend запроса, клавиатура/адаптивность, прежние эффекты и локальная приёмка /probes. Этап 10 ещё в работе.
## Блок 10.67 — неизвестные измерения и маршрутный срез (2026-10-01)
- Ping сохраняет seq=0/TTL=0/sent=0/received=0, отсутствующие/невалидные счётчики помечает ?, пустой ответ подписан без измерений. Нет ложного avg-rtt из поля time суммарной строки. BW/trace пустые показатели показывают —, известный ноль сохранён.
- Route требует IPv4 target до lookup. IPv4/CIDR парсятся целиком, без parseInt префиксов/лишних сегментов. Неизвестные active/prefix записи не превращаются в no route: неполнота явно показана, при наличии подтверждённого маршрута он подписан best confirmed match. Distance unknown не становится 255/0; routing-mark missing не называется main.
- Existing main/active filtering, longest-prefix/distance ordering и сетевые методы сохранены; malformed/unknown записи не используются как подтверждённые маршруты.
- Backend test:probes/build/lint прошли; DI HTTP проверяет нули/unknown ping/BW, плохой target/CIDR, mixed known/unknown маршруты и приоритеты. Моки не проверяют реальную FIB/RouterOS/IP.
- Далее 10.68: корректная привязка отмены к жизненному циклу HTTP ответа и прекращение последующих MTU проб; затем клавиатура/адаптивность и локальная приёмка /probes. Этап 10 ещё в работе.