@@ -79,7 +80,7 @@ function ProbeSourceCell({ probe, catalog }: { probe: PingProbe; catalog: Server
}
interface DashboardActiveProbesDataGridProps {
- probes: PingProbe[]
+ probes: DashboardProbe[]
catalog: Server[]
isLoading?: boolean
emptyTitle?: string
@@ -93,7 +94,7 @@ function DashboardActiveProbesDataGrid({
emptyTitle = "Нет активных проб",
emptyDescription,
}: DashboardActiveProbesDataGridProps) {
- const columns = useMemo[]>(
+ const columns = useMemo[]>(
() => [
{
id: "source",
@@ -140,7 +141,7 @@ function DashboardActiveProbesDataGrid({
cell: (p) => (
5 ? "text-red-500" : p.loss > 0 ? "text-amber-500" : "text-muted-foreground",
+ (p.loss??0) > 5 ? "text-red-500" : (p.loss??0) > 0 ? "text-amber-500" : "text-muted-foreground",
)}
>
{formatLossPct(p.loss)}
@@ -149,7 +150,7 @@ function DashboardActiveProbesDataGrid({
},
{
id: "series",
- header: "60с",
+ header: "RTT · 1 ч",
enableSorting: false,
headerClassName: "w-36",
cell: (p) => {
@@ -168,7 +169,7 @@ function DashboardActiveProbesDataGrid({
enableSorting: false,
cell: (p) => (
),
},
diff --git a/docs/ux-ui-plan.md b/docs/ux-ui-plan.md
index 966905d5..c3d1079b 100644
--- a/docs/ux-ui-plan.md
+++ b/docs/ux-ui-plan.md
@@ -4,7 +4,7 @@
## Актуальная точка продолжения — 2026-10-03
-Этап 11Б завершён в границах локальной приёмки (11Б.7); внешний выпуск не проверен. 12.1 принят локально: доступность оболочки/клавиатура/health в описанных сценариях. 12.2.1 принят локально: strict BGP catalog/partial/nullable counters. 12.2.2 принят локально: strict traffic DTO и агрегация без выдуманных точек. 12.2.3 принят локально: observations для server traffic от backend до dashboard. 12.2.4 принят локально: strict servers/probes и unknown server status. Следующий блок12.2.5: наблюдения ping и реальная ось RTT; затем overlay/Internet path, производительность и сквозная регрессия. См. docs/ux-ui-stage-12.md. Внешние ограничения 11Б сохраняются.
+Этап 11Б завершён в границах локальной приёмки (11Б.7); внешний выпуск не проверен. 12.1 принят локально: доступность оболочки/клавиатура/health в описанных сценариях. 12.2.1 принят локально: strict BGP catalog/partial/nullable counters. 12.2.2 принят локально: strict traffic DTO и агрегация без выдуманных точек. 12.2.3 принят локально: observations для server traffic от backend до dashboard. 12.2.4 принят локально: strict servers/probes и unknown server status. 12.2.5 принят локально: реальные ping samples/unknown/ось RTT/Recharts. Следующий блок12.2.6: strict GRE/WireGuard/VXLAN и device failures; затем Internet path, производительность и сквозная регрессия. См. docs/ux-ui-stage-12.md. Внешние ограничения 11Б сохраняются.
Реальные pg_dump/pg_restore, PG rollback и остановка UDP worker требуют внешней приёмки. Датированные продолжения ниже — история; точный следующий шаг также указан в начале [журнала](ux-ui-progress.md).
diff --git a/docs/ux-ui-progress.md b/docs/ux-ui-progress.md
index 04972736..dab058ea 100644
--- a/docs/ux-ui-progress.md
+++ b/docs/ux-ui-progress.md
@@ -36,6 +36,21 @@
+## 12.2.5 — реальные ping наблюдения и разрывы RTT (2026-10-03)
+
+/uptime/overview совместимо добавляет observations.samples и общие rangeStartAt/rangeEndAt. Сохраняет исходные числовые поля legacy клиентов; metadata содержит реальные отсортированные timestamp/RTT/loss/status без искусственных samples и ограничена концом снимка (поступление нового sample во время чтения не нарушает окно). Дашборд предпочитает наблюдения: legacy/empty становятся unknown/null, измеренный0 остаётся0, реальный down/100% остаётся ошибкой. Malformed/duplicate/unordered/out-of-window samples сохраняют cache. Source freshness показывает фактическое время, неизвестные проверки исключают утверждение «без ошибок» и дают warning/— в KPI; отсутствующий каталог источника не рисует offline.
+
+RTT агрегируется в60 настоящих временных корзин; средний по источнику не дополняется нулями/интерполяцией. Пропуски — null; изолированная точка видима. Нечитаемый на320px SVG заменён установленной композицией ChartContainer/Recharts, как ReUI PRO chart-23 и существующий TrafficRxTxChart; Frame/OpsPanel сохранены. Скорости RX/TX вынесены из заголовка в переносимую строку, перекрытие устранено. Header таблицы «RTT · 1 ч» вместо неверных «60с».
+
+Проверки:40 dashboard/permissions browser прошли после финального chart; дополнительно6 ping сценариев и снимки1440/320.11 unit dashboard (включая sparse axis/unknown/zero/invalid metadata), чистые backend observations assertions, typecheck/ESLint, frontend production/contracts build(34pages), backend/contracts build прошли. ReUI MCP подтвердил chart-23/Chart API; читались установленные исходники, checklist применён; primitives/theme не изменены. Другие uptime страницы продолжают legacy numeric API и этим блоком не переприняты. Реальные PG/RouterOS measurements не тестировались.
+
+| Доработка | Референс | Схема / локальные снимки |
+| --- | --- | --- |
+| Читаемый RTT с пропусками | [Chart23](https://reui.io/preview/base/chart-23?ref=mcp) | Observations → временные корзины → линии/разрывы/точки; [1440](ux-ui/screens/dashboard-observed-ping-1440.png), [320](ux-ui/screens/dashboard-observed-ping-320.png) |
+| Неизвестное состояние в сводке | [Stats12](https://reui.io/preview/base/stats-12?ref=mcp) | Snapshot → known/unknown → KPI/очередь → объект |
+
+Далее12.2.6: strict GRE/WireGuard/VXLAN и device failures на dashboard; затем Internet path и сводная приёмка12.2. Внешние ограничения сохраняются.
+
## 12.2.4 — строгие каталоги серверов/проб, unknown серверов (2026-10-03)
Servers использует выбранные поля serverReadSchema и строгие id/latency/sessions; probes — обязательные поля, unique id и диапазоны RTT/loss/series/status. Malformed каталоги отклоняются до публикации, сохраняется cache/время источника. Nullable статус сервера отображается как unknown, warning в очереди; offline KPI считает только явно offline, unknown/degraded перечислены отдельно, недоказанное состояние не называется исправным. Sessions обязательны как в реальном DTO; дополнительная WAN информация остаётся совместимой.
diff --git a/docs/ux-ui-stage-12.md b/docs/ux-ui-stage-12.md
index ca6e4a68..ea4dbe4a 100644
--- a/docs/ux-ui-stage-12.md
+++ b/docs/ux-ui-stage-12.md
@@ -59,3 +59,18 @@
Servers использует выбранные поля serverReadSchema и строгие id/latency/sessions; probes — обязательные поля, unique id и диапазоны RTT/loss/series/status. Malformed каталоги отклоняются до публикации, сохраняется cache/время источника. Nullable статус сервера отображается как unknown, warning в очереди; offline KPI считает только явно offline, unknown/degraded перечислены отдельно, недоказанное состояние не называется исправным. Sessions обязательны как в реальном DTO; дополнительная WAN информация остаётся совместимой.
Проверки:34 dashboard/permissions browser и8 dashboard unit, typecheck/ESLint прошли. Initial failing unknown fixture был дополнен обязательным sessions реального DTO; финальный прогон34 прошёл. ReUI KPI/queue композиция сохранена, изменены только data/copy. Далее12.2.5: реальные ping наблюдения/временная ось; backend сейчас подставляет100%/down/нули при отсутствии samples, этот блок ещё не устранил такие backend подстановки. Затем overlay/Internet path.
+
+## 12.2.5 — реальные ping наблюдения и разрывы RTT (2026-10-03)
+
+/uptime/overview совместимо добавляет observations.samples и общие rangeStartAt/rangeEndAt. Сохраняет исходные числовые поля legacy клиентов; metadata содержит реальные отсортированные timestamp/RTT/loss/status без искусственных samples и ограничена концом снимка (поступление нового sample во время чтения не нарушает окно). Дашборд предпочитает наблюдения: legacy/empty становятся unknown/null, измеренный0 остаётся0, реальный down/100% остаётся ошибкой. Malformed/duplicate/unordered/out-of-window samples сохраняют cache. Source freshness показывает фактическое время, неизвестные проверки исключают утверждение «без ошибок» и дают warning/— в KPI; отсутствующий каталог источника не рисует offline.
+
+RTT агрегируется в60 настоящих временных корзин; средний по источнику не дополняется нулями/интерполяцией. Пропуски — null; изолированная точка видима. Нечитаемый на320px SVG заменён установленной композицией ChartContainer/Recharts, как ReUI PRO chart-23 и существующий TrafficRxTxChart; Frame/OpsPanel сохранены. Скорости RX/TX вынесены из заголовка в переносимую строку, перекрытие устранено. Header таблицы «RTT · 1 ч» вместо неверных «60с».
+
+Проверки:40 dashboard/permissions browser прошли после финального chart; дополнительно6 ping сценариев и снимки1440/320.11 unit dashboard (включая sparse axis/unknown/zero/invalid metadata), чистые backend observations assertions, typecheck/ESLint, frontend production/contracts build(34pages), backend/contracts build прошли. ReUI MCP подтвердил chart-23/Chart API; читались установленные исходники, checklist применён; primitives/theme не изменены. Другие uptime страницы продолжают legacy numeric API и этим блоком не переприняты. Реальные PG/RouterOS measurements не тестировались.
+
+| Доработка | Референс | Схема / локальные снимки |
+| --- | --- | --- |
+| Читаемый RTT с пропусками | [Chart23](https://reui.io/preview/base/chart-23?ref=mcp) | Observations → временные корзины → линии/разрывы/точки; [1440](ux-ui/screens/dashboard-observed-ping-1440.png), [320](ux-ui/screens/dashboard-observed-ping-320.png) |
+| Неизвестное состояние в сводке | [Stats12](https://reui.io/preview/base/stats-12?ref=mcp) | Snapshot → known/unknown → KPI/очередь → объект |
+
+Далее12.2.6: strict GRE/WireGuard/VXLAN и device failures на dashboard; затем Internet path и сводная приёмка12.2. Внешние ограничения сохраняются.
diff --git a/docs/ux-ui/screens/dashboard-observed-ping-1440.png b/docs/ux-ui/screens/dashboard-observed-ping-1440.png
new file mode 100644
index 0000000000000000000000000000000000000000..e9d822456fb603dd71c66221f01c8e446dba2c76
GIT binary patch
literal 132442
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