chore(test): подтвердить новую форму speed и обновить frontend на стенде

This commit is contained in:
Denozordec committed 2026-10-08 10:09:35 +07:00
1 parent f194e7269b
commit a178becdcd
10 files changed
+161 -7

No files matched your search

+5 -1
View File
@@ -1,6 +1,6 @@
# UX/UI: протокол внешней приёмки 12.5
Статус на2026-10-08: backend8782054/frontendaa7dbdf, backend healthy. PG-1/2/3/4/5 приняты в описанных границах, PG-6 integrated для одного isolated instance, PG-7 real JWT/processcounts и browser restore passed. PG-8 real PG/native и browser unknown→history done приняты с fault injection после настоящего COMMIT. ROS-8/9 real API/SQL/native приняты в границах12.5.23; browser pair/duration change и delete приняты в12.5.24. ROS-2 authentication failure принят в12.5.25. PortalSSO, физический TCP disconnect, мультиэкземпляры и остальные ROS/Q/интеграции остаются открытыми. [Паспорт](ux-ui-test-server.md), [журнал](ux-ui-progress.md).
Статус на2026-10-08: backend8782054/frontendf194e72, backend healthy. PG-1/2/3/4/5 приняты в описанных границах, PG-6 integrated для одного isolated instance, PG-7 real JWT/processcounts и browser restore passed. PG-8 real PG/native и browser unknown→history done приняты с fault injection после настоящего COMMIT. ROS-8/9 real API/SQL/native приняты в границах12.5.23; browser pair/duration change и delete приняты в12.5.24. ROS-2 authentication failure принят в12.5.25. PortalSSO, физический TCP disconnect, мультиэкземпляры и остальные ROS/Q/интеграции остаются открытыми. [Паспорт](ux-ui-test-server.md), [журнал](ux-ui-progress.md).
## Паспорт стенда
@@ -153,3 +153,7 @@ BGP-prefix evaluator, отдельное live GRE расписание и recove
## Интерфейс native test и Ping — 2026-10-08
12.5.28 [real ROS-3](ux-ui/acceptance/speed-interface-2026-10-08.json): reverse2→1 done, bandwidth194.226.121.150/nointerfacebinding, Pingether1/0%loss; metadata source195 не доказываетsourceIPpackets. CHR2 имеет dynamic104/static195, явныйdstinterface предпочитаетstatic. Три1→2 попыткиtimeout, причинаauto-path не установлена; они не приняты. КонфигурацияRouterOS не менялась. Основнойruntimebackend8782054/frontendaa7dbdf/history5 сохранён. UIhint/CLIwhereinterface исправлены локально; browserfixture/typecheck/ESLint passed, не развёрнуты. Следующий12.5.29 — real browserform/deploymentподсказок.
## Форма интерфейсов развёрнута — 2026-10-08
12.5.29 [real browser form](ux-ui/acceptance/browser-speed-form-2026-10-08.json), [deployment](ux-ui/acceptance/deployed-frontend-f194e72-2026-10-08.json), [пять экранов](ux-ui/acceptance/deploy-browser-f194e72-2026-10-08.json) passed. Frontendf194e72, backend8782054healthy прежний; MMAPP_IMAGE_TAG=ux-f194e72/BACKEND_IMAGE_TAG=ux-8782054. Настоящий inventory/static-IP195, правильныйCLIinterfacefilter/пояснение/320fits/JS0, без моков/native-команд. Основнойcontrol совпал; fixtureprobe/temporarycontainers/network/3018 удалены. Следующий12.5.30 — read-only forward-native диагностика; timeout1→2 не исправлен этим UI-изменением.
+2 -2
View File
@@ -1,12 +1,12 @@
# План реализации UX/UI по пятичасовым окнам
Актуальное продолжение 2026-10-08: 12.5.28 подтвердил ROS-3 для2→1: native адрес194.226.121.150 без binding, after-ping interfaceether1/0%loss, SQLhistorydone. Три1→2 попытки timeout, этот путь не принят. Локально исправлены CLI where interface и пояснение формы; browser320/typecheck/ESLint passed, ещё не развёрнуты. Runtimebackend8782054/frontendaa7dbdf прежний. Следующий12.5.29 — browserform/deployment UI-подсказок, диагностика forward-сценария остаётся открытой.
Актуальное продолжение 2026-10-08: 12.5.29 завершён — frontendf194e72 собран/развёрнут, real browser form/CLI/static-IP priority/320px/JS0 passed без моков и native-команд. Пять основных экранов и контрольБД passed; backend8782054healthy прежний. Следующий12.5.30 — read-only диагностика native bandwidth1→2; forward timeout, multi-WAN и остальные внешние сценарии остаются открытыми.
Общий план проекта MikrotikManager. Основан на согласованном плане из задачи; точка продолжения обновлена 2026-10-08. Источник фактического прогресса, проверок и ограничений — [журнал реализации](ux-ui-progress.md). Этот документ задаёт объём и критерии завершения, журнал фиксирует результат.
## Актуальная точка продолжения — 2026-10-08
Этапы0–11 завершены в описанных локальных границах. Этап12 остаётся открытым. На161.104.46.222 развёрнуты backend/frontend8782054; два CHR подключены. PG backup/restore/rollback, single-instance quiescence, JWT/RBAC и browser restore приняты в границах журнала. PG-8 проверен с настоящими PG/native и введённой после COMMIT ошибкой подтверждения; новый browser UI сохраняет snapshot и сверяет историю. ROS-8/9 API/SQL/native приняты в описанных границах. Browser-смена пары/длительности и удаление во время native-теста приняты в12.5.24. Реальный отказ bandwidth-аутентификации принят в12.5.25. 12.5.26 обнаружил и локально исправил30s timeout Next proxy. Исправленный frontendaa7dbdf развёрнут и проверен в12.5.27; backend8782054 прежний. ROS-3 reverse2→1/native-afterping принят в12.5.28; forward timeout открыт. Следующий12.5.29 — real browserform/deployment UI-подсказок. [Протокол](ux-ui-external-acceptance.md) и [журнал](ux-ui-stage-12.md) сохраняют точные доказательства и ограничения.
Этапы0–11 завершены в описанных локальных границах. Этап12 остаётся открытым. На161.104.46.222 развёрнуты backend/frontend8782054; два CHR подключены. PG backup/restore/rollback, single-instance quiescence, JWT/RBAC и browser restore приняты в границах журнала. PG-8 проверен с настоящими PG/native и введённой после COMMIT ошибкой подтверждения; новый browser UI сохраняет snapshot и сверяет историю. ROS-8/9 API/SQL/native приняты в описанных границах. Browser-смена пары/длительности и удаление во время native-теста приняты в12.5.24. Реальный отказ bandwidth-аутентификации принят в12.5.25. 12.5.26 обнаружил и локально исправил30s timeout Next proxy. Исправленный frontendaa7dbdf развёрнут и проверен в12.5.27; backend8782054 прежний. ROS-3 reverse2→1/native-afterping принят в12.5.28; forward timeout открыт. Форма frontendf194e72 проверена без моков и развёрнута в12.5.29. Следующий12.5.30 — read-only диагностика native bandwidth1→2. [Протокол](ux-ui-external-acceptance.md) и [журнал](ux-ui-stage-12.md) сохраняют точные доказательства и ограничения.
Реальные pg_dump/pg_restore, PG rollback и остановка UDP worker требуют внешней приёмки. Датированные продолжения ниже — история; точный следующий шаг также указан в начале [журнала](ux-ui-progress.md).
+15 -1
View File
@@ -1,6 +1,6 @@
# UX/UI: журнал реализации
Актуальное продолжение 2026-10-08: 12.5.28 подтвердил ROS-3 для2→1: native адрес194.226.121.150 без binding, after-ping interfaceether1/0%loss, SQLhistorydone. Три1→2 попытки timeout, этот путь не принят. Локально исправлены CLI where interface и пояснение формы; browser320/typecheck/ESLint passed, ещё не развёрнуты. Runtimebackend8782054/frontendaa7dbdf прежний. Следующий12.5.29 — browserform/deployment UI-подсказок, диагностика forward-сценария остаётся открытой.
Актуальное продолжение 2026-10-08: 12.5.29 завершён — frontendf194e72 собран/развёрнут, real browser form/CLI/static-IP priority/320px/JS0 passed без моков и native-команд. Пять основных экранов и контрольБД passed; backend8782054healthy прежний. Следующий12.5.30 — read-only диагностика native bandwidth1→2; forward timeout, multi-WAN и остальные внешние сценарии остаются открытыми.
Общий план: [UX/UI по этапам и пятичасовым окнам](ux-ui-plan.md). План задаёт объём, этот журнал фиксирует выполненные блоки и ограничения. Записи расположены от новых к старым; подробная история этапа12 также сохранена в [ux-ui-stage-12.md](ux-ui-stage-12.md).
@@ -34,6 +34,20 @@
| 11Б | Оповещения, сбор данных, интеграции, релизы и настройки | Завершён в границах локальной приёмки 2026-10-03; ограничения и evidence в11Б.7 |
| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Локальная приёмка завершена в описанных границах:12.3.83,main1186/1186,context221/221. Этап остаётся в работе: стенд12.5.1–3 развёрнут,bootstrap/smoke проверены;остальные сценарии12.5 не выполнены. |
## 12.5.29 — real browser форма интерфейсов и deployment frontend (2026-10-08)
Production frontend sourcef194e7269b1e0276f257b3fda28413958907a503 собран из чистого contextaa7dbdf с зафиксированным app/(main)/uptime/page.tsx. Git diff подтвердил, что это единственное runtime-изменение frontend; Dockerfile/deps/контракт не менялись. Production build/TypeScript внутри Docker passed; proxyTimeout180s сохранён. Backend image8782054 прежний.
[Real browser evidence](ux-ui/acceptance/browser-speed-form-2026-10-08.json): новый frontend, выделенная БД и Docker network/SSH3018. Guard подтвердил имя БД; fixtureprobe только в выделенной app DB. Настоящий RouterOS inventory вернул ether1 назначения2 с addresses195.195.195.195/104.165.244.7 (static first). В открытой форме редактирования CLI содержит /ip address print where interface="ether1", /ping address195… interfaceether1 и bandwidth-test address195…; where name отсутствует. Пояснение различает source Ping-интерфейс, destination IP и маршрутизацию RouterOS. ПК/320px fits,0JSerrors/0API>=400. HTTP/RouterOS-моков нет. [ПК](ux-ui/screens/speed-interface-form-real-desktop.png), [телефон](ux-ui/screens/speed-interface-form-real-320.png).
NativeCalls0/commandPOSTs[]: bandwidth-test в этом блоке не запускался. Это приёмка формы и read-only inventory, не новый throughput или source-interface binding proof. ROS-3 reverse proof12.5.28 сохраняется в своих границах; forward timeout остаётся открытым.
[Deployment](ux-ui/acceptance/deployed-frontend-f194e72-2026-10-08.json): MMAPP_IMAGE_TAG=ux-f194e72, BACKEND_IMAGE_TAG=ux-8782054. Running frontend imageSHAa210ebc2… и full source label проверены. Backend healthy/version1.0.0-test.8782054 не перезапускался. Контроль основной БД совпал: servers1–2/enabledtrue,retention14,speedHistory5; restore не выполнялся. Приватная предыдущая env/образ сохранены на сервере для отката; секреты не включены в Git/отчёты.
[Пять основных экранов](ux-ui/acceptance/deploy-browser-f194e72-2026-10-08.json) dashboard/servers/uptime-speed/settings/filters200,ПК/320fits,0JSerrors/0API>=400,без HTTP-моков. Временные frontend/backend/network/3018 удалены,fixtureprobe удалена/count0. Основной стенд и SSH3000/8000 сохранены. Обновлённая форма доступна через localhost3000 при создании/редактировании speed-пробы.
Следующий12.5.30 — read-only диагностика native bandwidth1→2 перед повторными командами; forward timeout/multi-WAN/прочие ROS/Q/интеграции и полный12.5 открыты. План/паспорт/протокол обновлены, локальный коммит без push.
## 12.5.28 — интерфейс bandwidth-test и after-ping; уточнение формы (2026-10-08)
[Real native/API/SQL evidence](ux-ui/acceptance/speed-interface-2026-10-08.json): backend8782054, выделенная mmapp_acceptance_20261007; реальные inventory и команды, HTTP/RouterOS-моков нет. На обоих CHR активны ether1/lo. НаCHR1 ether1 имеет dynamic194.226.121.150/24; наCHR2 dynamic104.165.244.7/24 иstatic195.195.195.195/32. Существующая конфигурация RouterOS не менялась. API каталога предпочитает static195 при явном выборе ether1 назначения. Это не тот же адрес, что host/API104.
+15 -1
View File
@@ -1,6 +1,6 @@
# Этап 12: итоговая приёмка UX/UI
Актуальное продолжение 2026-10-08: 12.5.28 подтвердил ROS-3 для2→1: native адрес194.226.121.150 без binding, after-ping interfaceether1/0%loss, SQLhistorydone. Три1→2 попытки timeout, этот путь не принят. Локально исправлены CLI where interface и пояснение формы; browser320/typecheck/ESLint passed, ещё не развёрнуты. Runtimebackend8782054/frontendaa7dbdf прежний. Следующий12.5.29 — browserform/deployment UI-подсказок, диагностика forward-сценария остаётся открытой.
Актуальное продолжение 2026-10-08: 12.5.29 завершён — frontendf194e72 собран/развёрнут, real browser form/CLI/static-IP priority/320px/JS0 passed без моков и native-команд. Пять основных экранов и контрольБД passed; backend8782054healthy прежний. Следующий12.5.30 — read-only диагностика native bandwidth1→2; forward timeout, multi-WAN и остальные внешние сценарии остаются открытыми.
План: [ux-ui-plan.md](ux-ui-plan.md). Фактические результаты: [ux-ui-progress.md](ux-ui-progress.md). Подготовлен после сводных проверок 11Б; завершение каждого блока требует локального коммита без push.
@@ -1252,3 +1252,17 @@ Frontend production-образ sourceaa7dbdf608ca4da4986826fca956543f40922841 с
Проверки локального UI: uptime-speed-interface.spec.ts1/1 сHTTP-фикстурами — открытие формы, приоритет адреса изAPI, корректныйCLI/Ping, пояснение и320px fits; scopedfrontend TypeScript/ESLint passed. Это локальная проверка формы, не realbrowserproof новых текстов. Runtimefrontendaa7dbdf прежний, новыеUIизменения ещё не развёрнуты.
Временные --rm containers закрыты, testprobes0; история тестов только в выделеннойБД, основнаяhistory5/backend8782054healthok сохранены. ROS-3 принят дляобратнойкоманды в перечисленных границах; forward2interface/auto не принят. Следующий12.5.29 — realbrowserform/deploymentподсказок; forward-native диагностика иполный12.5 остаются открытыми. План/паспорт/протокол обновлены, локальный коммит без push.
## 12.5.29 — real browser форма интерфейсов и deployment frontend (2026-10-08)
Production frontend sourcef194e7269b1e0276f257b3fda28413958907a503 собран из чистого contextaa7dbdf с зафиксированным app/(main)/uptime/page.tsx. Git diff подтвердил, что это единственное runtime-изменение frontend; Dockerfile/deps/контракт не менялись. Production build/TypeScript внутри Docker passed; proxyTimeout180s сохранён. Backend image8782054 прежний.
[Real browser evidence](ux-ui/acceptance/browser-speed-form-2026-10-08.json): новый frontend, выделенная БД и Docker network/SSH3018. Guard подтвердил имя БД; fixtureprobe только в выделенной app DB. Настоящий RouterOS inventory вернул ether1 назначения2 с addresses195.195.195.195/104.165.244.7 (static first). В открытой форме редактирования CLI содержит /ip address print where interface="ether1", /ping address195… interfaceether1 и bandwidth-test address195…; where name отсутствует. Пояснение различает source Ping-интерфейс, destination IP и маршрутизацию RouterOS. ПК/320px fits,0JSerrors/0API>=400. HTTP/RouterOS-моков нет. [ПК](ux-ui/screens/speed-interface-form-real-desktop.png), [телефон](ux-ui/screens/speed-interface-form-real-320.png).
NativeCalls0/commandPOSTs[]: bandwidth-test в этом блоке не запускался. Это приёмка формы и read-only inventory, не новый throughput или source-interface binding proof. ROS-3 reverse proof12.5.28 сохраняется в своих границах; forward timeout остаётся открытым.
[Deployment](ux-ui/acceptance/deployed-frontend-f194e72-2026-10-08.json): MMAPP_IMAGE_TAG=ux-f194e72, BACKEND_IMAGE_TAG=ux-8782054. Running frontend imageSHAa210ebc2… и full source label проверены. Backend healthy/version1.0.0-test.8782054 не перезапускался. Контроль основной БД совпал: servers1–2/enabledtrue,retention14,speedHistory5; restore не выполнялся. Приватная предыдущая env/образ сохранены на сервере для отката; секреты не включены в Git/отчёты.
[Пять основных экранов](ux-ui/acceptance/deploy-browser-f194e72-2026-10-08.json) dashboard/servers/uptime-speed/settings/filters200,ПК/320fits,0JSerrors/0API>=400,без HTTP-моков. Временные frontend/backend/network/3018 удалены,fixtureprobe удалена/count0. Основной стенд и SSH3000/8000 сохранены. Обновлённая форма доступна через localhost3000 при создании/редактировании speed-пробы.
Следующий12.5.30 — read-only диагностика native bandwidth1→2 перед повторными командами; forward timeout/multi-WAN/прочие ROS/Q/интеграции и полный12.5 открыты. План/паспорт/протокол обновлены, локальный коммит без push.
+6 -2
View File
@@ -1,6 +1,6 @@
# Тестовый сервер UX/UI — 2026-10-08
Сервер161.104.46.222 предоставлен пользователем для временного тестирования с последующим удалением. Подготовка выполнена по структуре deploy/docker-compose.yml из main. Приложение собрано и запущено. Активный backend source8782054078304f36cc611876af2d17f87b857f60/version1.0.0-test.8782054 healthy. Frontend sourceaa7dbdf608ca4da4986826fca956543f40922841/version1.0.0-test.aa7dbdf обновлён в12.5.27.
Сервер161.104.46.222 предоставлен пользователем для временного тестирования с последующим удалением. Подготовка выполнена по структуре deploy/docker-compose.yml из main. Приложение собрано и запущено. Активный backend source8782054078304f36cc611876af2d17f87b857f60/version1.0.0-test.8782054 healthy. Frontend sourcef194e7269b1e0276f257b3fda28413958907a503/version1.0.0-test.f194e72 обновлён в12.5.29.
| Параметр | Проверенное состояние |
| --- | --- |
@@ -14,7 +14,7 @@
| PostgreSQL | postgres:18-alpine,18.6;mmapp-test-postgres healthy;SELECT version() passed |
| Данные | Отдельный Compose project mmapp-test,том mmapp-test_mmapp-pgdata и каталог ./data |
| Доступ | PostgreSQL не публикуется;frontend3000/backend8000 привязаны к127.0.0.1 после запуска |
| Образы приложения | mmapp-test/backend:ux-8782054 и mmapp-test/frontend:ux-aa7dbdf;запущены |
| Образы приложения | mmapp-test/backend:ux-8782054 и mmapp-test/frontend:ux-f194e72;запущены |
Compose SHA256:3052bd6ab5d9865f97605cebfb5ff27a4410cd3357b81153a65a87fb7c92582f. OptionalBACKEND_IMAGE_TAG позволяетобновлятьbackendотдельно. Локальный и удалённый файлы совпали. Шаблоны: [Compose](../deploy/docker-compose.test.yml), [env без секретов](../deploy/env.test.example).
@@ -161,3 +161,7 @@ ssh -N -L 3000:127.0.0.1:3000 -L 8000:127.0.0.1:8000 [email protected]
## Интерфейс native test и Ping — 2026-10-08
12.5.28 [real ROS-3](ux-ui/acceptance/speed-interface-2026-10-08.json): reverse2→1 done, bandwidth194.226.121.150/nointerfacebinding, Pingether1/0%loss; metadata source195 не доказываетsourceIPpackets. CHR2 имеет dynamic104/static195, явныйdstinterface предпочитаетstatic. Три1→2 попыткиtimeout, причинаauto-path не установлена; они не приняты. КонфигурацияRouterOS не менялась. Основнойruntimebackend8782054/frontendaa7dbdf/history5 сохранён. UIhint/CLIwhereinterface исправлены локально; browserfixture/typecheck/ESLint passed, не развёрнуты. Следующий12.5.29 — real browserform/deploymentподсказок.
## Форма интерфейсов развёрнута — 2026-10-08
12.5.29 [real browser form](ux-ui/acceptance/browser-speed-form-2026-10-08.json), [deployment](ux-ui/acceptance/deployed-frontend-f194e72-2026-10-08.json), [пять экранов](ux-ui/acceptance/deploy-browser-f194e72-2026-10-08.json) passed. Frontendf194e72, backend8782054healthy прежний; MMAPP_IMAGE_TAG=ux-f194e72/BACKEND_IMAGE_TAG=ux-8782054. Настоящий inventory/static-IP195, правильныйCLIinterfacefilter/пояснение/320fits/JS0, без моков/native-команд. Основнойcontrol совпал; fixtureprobe/temporarycontainers/network/3018 удалены. Следующий12.5.30 — read-only forward-native диагностика; timeout1→2 не исправлен этим UI-изменением.
@@ -0,0 +1,45 @@
{
"date": "2026-10-08",
"frontendSource": "f194e7269b1e0276f257b3fda28413958907a503",
"backendSource": "8782054078304f36cc611876af2d17f87b857f60",
"database": "mmapp_acceptance_20261007",
"httpMocks": false,
"routerOsMocks": false,
"destinationInterfaces": [
{
"name": "ether1",
"running": true,
"disabled": false,
"addresses": [
"195.195.195.195",
"104.165.244.7"
]
},
{
"name": "lo",
"running": true,
"disabled": false,
"addresses": []
}
],
"correctCliInterfaceFilter": true,
"cliDestinationAddress": "195.195.195.195",
"sourceInterfaceRoleExplained": true,
"routerOsRoutingExplained": true,
"mobileFits": true,
"nativeCalls": 0,
"commandPosts": [],
"pageErrors": [],
"badApiResponses": [],
"limits": [
"Read-only RouterOS inventory; bandwidth-test not run",
"Fixture probe only in isolated application DB",
"No multi-WAN route proof or forward-timeout resolution in this block"
],
"cleanup": {
"fixtureProbeRemoved": true,
"temporaryContainersNetworkAndTunnelRemoved": true,
"testProbesRemaining": 0,
"mainHistoryCountUnchanged": 5
}
}
@@ -0,0 +1,35 @@
{
"date": "2026-10-08",
"backendSource": "8782054078304f36cc611876af2d17f87b857f60",
"frontendSource": "f194e7269b1e0276f257b3fda28413958907a503",
"httpMocks": false,
"pages": [
{
"path": "/dashboard",
"status": 200,
"mobileFits": true
},
{
"path": "/servers",
"status": 200,
"mobileFits": true
},
{
"path": "/uptime?tab=speed",
"status": 200,
"mobileFits": true
},
{
"path": "/settings",
"status": 200,
"mobileFits": true
},
{
"path": "/filters",
"status": 200,
"mobileFits": true
}
],
"pageErrors": [],
"badApiResponses": []
}
@@ -0,0 +1,38 @@
{
"date": "2026-10-08",
"frontendSource": "f194e7269b1e0276f257b3fda28413958907a503",
"backendSource": "8782054078304f36cc611876af2d17f87b857f60",
"frontendImageId": "sha256:a210ebc23a1951cf0a4be0a476edb690e530c8d088eec3d435b4a4dd46d2b363",
"backendHealth": "healthy",
"health": {
"status": "ok",
"timestamp": "2026-10-08T03:07:40.951Z",
"version": "1.0.0-test.8782054",
"eventLoopDelayMs": 20,
"flowWorker": {
"alive": false,
"bound": false,
"pendingSize": 0,
"dropped": 0,
"packetsReceived": 0
}
},
"controlsMatch": true,
"controls": {
"servers": [
{
"id": 1,
"host": "194.226.121.150",
"enabled": true
},
{
"id": 2,
"host": "104.165.244.7",
"enabled": true
}
],
"retentionDays": 14,
"speedHistoryCount": 5
},
"mainRestorePerformed": false
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 258 KiB