From e1457fbc77a067a33f255e90578632c5919c3791 Mon Sep 17 00:00:00 2001 From: Denozordec Date: Thu, 8 Oct 2026 10:43:06 +0700 Subject: [PATCH] =?UTF-8?q?chore(test):=20=D0=BF=D0=BE=D0=B4=D1=82=D0=B2?= =?UTF-8?q?=D0=B5=D1=80=D0=B4=D0=B8=D1=82=D1=8C=20=D0=B2=D0=BE=D1=81=D1=81?= =?UTF-8?q?=D1=82=D0=B0=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5=D0=BD=D0=BD=D1=8B?= =?UTF-8?q?=D0=B9=20=D0=B4=D0=BE=D1=81=D1=82=D1=83=D0=BF=20CHR2=20=D0=B8?= =?UTF-8?q?=20=D0=B4=D0=B0=D1=88=D0=B1=D0=BE=D1=80=D0=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/ux-ui-external-acceptance.md | 4 + docs/ux-ui-plan.md | 4 +- docs/ux-ui-progress.md | 14 ++- docs/ux-ui-stage-12.md | 14 ++- docs/ux-ui-test-server.md | 4 + .../chr-access-restored-2026-10-08.json | 85 +++++++++++++++++++ .../dashboard-access-restored-2026-10-08.json | 28 ++++++ 7 files changed, 149 insertions(+), 4 deletions(-) create mode 100644 docs/ux-ui/acceptance/chr-access-restored-2026-10-08.json create mode 100644 docs/ux-ui/acceptance/dashboard-access-restored-2026-10-08.json diff --git a/docs/ux-ui-external-acceptance.md b/docs/ux-ui-external-acceptance.md index 2f819b95..0ede8634 100644 --- a/docs/ux-ui-external-acceptance.md +++ b/docs/ux-ui-external-acceptance.md @@ -165,3 +165,7 @@ BGP-prefix evaluator, отдельное live GRE расписание и recove ## Текущий доступ CHR2 требует проверки — 2026-10-08 12.5.31 [CLI/REST/SSH comparison](ux-ui/acceptance/cli-rest-2026-10-08.json): CLI3.5s/REST3.0s nativeauthenticationfailed; GETconnections401, SSH2AuthenticationException. Main/testcredentials совпадают, значения не раскрыты. Текущий отказ авторизации подтверждён; причина прежнегоtimeout не доказана. Запрошены актуальные данные или проверкаadmin на104.165.244.7, зависимаяприёмка ожидает ответа. RouterOSconfiguration не менялась, mainruntimebackend8782054/frontendf194e72/history5 сохранён. Независимые12.5 сценарии остаются открытыми. + +## Доступ восстановлен пользователем — 2026-10-08 + +12.5.32 [API/native1→2](ux-ui/acceptance/chr-access-restored-2026-10-08.json), [realbrowserdashboard](ux-ui/acceptance/dashboard-access-restored-2026-10-08.json) passed. Пользователь восстановил парольCHR2; агентне менялRouterOSaccounts/credentialsприложения. Четыре каталога200/failures0, прежниеошибкиUI отсутствуют; nativeTCPtransmit3s1→2 done/HTTP200/53ms0%loss/однаhistorydone. Mainhistory5→6 намеренно; runtimebackend8782054/frontendf194e72 прежний. Старыеисторическиеошибкине переписаны; источник измененияпароля/все прежниеtimeouts не установлены. ОжиданиедоступаCHR2 снято, следующие12.5сценарии ещёоткрыты. diff --git a/docs/ux-ui-plan.md b/docs/ux-ui-plan.md index 9d330fec..27615e5a 100644 --- a/docs/ux-ui-plan.md +++ b/docs/ux-ui-plan.md @@ -1,12 +1,12 @@ # План реализации UX/UI по пятичасовым окнам -Актуальное продолжение 2026-10-08: 12.5.31 сравнениеCLI/REST завершено — оба native tests1→2 authentication failed, наблюдениеCHR2 REST401, SSHauthтакжеотклонена. Сохранённые credentials main/test совпадают; конфигурация не менялась. Запрошены актуальные данные или проверка admin наCHR2. Runtimebackend8782054/frontendf194e72/history5 сохранены. Аутентифицированная приёмкаCHR2 ожидает ответа пользователя; остальные12.5 остаются открытыми. +Актуальное продолжение 2026-10-08: 12.5.32 завершён — пользователь восстановил парольCHR2, каталогиBGP/GRE/WireGuard/VXLAN HTTP200/failures0 и realbrowserdashboard без прежнихошибок. Main native1→2 TCPtransmit3s done/HTTP200/Ping53ms0%loss, одна новаяhistorydone (5→6). Runtimebackend8782054/frontendf194e72 прежний, агентпароли не менял. ДоступCHR2 больше не блокирует приёмку; следующий12.5.33 — оставшиесяROS-2/профильныеоперации по протоколу. Общий план проекта 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 открыт. Форма frontendf194e72 проверена без моков и развёрнута в12.5.29. Read-only диагностика12.5.30 не установила причину. 12.5.31 выявил текущий отказ авторизацииCHR2 вCLI/REST/SSH. Для аутентифицированнойприёмкиCHR2 ожидаются актуальные данные или проверкаadmin-доступа пользователем. Независимые сценарии12.5 можно продолжать отдельно. [Протокол](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. Read-only диагностика12.5.30 не установила причину. 12.5.31 выявил текущий отказ авторизацииCHR2 вCLI/REST/SSH. В12.5.32 пользователь восстановил доступCHR2; dashboard/native1→2 passed, блокировка снята. Следующий12.5.33 — оставшиесясценарии по протоколу. [Протокол](ux-ui-external-acceptance.md) и [журнал](ux-ui-stage-12.md) сохраняют точные доказательства и ограничения. Реальные 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 fd3a0a78..70e398fe 100644 --- a/docs/ux-ui-progress.md +++ b/docs/ux-ui-progress.md @@ -1,6 +1,6 @@ # UX/UI: журнал реализации -Актуальное продолжение 2026-10-08: 12.5.31 сравнениеCLI/REST завершено — оба native tests1→2 authentication failed, наблюдениеCHR2 REST401, SSHauthтакжеотклонена. Сохранённые credentials main/test совпадают; конфигурация не менялась. Запрошены актуальные данные или проверка admin наCHR2. Runtimebackend8782054/frontendf194e72/history5 сохранены. Аутентифицированная приёмкаCHR2 ожидает ответа пользователя; остальные12.5 остаются открытыми. +Актуальное продолжение 2026-10-08: 12.5.32 завершён — пользователь восстановил парольCHR2, каталогиBGP/GRE/WireGuard/VXLAN HTTP200/failures0 и realbrowserdashboard без прежнихошибок. Main native1→2 TCPtransmit3s done/HTTP200/Ping53ms0%loss, одна новаяhistorydone (5→6). Runtimebackend8782054/frontendf194e72 прежний, агентпароли не менял. ДоступCHR2 больше не блокирует приёмку; следующий12.5.33 — оставшиесяROS-2/профильныеоперации по протоколу. Общий план: [UX/UI по этапам и пятичасовым окнам](ux-ui-plan.md). План задаёт объём, этот журнал фиксирует выполненные блоки и ограничения. Записи расположены от новых к старым; подробная история этапа12 также сохранена в [ux-ui-stage-12.md](ux-ui-stage-12.md). @@ -34,6 +34,18 @@ | 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.32 — доступ CHR2 восстановлен пользователем; dashboard/native recovery (2026-10-08) + +Пользователь подтвердил восстановление пароля104.165.244.7 и сообщил прежние учётные данные. Агент не менял/не сбрасывал пароль наRouterOS и не переписывал credentials приложения: сохранённые параметры уже подошли после восстановления устройства пользователем. Предыдущее ожидание данных31 снято. + +[Real API/native evidence](ux-ui/acceptance/chr-access-restored-2026-10-08.json): оба enabled CHRonline, BGP/GRE/WireGuard/VXLAN HTTP200/failures[]. Через обычный main speed-route выполнен один TCPtransmit3s1→2/runIdacceptance-restored-1791430842396. HTTP200 за10.3s; nativeconnecting/running/done testing, TX2717.731296/RXnull, after-ping53ms/0%loss. Независимый GET истории подтвердил ровно одну новуюhistorydone для фактической пары/направления; mainhistory5→6 намеренно, как запись этой пользовательской проверки. HTTP/RouterOS-моков нет. Это функциональная проверка, не benchmark. + +[Real browser dashboard](ux-ui/acceptance/dashboard-access-restored-2026-10-08.json): дождались ответов всех четырёх каталогов200/failures0, сообщения BGP/GRE/WireGuard/VXLAN «ошибка обновления» отсутствуют, JSerrors0. Новая headless browsercontext закрыта; основной пользовательский SSH-туннель/стенд сохранены. + +Текущий отказ авторизации и текущийforward-native сценарий устранены восстановлением доступа пользователем. Это не доказывает источник изменения пароля и не позволяет объяснить все прежние transporttimeouts одной причиной. Static195.195.195.195/interface-specific/multi-WAN сценарии не переобъявлены успешными по этому auto-destination тесту. + +Backend8782054/frontendf194e72 прежние; продуктовый код/образ/конфигурацияRouterOS агентом не менялись. Записи журнала о прежних401/500/тайм-аутах сохранены как история. Полный12.5 ещё открыт: busy/disconnect/abort, профильныесетевыеоперации/Q/интеграции. Следующий12.5.33 — оставшиесясценарии по протоколу сработающимдоступомCHR2. План/паспорт/протокол обновлены; локальный коммит без push. + ## 12.5.31 — сравнение native CLI/REST и отказ авторизации CHR2 (2026-10-08) [Sanitized evidence](ux-ui/acceptance/cli-rest-2026-10-08.json): Debiantesthost, sourceCHR1→destinationCHR2. Для SSH1 проверен ранее сохранённый host key. Учётные данные считаны из основной app DB только в память; строки паролей и CLI-команда не печатались/не сохранялись. На временный Debian установлен python3-paramiko для диагностического SSH-клиента; конфигурацияRouterOS не менялась. diff --git a/docs/ux-ui-stage-12.md b/docs/ux-ui-stage-12.md index 11d127a1..b1855a66 100644 --- a/docs/ux-ui-stage-12.md +++ b/docs/ux-ui-stage-12.md @@ -1,6 +1,6 @@ # Этап 12: итоговая приёмка UX/UI -Актуальное продолжение 2026-10-08: 12.5.31 сравнениеCLI/REST завершено — оба native tests1→2 authentication failed, наблюдениеCHR2 REST401, SSHauthтакжеотклонена. Сохранённые credentials main/test совпадают; конфигурация не менялась. Запрошены актуальные данные или проверка admin наCHR2. Runtimebackend8782054/frontendf194e72/history5 сохранены. Аутентифицированная приёмкаCHR2 ожидает ответа пользователя; остальные12.5 остаются открытыми. +Актуальное продолжение 2026-10-08: 12.5.32 завершён — пользователь восстановил парольCHR2, каталогиBGP/GRE/WireGuard/VXLAN HTTP200/failures0 и realbrowserdashboard без прежнихошибок. Main native1→2 TCPtransmit3s done/HTTP200/Ping53ms0%loss, одна новаяhistorydone (5→6). Runtimebackend8782054/frontendf194e72 прежний, агентпароли не менял. ДоступCHR2 больше не блокирует приёмку; следующий12.5.33 — оставшиесяROS-2/профильныеоперации по протоколу. План: [ux-ui-plan.md](ux-ui-plan.md). Фактические результаты: [ux-ui-progress.md](ux-ui-progress.md). Подготовлен после сводных проверок 11Б; завершение каждого блока требует локального коммита без push. @@ -1290,3 +1290,15 @@ NativeCalls0/commandPOSTs[]: bandwidth-test в этом блоке не запу У пользователя запрошены актуальные данные или проверка текущего admin-доступаCHR104.165.244.7. До ответа аутентифицированная приёмкаCHR2 не продолжается. Пароль в БД или наустройстве не изменялся/не сбрасывался. Остальные сценарии, не зависящие отCHR2, можно продолжать отдельно. Временные диагностические процессы завершены; root SSH-сессия закрыта. Основнойbackend8782054healthok/frontendf194e72 сохранён, основнаяspeedHistory5 без изменений. Продуктовый код/UI/deployment не менялись. Следующий шаг после полученияданных — проверить доступ, затем native1→2/appreceipt/history без автоповтора. План/паспорт/протокол обновлены; локальный коммит без push. + +## 12.5.32 — доступ CHR2 восстановлен пользователем; dashboard/native recovery (2026-10-08) + +Пользователь подтвердил восстановление пароля104.165.244.7 и сообщил прежние учётные данные. Агент не менял/не сбрасывал пароль наRouterOS и не переписывал credentials приложения: сохранённые параметры уже подошли после восстановления устройства пользователем. Предыдущее ожидание данных31 снято. + +[Real API/native evidence](ux-ui/acceptance/chr-access-restored-2026-10-08.json): оба enabled CHRonline, BGP/GRE/WireGuard/VXLAN HTTP200/failures[]. Через обычный main speed-route выполнен один TCPtransmit3s1→2/runIdacceptance-restored-1791430842396. HTTP200 за10.3s; nativeconnecting/running/done testing, TX2717.731296/RXnull, after-ping53ms/0%loss. Независимый GET истории подтвердил ровно одну новуюhistorydone для фактической пары/направления; mainhistory5→6 намеренно, как запись этой пользовательской проверки. HTTP/RouterOS-моков нет. Это функциональная проверка, не benchmark. + +[Real browser dashboard](ux-ui/acceptance/dashboard-access-restored-2026-10-08.json): дождались ответов всех четырёх каталогов200/failures0, сообщения BGP/GRE/WireGuard/VXLAN «ошибка обновления» отсутствуют, JSerrors0. Новая headless browsercontext закрыта; основной пользовательский SSH-туннель/стенд сохранены. + +Текущий отказ авторизации и текущийforward-native сценарий устранены восстановлением доступа пользователем. Это не доказывает источник изменения пароля и не позволяет объяснить все прежние transporttimeouts одной причиной. Static195.195.195.195/interface-specific/multi-WAN сценарии не переобъявлены успешными по этому auto-destination тесту. + +Backend8782054/frontendf194e72 прежние; продуктовый код/образ/конфигурацияRouterOS агентом не менялись. Записи журнала о прежних401/500/тайм-аутах сохранены как история. Полный12.5 ещё открыт: busy/disconnect/abort, профильныесетевыеоперации/Q/интеграции. Следующий12.5.33 — оставшиесясценарии по протоколу сработающимдоступомCHR2. План/паспорт/протокол обновлены; локальный коммит без push. diff --git a/docs/ux-ui-test-server.md b/docs/ux-ui-test-server.md index 8220efb4..ebe648c7 100644 --- a/docs/ux-ui-test-server.md +++ b/docs/ux-ui-test-server.md @@ -173,3 +173,7 @@ ssh -N -L 3000:127.0.0.1:3000 -L 8000:127.0.0.1:8000 root@161.104.46.222 ## Текущий доступ CHR2 требует проверки — 2026-10-08 12.5.31 [CLI/REST/SSH comparison](ux-ui/acceptance/cli-rest-2026-10-08.json): CLI3.5s/REST3.0s nativeauthenticationfailed; GETconnections401, SSH2AuthenticationException. Main/testcredentials совпадают, значения не раскрыты. Текущий отказ авторизации подтверждён; причина прежнегоtimeout не доказана. Запрошены актуальные данные или проверкаadmin на104.165.244.7, зависимаяприёмка ожидает ответа. RouterOSconfiguration не менялась, mainruntimebackend8782054/frontendf194e72/history5 сохранён. Независимые12.5 сценарии остаются открытыми. + +## Доступ восстановлен пользователем — 2026-10-08 + +12.5.32 [API/native1→2](ux-ui/acceptance/chr-access-restored-2026-10-08.json), [realbrowserdashboard](ux-ui/acceptance/dashboard-access-restored-2026-10-08.json) passed. Пользователь восстановил парольCHR2; агентне менялRouterOSaccounts/credentialsприложения. Четыре каталога200/failures0, прежниеошибкиUI отсутствуют; nativeTCPtransmit3s1→2 done/HTTP200/53ms0%loss/однаhistorydone. Mainhistory5→6 намеренно; runtimebackend8782054/frontendf194e72 прежний. Старыеисторическиеошибкине переписаны; источник измененияпароля/все прежниеtimeouts не установлены. ОжиданиедоступаCHR2 снято, следующие12.5сценарии ещёоткрыты. diff --git a/docs/ux-ui/acceptance/chr-access-restored-2026-10-08.json b/docs/ux-ui/acceptance/chr-access-restored-2026-10-08.json new file mode 100644 index 00000000..c500800b --- /dev/null +++ b/docs/ux-ui/acceptance/chr-access-restored-2026-10-08.json @@ -0,0 +1,85 @@ +{ + "date": "2026-10-08", + "backendSource": "8782054", + "frontendSource": "f194e72", + "passwordRestoredBy": "user", + "httpMocks": false, + "routerOsMocks": false, + "reads": [ + { + "path": "/api/bgp/catalog", + "status": 200, + "failures": [] + }, + { + "path": "/api/filters/gre-tunnels", + "status": 200, + "failures": [] + }, + { + "path": "/api/wireguard", + "status": 200, + "failures": [] + }, + { + "path": "/api/vxlan", + "status": 200, + "failures": [] + } + ], + "runId": "acceptance-restored-1791430842396", + "httpStatus": 200, + "elapsedSec": 10.3, + "error": null, + "result": { + "address": "104.165.244.7", + "txAvgMbps": 2717.731296, + "rxAvgMbps": null, + "afterBtPing": { + "rttMs": 53, + "lossPct": 0, + "error": null + }, + "nativeStatuses": [ + "connecting", + "running", + "running", + "running", + "done testing" + ] + }, + "history": [ + { + "id": "acceptance-restored-1791430842396", + "probeId": null, + "srcServerId": "1", + "dstServerId": "2", + "srcInterface": "", + "dstInterface": "", + "protocol": "tcp", + "direction": "transmit", + "durationSec": 3, + "txAvgMbps": 2717.731296, + "rxAvgMbps": null, + "status": "done", + "error": null, + "createdAt": "2026-10-08T03:40:48.980Z", + "srcAddress": "194.226.121.150", + "dstAddress": "104.165.244.7", + "srcInterfaceAddress": null, + "dstInterfaceAddress": null, + "afterBtPing": { + "rttMs": 53, + "lossPct": 0, + "error": null + } + } + ], + "historyBeforeCount": 5, + "historyAfterCount": 6, + "limits": [ + "One short functional TCP transmit3s, not benchmark", + "Main application history intentionally records this validation run", + "User restored RouterOS password; agent did not change accounts" + ] +} diff --git a/docs/ux-ui/acceptance/dashboard-access-restored-2026-10-08.json b/docs/ux-ui/acceptance/dashboard-access-restored-2026-10-08.json new file mode 100644 index 00000000..abdbd29d --- /dev/null +++ b/docs/ux-ui/acceptance/dashboard-access-restored-2026-10-08.json @@ -0,0 +1,28 @@ +{ + "date": "2026-10-08", + "httpMocks": false, + "reads": [ + { + "path": "/api/bgp/catalog", + "status": 200, + "failures": [] + }, + { + "path": "/api/filters/gre-tunnels", + "status": 200, + "failures": [] + }, + { + "path": "/api/wireguard", + "status": 200, + "failures": [] + }, + { + "path": "/api/vxlan", + "status": 200, + "failures": [] + } + ], + "reportedErrorsAbsent": true, + "pageErrors": [] +}