From 49af17178eff1bcf0f73eda411bd890f6c0b2696 Mon Sep 17 00:00:00 2001 From: Denozordec Date: Thu, 8 Oct 2026 10:49:26 +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=20UDP-=D1=82=D0=B5=D1=81?= =?UTF-8?q?=D1=82=20=D0=B8=20=D0=B8=D1=81=D1=82=D0=BE=D1=80=D0=B8=D1=8E=20?= =?UTF-8?q?=D0=B2=20=D1=80=D0=B5=D0=B0=D0=BB=D1=8C=D0=BD=D0=BE=D0=BC=20?= =?UTF-8?q?=D0=B8=D0=BD=D1=82=D0=B5=D1=80=D1=84=D0=B5=D0=B9=D1=81=D0=B5?= 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 | 12 ++- docs/ux-ui-stage-12.md | 12 ++- docs/ux-ui-test-server.md | 4 + .../acceptance/speed-udp-2026-10-08.json | 74 +++++++++++++++++++ 6 files changed, 106 insertions(+), 4 deletions(-) create mode 100644 docs/ux-ui/acceptance/speed-udp-2026-10-08.json diff --git a/docs/ux-ui-external-acceptance.md b/docs/ux-ui-external-acceptance.md index a8e985e1..71b81fb0 100644 --- a/docs/ux-ui-external-acceptance.md +++ b/docs/ux-ui-external-acceptance.md @@ -173,3 +173,7 @@ BGP-prefix evaluator, отдельное live GRE расписание и recove ## TCP directions после восстановления — 2026-10-08 12.5.33 [receive/both native/API/history](ux-ui/acceptance/speed-directions-recovered-2026-10-08.json) passed: две TCP3s команды1→2, HTTP200/done testing, receiveTXnull/RXmeasured, bothTXRXmeasured, Ping53ms0%loss. УникальныеGEThistory строки совпали сAPI; mainhistory6→8 намеренно. Это функциональные значения, неbenchmark. Runtimebackend8782054/frontendf194e72/RouterOSconfiguration прежние. Следующий12.5.34 — ограниченныйUDPtest; остальные12.5сценарии открыты. + +## UDP native/API/history/UI — 2026-10-08 + +12.5.34 [UDPtransmit3s](ux-ui/acceptance/speed-udp-2026-10-08.json) passed: HTTP200/native done testing, TXmeasured/RXnull, Ping53ms0%loss; independenthistory/realbrowserUDP/done/unknownRX/320fits/JS0. Mainhistory8→9 намеренно. Rate cap не задавался, ограничение поduration3s; packet-deliveryratio/benchmark не заявлены. КонфигурацияRouterOS/пароли/runtimebackend8782054/frontendf194e72 прежние. Следующий12.5.35 — Q-6 PostgreSQL dedupe без реальнойотправки сообщений. Остальной12.5 открыт. diff --git a/docs/ux-ui-plan.md b/docs/ux-ui-plan.md index 07813b1e..4f71edee 100644 --- a/docs/ux-ui-plan.md +++ b/docs/ux-ui-plan.md @@ -1,12 +1,12 @@ # План реализации UX/UI по пятичасовым окнам -Актуальное продолжение 2026-10-08: 12.5.33 завершён — после восстановленияCHR2 реальные TCP receive/both1→2 done/HTTP200, API/history совпали, receiveTXnull, Ping53ms0%loss. Две новые mainhistory записи8всего (6→8). Runtimebackend8782054/frontendf194e72 прежний. Следующий12.5.34 — ограниченный UDP native test; busy/disconnect/abort и остальной12.5 остаются открытыми. +Актуальное продолжение 2026-10-08: 12.5.34 завершён — реальный UDPtransmit3s1→2 done/HTTP200, API/history/UI совпали, RXnull/«Неизвестно», Ping53ms0%loss,320fits/JS0. Mainhistory8→9 намеренно. Runtimebackend8782054/frontendf194e72 прежний. Следующий12.5.35 — Q-6: конкурентный enqueue/dedupe в выделенномPostgreSQL без отправки сообщений; busy/disconnect/abort и остальные12.5 открыты. Общий план проекта 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. В12.5.32 пользователь восстановил доступCHR2; dashboard/native1→2 passed, блокировка снята. TCP receive/both подтверждены после восстановлениядоступа в12.5.33; следующий12.5.34 — ограниченный native UDP test. [Протокол](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, блокировка снята. TCP receive/both подтверждены после восстановлениядоступа в12.5.33; UDP transmit3s/API/history/UI подтверждены в12.5.34; следующий12.5.35 — PostgreSQL enqueue/dedupe Q-6 без отправки сообщений. [Протокол](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 f12a68c0..55da8629 100644 --- a/docs/ux-ui-progress.md +++ b/docs/ux-ui-progress.md @@ -1,6 +1,6 @@ # UX/UI: журнал реализации -Актуальное продолжение 2026-10-08: 12.5.33 завершён — после восстановленияCHR2 реальные TCP receive/both1→2 done/HTTP200, API/history совпали, receiveTXnull, Ping53ms0%loss. Две новые mainhistory записи8всего (6→8). Runtimebackend8782054/frontendf194e72 прежний. Следующий12.5.34 — ограниченный UDP native test; busy/disconnect/abort и остальной12.5 остаются открытыми. +Актуальное продолжение 2026-10-08: 12.5.34 завершён — реальный UDPtransmit3s1→2 done/HTTP200, API/history/UI совпали, RXnull/«Неизвестно», Ping53ms0%loss,320fits/JS0. Mainhistory8→9 намеренно. Runtimebackend8782054/frontendf194e72 прежний. Следующий12.5.35 — Q-6: конкурентный enqueue/dedupe в выделенномPostgreSQL без отправки сообщений; busy/disconnect/abort и остальные12.5 открыты. Общий план: [UX/UI по этапам и пятичасовым окнам](ux-ui-plan.md). План задаёт объём, этот журнал фиксирует выполненные блоки и ограничения. Записи расположены от новых к старым; подробная история этапа12 также сохранена в [ux-ui-stage-12.md](ux-ui-stage-12.md). @@ -34,6 +34,16 @@ | 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.34 — короткий UDP native test и реальная история UI (2026-10-08) + +Пятичасовой остаток перед блоком13%; выполнен один самостоятельный тест без изменениякода/образов. [Real native/API/browser evidence](ux-ui/acceptance/speed-udp-2026-10-08.json): основной стендbackend8782054/frontendf194e72, CHR1→CHR2, UDP/transmit/duration3s. HTTP/RouterOS-моков нет. Один POST, native connecting/running/done testing, HTTP200 за10.3s; TX3712.811856Mbps, RXnull, after-ping53ms/0%loss. + +НезависимыйGEThistory подтвердил ровно одну строку с темжеrunId, protocolUDP/statusdone, точнымTX иRXnull; mainhistory8→9 намеренно. Реальный браузер uptime-speed показалUDP/done/TX3713Мбит/с и «Неизвестно» дляRX. 320pxfits,JSerrors0. Browsercontext закрыта, основнойстенд/туннель сохранены. + +Это трёхсекундная функциональнаяпроверка; rate cap текущийAPI не задаёт, нагрузка ограничена длительностью. ЗначениеsenderTX и последующийPing не доказываютUDPpacket-deliveryratio приёмника или устойчивуюпропускнуюспособность. НовыеUDP directions/размерыpacket/длительнаянагрузка не проверялись. RouterOSконфигурация/пароли/сnapshotпроб (runбезprobeId) не менялись; продуктовыйкод иобразы прежние. + +Следующий12.5.35 — Q-6: конкурентный enqueue с однимdedupekey в выделенномPostgreSQL, без фактическойотправки сообщений. ROS-2busy/disconnect/abort, профильныесетевыеоперации/Q/интеграции иполный12.5 остаютсяоткрытыми. План/паспорт/протокол обновлены; локальный коммит без push. + ## 12.5.33 — направления receive/both после восстановления CHR2 (2026-10-08) Пятичасовой остаток перед блоком17%; выбран самостоятельный короткий блок без сборки/модификации компонентов. [Real native/API evidence](ux-ui/acceptance/speed-directions-recovered-2026-10-08.json): текущий backend8782054/frontendf194e72, mainAPI, CHR1→CHR2, TCP/duration3s, последовательно receive иboth. HTTP/RouterOS-моков нет; по одной команде на направление, автоматических повторов нет. diff --git a/docs/ux-ui-stage-12.md b/docs/ux-ui-stage-12.md index 058b158a..ffa132ef 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.33 завершён — после восстановленияCHR2 реальные TCP receive/both1→2 done/HTTP200, API/history совпали, receiveTXnull, Ping53ms0%loss. Две новые mainhistory записи8всего (6→8). Runtimebackend8782054/frontendf194e72 прежний. Следующий12.5.34 — ограниченный UDP native test; busy/disconnect/abort и остальной12.5 остаются открытыми. +Актуальное продолжение 2026-10-08: 12.5.34 завершён — реальный UDPtransmit3s1→2 done/HTTP200, API/history/UI совпали, RXnull/«Неизвестно», Ping53ms0%loss,320fits/JS0. Mainhistory8→9 намеренно. Runtimebackend8782054/frontendf194e72 прежний. Следующий12.5.35 — Q-6: конкурентный enqueue/dedupe в выделенномPostgreSQL без отправки сообщений; busy/disconnect/abort и остальные12.5 открыты. План: [ux-ui-plan.md](ux-ui-plan.md). Фактические результаты: [ux-ui-progress.md](ux-ui-progress.md). Подготовлен после сводных проверок 11Б; завершение каждого блока требует локального коммита без push. @@ -1312,3 +1312,13 @@ Receive: HTTP200/10.3s/native done testing, RX4089.843456Mbps, TXnull. Both: HTT Mainhistory6→8 намеренно: ровно две записи этой приёмки. Probe snapshot не затрагивался (run безprobeId). Агентне менялRouterOSpassword/настройки/адреса; продуктовый код, образы иUI прежние. Это повторнаяпроверка направлений после восстановлениядоступа пользователем, не переобъявлениестарыхпрогонов. Вместе сtransmit12.5.32 ROS-1TCP направления подтверждены на текущемдоступе. Native UDP/busy/disconnect/abort, multi-WAN/профильныеоперации/Q/интеграции ещёоткрыты. Следующий12.5.34 — ограниченный UDP native test с явными границами; полная12.5приёмка не закрыта. План/паспорт/протокол обновлены; локальный коммит без push. + +## 12.5.34 — короткий UDP native test и реальная история UI (2026-10-08) + +Пятичасовой остаток перед блоком13%; выполнен один самостоятельный тест без изменениякода/образов. [Real native/API/browser evidence](ux-ui/acceptance/speed-udp-2026-10-08.json): основной стендbackend8782054/frontendf194e72, CHR1→CHR2, UDP/transmit/duration3s. HTTP/RouterOS-моков нет. Один POST, native connecting/running/done testing, HTTP200 за10.3s; TX3712.811856Mbps, RXnull, after-ping53ms/0%loss. + +НезависимыйGEThistory подтвердил ровно одну строку с темжеrunId, protocolUDP/statusdone, точнымTX иRXnull; mainhistory8→9 намеренно. Реальный браузер uptime-speed показалUDP/done/TX3713Мбит/с и «Неизвестно» дляRX. 320pxfits,JSerrors0. Browsercontext закрыта, основнойстенд/туннель сохранены. + +Это трёхсекундная функциональнаяпроверка; rate cap текущийAPI не задаёт, нагрузка ограничена длительностью. ЗначениеsenderTX и последующийPing не доказываютUDPpacket-deliveryratio приёмника или устойчивуюпропускнуюспособность. НовыеUDP directions/размерыpacket/длительнаянагрузка не проверялись. RouterOSконфигурация/пароли/сnapshotпроб (runбезprobeId) не менялись; продуктовыйкод иобразы прежние. + +Следующий12.5.35 — Q-6: конкурентный enqueue с однимdedupekey в выделенномPostgreSQL, без фактическойотправки сообщений. ROS-2busy/disconnect/abort, профильныесетевыеоперации/Q/интеграции иполный12.5 остаютсяоткрытыми. План/паспорт/протокол обновлены; локальный коммит без push. diff --git a/docs/ux-ui-test-server.md b/docs/ux-ui-test-server.md index 12886230..45c80568 100644 --- a/docs/ux-ui-test-server.md +++ b/docs/ux-ui-test-server.md @@ -181,3 +181,7 @@ ssh -N -L 3000:127.0.0.1:3000 -L 8000:127.0.0.1:8000 root@161.104.46.222 ## TCP directions после восстановления — 2026-10-08 12.5.33 [receive/both native/API/history](ux-ui/acceptance/speed-directions-recovered-2026-10-08.json) passed: две TCP3s команды1→2, HTTP200/done testing, receiveTXnull/RXmeasured, bothTXRXmeasured, Ping53ms0%loss. УникальныеGEThistory строки совпали сAPI; mainhistory6→8 намеренно. Это функциональные значения, неbenchmark. Runtimebackend8782054/frontendf194e72/RouterOSconfiguration прежние. Следующий12.5.34 — ограниченныйUDPtest; остальные12.5сценарии открыты. + +## UDP native/API/history/UI — 2026-10-08 + +12.5.34 [UDPtransmit3s](ux-ui/acceptance/speed-udp-2026-10-08.json) passed: HTTP200/native done testing, TXmeasured/RXnull, Ping53ms0%loss; independenthistory/realbrowserUDP/done/unknownRX/320fits/JS0. Mainhistory8→9 намеренно. Rate cap не задавался, ограничение поduration3s; packet-deliveryratio/benchmark не заявлены. КонфигурацияRouterOS/пароли/runtimebackend8782054/frontendf194e72 прежние. Следующий12.5.35 — Q-6 PostgreSQL dedupe без реальнойотправки сообщений. Остальной12.5 открыт. diff --git a/docs/ux-ui/acceptance/speed-udp-2026-10-08.json b/docs/ux-ui/acceptance/speed-udp-2026-10-08.json new file mode 100644 index 00000000..b8461666 --- /dev/null +++ b/docs/ux-ui/acceptance/speed-udp-2026-10-08.json @@ -0,0 +1,74 @@ +{ + "date": "2026-10-08", + "backendSource": "8782054", + "frontendSource": "f194e72", + "httpMocks": false, + "routerOsMocks": false, + "runId": "acceptance-udp-1791431215612", + "httpStatus": 200, + "elapsedSec": 10.3, + "error": null, + "result": { + "protocol": "udp", + "direction": "transmit", + "address": "104.165.244.7", + "txAvgMbps": 3712.811856, + "rxAvgMbps": null, + "afterBtPing": { + "rttMs": 53, + "lossPct": 0, + "error": null + }, + "nativeStatuses": [ + "connecting", + "running", + "running", + "running", + "done testing" + ] + }, + "history": [ + { + "id": "acceptance-udp-1791431215612", + "probeId": null, + "srcServerId": "1", + "dstServerId": "2", + "srcInterface": "", + "dstInterface": "", + "protocol": "udp", + "direction": "transmit", + "durationSec": 3, + "txAvgMbps": 3712.811856, + "rxAvgMbps": null, + "status": "done", + "error": null, + "createdAt": "2026-10-08T03:47:01.240Z", + "srcAddress": "194.226.121.150", + "dstAddress": "104.165.244.7", + "srcInterfaceAddress": null, + "dstInterfaceAddress": null, + "afterBtPing": { + "rttMs": 53, + "lossPct": 0, + "error": null + } + } + ], + "historyBefore": 8, + "historyAfter": 9, + "nativeCommands": 1, + "limits": [ + "One functional UDP transmit test, requested duration3s; not benchmark", + "No explicit rate cap in current app command; duration limits test load", + "Main application history intentionally records this validation run", + "No RouterOS configuration or account changes", + "Sender TX and post-test Ping do not prove receiver UDP packet-delivery ratio" + ], + "browser": { + "udpRowConfirmed": true, + "txMatchesRoundedReceipt": true, + "unmeasuredRxUnknown": true, + "mobileFits": true, + "pageErrors": [] + } +}