diff --git a/docs/ux-ui-external-acceptance.md b/docs/ux-ui-external-acceptance.md index 778e403b..5ff4583a 100644 --- a/docs/ux-ui-external-acceptance.md +++ b/docs/ux-ui-external-acceptance.md @@ -1,6 +1,6 @@ # UX/UI: протокол внешней приёмки 12.5 -Актуальное продолжение 2026-10-10: завершены12.5.93–96. BGP/BFD alternate-path, актуальная матрица, source/context/compiled audit и speed POST/SQL/GET/browser timezone6/6 приняты в описанных границах. Runtime backend ux-diagnostics89/frontend ux-ospf91, production source изменений нет. Следующий12.5.97 — ограниченный реальный HTTP disconnect native bandwidth receipt и сохранение последнего snapshot. Этап12.5 открыт. +Актуальное продолжение 2026-10-10: завершены12.5.93–97. Реальный HTTP receipt disconnect после передачи короткой bandwidth команды: API502/error history, предыдущие snapshots сохранены, native1/noauto retry, independent native done и UI2/2. Own DB fixtures удалены. Следующий12.5.98 — заменить техническое timeout/socket сообщение понятным пояснением неизвестного native результата, профильная проверка/deploy; затем общая регрессия. Runtime backend ux-diagnostics89/frontend ux-ospf91. Этап12.5 открыт. IPsec78: реальный PSK responder established, mode-config198.18.78.10 и online=true подтверждены API; точные собственные объекты удалены. Сертификатный/DN online, late failure и history restore остаются открытыми. [Отчёт](ux-ui/acceptance/ipsec-mode-config-2026-10-09.json), [журнал](ux-ui-progress.md). @@ -700,7 +700,7 @@ flowchart LR ## 12.5.77 — основной блок IPsec (2026-10-09) -Актуальное продолжение 2026-10-10: завершены12.5.93–96. BGP/BFD alternate-path, актуальная матрица, source/context/compiled audit и speed POST/SQL/GET/browser timezone6/6 приняты в описанных границах. Runtime backend ux-diagnostics89/frontend ux-ospf91, production source изменений нет. Следующий12.5.97 — ограниченный реальный HTTP disconnect native bandwidth receipt и сохранение последнего snapshot. Этап12.5 открыт. +Актуальное продолжение 2026-10-10: завершены12.5.93–97. Реальный HTTP receipt disconnect после передачи короткой bandwidth команды: API502/error history, предыдущие snapshots сохранены, native1/noauto retry, independent native done и UI2/2. Own DB fixtures удалены. Следующий12.5.98 — заменить техническое timeout/socket сообщение понятным пояснением неизвестного native результата, профильная проверка/deploy; затем общая регрессия. Runtime backend ux-diagnostics89/frontend ux-ospf91. Этап12.5 открыт. Подробный объём, протоколы, схема и ограничения: [12.5.77 в журнале](ux-ui-progress.md). @@ -915,3 +915,13 @@ POST result.createdAt, SQL created_at и production GET истории совп Две предварительные попытки завершили native тест, но остановились в fixture: лишнее требование Ping0% при фактических25% и Date.parse(Date) с потерей ms. Исправлены только тестовые условия/getTime; реальные timestamp продукта не менялись. Три коротких capped native команды всего, принятый итоговый Ping сохранён в отчёте; успешные browser/native checks повторно не выполнялись. Все три own history IDs удалены, исходный список истории сохранён; процессов/fixtures не осталось, аккаунты/RouterOS конфигурация не менялись. ROS-10 принят для текущей версии POST/GET и перечисленных timezone; legacy receipt безcreatedAt сохраняет прежний отдельный fallback. Source/build/deploy0. Следующий97 — реальный обрыв HTTP receipt bandwidth-test через локальный relay, без изменения устройств и с независимым наблюдением короткого native завершения; не заявлять это physical WAN loss или auto cancellation. Квота15% использовано, этап12.5 открыт. Один локальный коммит без push. + +## 12.5.97 — реальный обрыв HTTP receipt bandwidth-test (2026-10-10) + +[Native/SQL/cleanup](ux-ui/acceptance/speed-disconnect-2026-10-10.json), [live browser](ux-ui/acceptance/browser-speed-disconnect-2026-10-10.json). Собственная disabled speed-проба с явно синтетическим прежним snapshot42/17Mbit/s/Ping15ms/0% для проверки сохранения. Actual compiled speed route/service/MikrotikClient/PG; source client направлен через локальный HTTP relay, destination/account/RouterOS не менялись. Relay передал настоящую TCP transmit3s команду с native cap10Mbit/s и через100ms после отправки закрыл receipt socket. Independent upstream продолжил читать ответ и подтвердил done testing; это реальный HTTP socket disconnect после отправки, не подмена ответа/throw вместо сети. + +API502, history error/TXRX/Pingnull, probe error с прежними42/17/15/0; nativeCount1/noauto retry. App не получила доказательство завершения и не записала done, хотя relay независимо видел успешный native конец. UI2/2 на1280/320: error history/reload/document fits/pageerror0, API сохраняет старые snapshots; UI command POST0. Визуальное отображение card metrics отдельно не утверждается этим read-only сценарием. + +Свои history/probe exact IDs удалены, исходные списки совпали, только3 compose containers/backend/PG healthy. Один короткий capped native запуск с первой попытки, без RouterOS configuration/account changes/build/deploy. Native команда не отменялась; physical WAN failure/abort/multi-instance locks не приняты. Lab AUTH_REQUIRED=false, rights не проверялись повторно. HTTP ошибка приложения не доказывает failure native команды. + +Обнаружено оставшееся UX ограничение: timeout/socket message техническая и не объясняет неопределённость native результата. Следующий98 — единый понятный transport error для HTTP/history, профильные tests и один backend build/live повтор только изменённого message path; затем общая регрессия на согласованном runtime. Этап12.5 открыт. Один локальный коммит без push. diff --git a/docs/ux-ui-plan.md b/docs/ux-ui-plan.md index 24220b71..a6e79c7b 100644 --- a/docs/ux-ui-plan.md +++ b/docs/ux-ui-plan.md @@ -1,12 +1,12 @@ # План реализации UX/UI по пятичасовым окнам -Актуальное продолжение 2026-10-10: завершены12.5.93–96. BGP/BFD alternate-path, актуальная матрица, source/context/compiled audit и speed POST/SQL/GET/browser timezone6/6 приняты в описанных границах. Runtime backend ux-diagnostics89/frontend ux-ospf91, production source изменений нет. Следующий12.5.97 — ограниченный реальный HTTP disconnect native bandwidth receipt и сохранение последнего snapshot. Этап12.5 открыт. +Актуальное продолжение 2026-10-10: завершены12.5.93–97. Реальный HTTP receipt disconnect после передачи короткой bandwidth команды: API502/error history, предыдущие snapshots сохранены, native1/noauto retry, independent native done и UI2/2. Own DB fixtures удалены. Следующий12.5.98 — заменить техническое timeout/socket сообщение понятным пояснением неизвестного native результата, профильная проверка/deploy; затем общая регрессия. Runtime backend ux-diagnostics89/frontend ux-ospf91. Этап12.5 открыт. Общий план проекта MikrotikManager. Основан на согласованном плане из задачи; точка продолжения обновлена 2026-10-10. Источник фактического прогресса, проверок и ограничений — [журнал реализации](ux-ui-progress.md). Этот документ задаёт объём и критерии завершения, журнал фиксирует результат. ## Актуальная точка продолжения — 2026-10-10 -Актуальное продолжение 2026-10-10: завершены12.5.93–96. BGP/BFD alternate-path, актуальная матрица, source/context/compiled audit и speed POST/SQL/GET/browser timezone6/6 приняты в описанных границах. Runtime backend ux-diagnostics89/frontend ux-ospf91, production source изменений нет. Следующий12.5.97 — ограниченный реальный HTTP disconnect native bandwidth receipt и сохранение последнего snapshot. Этап12.5 открыт. +Актуальное продолжение 2026-10-10: завершены12.5.93–97. Реальный HTTP receipt disconnect после передачи короткой bandwidth команды: API502/error history, предыдущие snapshots сохранены, native1/noauto retry, independent native done и UI2/2. Own DB fixtures удалены. Следующий12.5.98 — заменить техническое timeout/socket сообщение понятным пояснением неизвестного native результата, профильная проверка/deploy; затем общая регрессия. Runtime backend ux-diagnostics89/frontend ux-ospf91. Этап12.5 открыт. Этапы0–11 завершены в локальных границах журнала. История выполненных внешних блоков и доказательства сохранены в [журнале](ux-ui-stage-12.md) и [протоколе](ux-ui-external-acceptance.md). Реальная Telegram доставка, Portal SSO, multi-instance и оставшиеся профильные сетевые ограничения открыты. @@ -371,6 +371,6 @@ flowchart LR ## 12.5.77 — основной блок IPsec (2026-10-09) -Актуальное продолжение 2026-10-10: завершены12.5.93–96. BGP/BFD alternate-path, актуальная матрица, source/context/compiled audit и speed POST/SQL/GET/browser timezone6/6 приняты в описанных границах. Runtime backend ux-diagnostics89/frontend ux-ospf91, production source изменений нет. Следующий12.5.97 — ограниченный реальный HTTP disconnect native bandwidth receipt и сохранение последнего snapshot. Этап12.5 открыт. +Актуальное продолжение 2026-10-10: завершены12.5.93–97. Реальный HTTP receipt disconnect после передачи короткой bandwidth команды: API502/error history, предыдущие snapshots сохранены, native1/noauto retry, independent native done и UI2/2. Own DB fixtures удалены. Следующий12.5.98 — заменить техническое timeout/socket сообщение понятным пояснением неизвестного native результата, профильная проверка/deploy; затем общая регрессия. Runtime backend ux-diagnostics89/frontend ux-ospf91. Этап12.5 открыт. Подробный объём, протоколы, схема и ограничения: [12.5.77 в журнале](ux-ui-progress.md). diff --git a/docs/ux-ui-progress.md b/docs/ux-ui-progress.md index 9be3ada5..3072d796 100644 --- a/docs/ux-ui-progress.md +++ b/docs/ux-ui-progress.md @@ -1,6 +1,6 @@ # UX/UI: журнал реализации -Актуальное продолжение 2026-10-10: завершены12.5.93–96. BGP/BFD alternate-path, актуальная матрица, source/context/compiled audit и speed POST/SQL/GET/browser timezone6/6 приняты в описанных границах. Runtime backend ux-diagnostics89/frontend ux-ospf91, production source изменений нет. Следующий12.5.97 — ограниченный реальный HTTP disconnect native bandwidth receipt и сохранение последнего snapshot. Этап12.5 открыт. +Актуальное продолжение 2026-10-10: завершены12.5.93–97. Реальный HTTP receipt disconnect после передачи короткой bandwidth команды: API502/error history, предыдущие snapshots сохранены, native1/noauto retry, independent native done и UI2/2. Own DB fixtures удалены. Следующий12.5.98 — заменить техническое timeout/socket сообщение понятным пояснением неизвестного native результата, профильная проверка/deploy; затем общая регрессия. Runtime backend ux-diagnostics89/frontend ux-ospf91. Этап12.5 открыт. Общий план: [UX/UI по этапам и пятичасовым окнам](ux-ui-plan.md). План задаёт объём, этот журнал фиксирует выполненные блоки и ограничения. Записи расположены от новых к старым; подробная история этапа12 также сохранена в [ux-ui-stage-12.md](ux-ui-stage-12.md). @@ -36,7 +36,17 @@ | 10 | Маршрутизация, диагностика, карта и терминал | Завершён в границах локальной приёмки 2026-10-01; блоки 10.1–10.71, внешние ограничения в 10.71 | | 11А | Пользователи, контейнеры, сертификаты и резервные копии | Завершён в границах локальной приёмки 2026-10-01; 11А.1–11А.33, внешние ограничения в 11А.33 | | 11Б | Оповещения, сбор данных, интеграции, релизы и настройки | Завершён в границах локальной приёмки 2026-10-03; ограничения и evidence в11Б.7 | -| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Локальная приёмка завершена в границах12.3.83; внешняя12.5 в работе, выполненные блоки1–96 и ограничения ниже. Runtime backend ux-diagnostics89/frontend ux-ospf91. | +| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Локальная приёмка завершена в границах12.3.83; внешняя12.5 в работе, выполненные блоки1–97 и ограничения ниже. Runtime backend ux-diagnostics89/frontend ux-ospf91. | + +## 12.5.97 — реальный обрыв HTTP receipt bandwidth-test (2026-10-10) + +[Native/SQL/cleanup](ux-ui/acceptance/speed-disconnect-2026-10-10.json), [live browser](ux-ui/acceptance/browser-speed-disconnect-2026-10-10.json). Собственная disabled speed-проба с явно синтетическим прежним snapshot42/17Mbit/s/Ping15ms/0% для проверки сохранения. Actual compiled speed route/service/MikrotikClient/PG; source client направлен через локальный HTTP relay, destination/account/RouterOS не менялись. Relay передал настоящую TCP transmit3s команду с native cap10Mbit/s и через100ms после отправки закрыл receipt socket. Independent upstream продолжил читать ответ и подтвердил done testing; это реальный HTTP socket disconnect после отправки, не подмена ответа/throw вместо сети. + +API502, history error/TXRX/Pingnull, probe error с прежними42/17/15/0; nativeCount1/noauto retry. App не получила доказательство завершения и не записала done, хотя relay независимо видел успешный native конец. UI2/2 на1280/320: error history/reload/document fits/pageerror0, API сохраняет старые snapshots; UI command POST0. Визуальное отображение card metrics отдельно не утверждается этим read-only сценарием. + +Свои history/probe exact IDs удалены, исходные списки совпали, только3 compose containers/backend/PG healthy. Один короткий capped native запуск с первой попытки, без RouterOS configuration/account changes/build/deploy. Native команда не отменялась; physical WAN failure/abort/multi-instance locks не приняты. Lab AUTH_REQUIRED=false, rights не проверялись повторно. HTTP ошибка приложения не доказывает failure native команды. + +Обнаружено оставшееся UX ограничение: timeout/socket message техническая и не объясняет неопределённость native результата. Следующий98 — единый понятный transport error для HTTP/history, профильные tests и один backend build/live повтор только изменённого message path; затем общая регрессия на согласованном runtime. Этап12.5 открыт. Один локальный коммит без push. ## 12.5.96 — speed history: одинаковый instant в трёх часовых поясах (2026-10-10) diff --git a/docs/ux-ui-remaining-acceptance.md b/docs/ux-ui-remaining-acceptance.md index 7b956e6a..771f2f0c 100644 --- a/docs/ux-ui-remaining-acceptance.md +++ b/docs/ux-ui-remaining-acceptance.md @@ -1,13 +1,13 @@ # Оставшаяся внешняя приёмка — 2026-10-10 -Это актуальная матрица после 12.5.96. Исторические записи сохраняют версии и ограничения на момент выполнения; поздние проверки ниже уточняют их. Этап 12.5 открыт. Успех в двух CHR и одном backend не означает приёмку всех конфигураций, интеграций или полной регрессии. +Это актуальная матрица после 12.5.97. Исторические записи сохраняют версии и ограничения на момент выполнения; поздние проверки ниже уточняют их. Этап 12.5 открыт. Успех в двух CHR и одном backend не означает приёмку всех конфигураций, интеграций или полной регрессии. Стенд: Debian13/Compose, PostgreSQL18.6, два CHR RouterOS7.24.5. Backend `ux-diagnostics89`, frontend `ux-ospf91`; production lab использует AUTH_REQUIRED=false. Подписанные JWT/RBAC проверялись в изолированных процессах. Все собственные объекты последнего сценария удалены, исходные11 коллекций×2 восстановлены; пароли не менялись. | Раздел | Подтверждено | Осталось / условие завершения | | --- | --- | --- | | PostgreSQL | Bootstrap, backup/restore, SQL rollback, concurrency, writer drain одного экземпляра, JWT guards и unknown commit: блоки14–24 | Несколько backend/worker экземпляров и координация всех writers; физическая потеря соединения отличается от введённого отказа подтверждения | -| Speed/uptime | TCP transmit/receive/both32–33, короткий UDP34, auth failure25, transport timeout27, интерфейс after-ping28–29, snapshot/history race23–24 | Busy/abort/реальный disconnect; независимое доказательство multi-WAN source/path; Home→JH/JH↔Exit с асимметричными каналами ; ROS-10 POST/SQL/GET и три часовых пояса приняты96. Короткие тесты не доказывают maximum throughput | +| Speed/uptime | TCP transmit/receive/both32–33, короткий UDP34, auth failure25, transport timeout27, интерфейс after-ping28–29, snapshot/history race23–24 | Busy/abort/physical WAN disconnect; HTTP receipt socket disconnect принят97; независимое доказательство multi-WAN source/path; Home→JH/JH↔Exit с асимметричными каналами ; ROS-10 POST/SQL/GET и три часовых пояса приняты96. Короткие тесты не доказывают maximum throughput | | Outbox | Production PG claim/dedupe/settlement/retry/JWT/browser checkpoint/a11y35–49 | Настоящий Telegram API/чат, физический timeout после возможной отправки, несколько sender процессов. Нужны тестовый бот/чат и прямое разрешение на конкретное сообщение; подменённый ответ не доказывает доставку | | GRE | Native lifecycle, metadata, live формы/меню/URL/Ping53–57; GRE используется в OSPF/BGP/IPsec последующих блоков | IPv6, независимые WAN, масштаб и длительное восстановление; принятие GRE не означает приёмку всех сценариев автоматического расписания | | WireGuard | Native handshake/data plane58, deletion60, live create/peer/disable/enable/delete62, mobile64, export/import67–74 | Клиентские ОС и произвольные конфигурации, IPv6/scale, физический lost ACK и устойчивое восстановление; `.conf` с placeholders — шаблон, не принятый клиентский tunnel | @@ -25,7 +25,7 @@ ## Следующая последовательность 1. **12.5.95 завершён:** [source/context/compiled audit](ux-ui/acceptance/deployment-source-audit-2026-10-10.json), production source drift не выявлен; нормализация и исключения явно указаны. -2. **12.5.96 timezone завершён:** [6 live UI cases](ux-ui/acceptance/browser-speed-timezone-2026-10-10.json). Следующий97 — HTTP receipt disconnect через relay, короткая capped команда и сохранение snapshot без auto retry. +2. **12.5.96 timezone завершён:** [6 live UI cases](ux-ui/acceptance/browser-speed-timezone-2026-10-10.json). 97 HTTP receipt disconnect принят: [протокол](ux-ui/acceptance/speed-disconnect-2026-10-10.json). Следующий98 — понятное сообщение неизвестного native результата. 3. **Заключительный профильный контроль:** после последнего исправления собрать только затронутую часть, проверить её live и обновить матрицу. Общую регрессию выполнить один раз на согласованном runtime. 4. **Внешние зависимости:** Telegram/Portal/client OS/multi-WAN/scale проходят отдельную приёмку при наличии нужных аккаунтов, устройств и разрешений. Лабораторный результат двух CHR не закрывает их автоматически. diff --git a/docs/ux-ui-stage-12.md b/docs/ux-ui-stage-12.md index a8414ef0..8ffcdcf1 100644 --- a/docs/ux-ui-stage-12.md +++ b/docs/ux-ui-stage-12.md @@ -2224,3 +2224,13 @@ POST result.createdAt, SQL created_at и production GET истории совп Две предварительные попытки завершили native тест, но остановились в fixture: лишнее требование Ping0% при фактических25% и Date.parse(Date) с потерей ms. Исправлены только тестовые условия/getTime; реальные timestamp продукта не менялись. Три коротких capped native команды всего, принятый итоговый Ping сохранён в отчёте; успешные browser/native checks повторно не выполнялись. Все три own history IDs удалены, исходный список истории сохранён; процессов/fixtures не осталось, аккаунты/RouterOS конфигурация не менялись. ROS-10 принят для текущей версии POST/GET и перечисленных timezone; legacy receipt безcreatedAt сохраняет прежний отдельный fallback. Source/build/deploy0. Следующий97 — реальный обрыв HTTP receipt bandwidth-test через локальный relay, без изменения устройств и с независимым наблюдением короткого native завершения; не заявлять это physical WAN loss или auto cancellation. Квота15% использовано, этап12.5 открыт. Один локальный коммит без push. + +## 12.5.97 — реальный обрыв HTTP receipt bandwidth-test (2026-10-10) + +[Native/SQL/cleanup](ux-ui/acceptance/speed-disconnect-2026-10-10.json), [live browser](ux-ui/acceptance/browser-speed-disconnect-2026-10-10.json). Собственная disabled speed-проба с явно синтетическим прежним snapshot42/17Mbit/s/Ping15ms/0% для проверки сохранения. Actual compiled speed route/service/MikrotikClient/PG; source client направлен через локальный HTTP relay, destination/account/RouterOS не менялись. Relay передал настоящую TCP transmit3s команду с native cap10Mbit/s и через100ms после отправки закрыл receipt socket. Independent upstream продолжил читать ответ и подтвердил done testing; это реальный HTTP socket disconnect после отправки, не подмена ответа/throw вместо сети. + +API502, history error/TXRX/Pingnull, probe error с прежними42/17/15/0; nativeCount1/noauto retry. App не получила доказательство завершения и не записала done, хотя relay независимо видел успешный native конец. UI2/2 на1280/320: error history/reload/document fits/pageerror0, API сохраняет старые snapshots; UI command POST0. Визуальное отображение card metrics отдельно не утверждается этим read-only сценарием. + +Свои history/probe exact IDs удалены, исходные списки совпали, только3 compose containers/backend/PG healthy. Один короткий capped native запуск с первой попытки, без RouterOS configuration/account changes/build/deploy. Native команда не отменялась; physical WAN failure/abort/multi-instance locks не приняты. Lab AUTH_REQUIRED=false, rights не проверялись повторно. HTTP ошибка приложения не доказывает failure native команды. + +Обнаружено оставшееся UX ограничение: timeout/socket message техническая и не объясняет неопределённость native результата. Следующий98 — единый понятный transport error для HTTP/history, профильные tests и один backend build/live повтор только изменённого message path; затем общая регрессия на согласованном runtime. Этап12.5 открыт. Один локальный коммит без push. diff --git a/docs/ux-ui-test-server.md b/docs/ux-ui-test-server.md index cf51eb16..a385715f 100644 --- a/docs/ux-ui-test-server.md +++ b/docs/ux-ui-test-server.md @@ -737,3 +737,13 @@ POST result.createdAt, SQL created_at и production GET истории совп Две предварительные попытки завершили native тест, но остановились в fixture: лишнее требование Ping0% при фактических25% и Date.parse(Date) с потерей ms. Исправлены только тестовые условия/getTime; реальные timestamp продукта не менялись. Три коротких capped native команды всего, принятый итоговый Ping сохранён в отчёте; успешные browser/native checks повторно не выполнялись. Все три own history IDs удалены, исходный список истории сохранён; процессов/fixtures не осталось, аккаунты/RouterOS конфигурация не менялись. ROS-10 принят для текущей версии POST/GET и перечисленных timezone; legacy receipt безcreatedAt сохраняет прежний отдельный fallback. Source/build/deploy0. Следующий97 — реальный обрыв HTTP receipt bandwidth-test через локальный relay, без изменения устройств и с независимым наблюдением короткого native завершения; не заявлять это physical WAN loss или auto cancellation. Квота15% использовано, этап12.5 открыт. Один локальный коммит без push. + +## 12.5.97 — реальный обрыв HTTP receipt bandwidth-test (2026-10-10) + +[Native/SQL/cleanup](ux-ui/acceptance/speed-disconnect-2026-10-10.json), [live browser](ux-ui/acceptance/browser-speed-disconnect-2026-10-10.json). Собственная disabled speed-проба с явно синтетическим прежним snapshot42/17Mbit/s/Ping15ms/0% для проверки сохранения. Actual compiled speed route/service/MikrotikClient/PG; source client направлен через локальный HTTP relay, destination/account/RouterOS не менялись. Relay передал настоящую TCP transmit3s команду с native cap10Mbit/s и через100ms после отправки закрыл receipt socket. Independent upstream продолжил читать ответ и подтвердил done testing; это реальный HTTP socket disconnect после отправки, не подмена ответа/throw вместо сети. + +API502, history error/TXRX/Pingnull, probe error с прежними42/17/15/0; nativeCount1/noauto retry. App не получила доказательство завершения и не записала done, хотя relay независимо видел успешный native конец. UI2/2 на1280/320: error history/reload/document fits/pageerror0, API сохраняет старые snapshots; UI command POST0. Визуальное отображение card metrics отдельно не утверждается этим read-only сценарием. + +Свои history/probe exact IDs удалены, исходные списки совпали, только3 compose containers/backend/PG healthy. Один короткий capped native запуск с первой попытки, без RouterOS configuration/account changes/build/deploy. Native команда не отменялась; physical WAN failure/abort/multi-instance locks не приняты. Lab AUTH_REQUIRED=false, rights не проверялись повторно. HTTP ошибка приложения не доказывает failure native команды. + +Обнаружено оставшееся UX ограничение: timeout/socket message техническая и не объясняет неопределённость native результата. Следующий98 — единый понятный transport error для HTTP/history, профильные tests и один backend build/live повтор только изменённого message path; затем общая регрессия на согласованном runtime. Этап12.5 открыт. Один локальный коммит без push. diff --git a/docs/ux-ui/acceptance/browser-speed-disconnect-2026-10-10.json b/docs/ux-ui/acceptance/browser-speed-disconnect-2026-10-10.json new file mode 100644 index 00000000..2f4dd0f2 --- /dev/null +++ b/docs/ux-ui/acceptance/browser-speed-disconnect-2026-10-10.json @@ -0,0 +1,22 @@ +{ + "date": "2026-10-10", + "cases": [ + { + "width": 1280, + "errorHistoryVisible": true, + "previousSnapshot42and17Preserved": true, + "reload": true, + "documentFits": true + }, + { + "width": 320, + "errorHistoryVisible": true, + "previousSnapshot42and17Preserved": true, + "reload": true, + "documentFits": true + } + ], + "errors": [], + "httpMocks": false, + "uiNativePosts": 0 +} \ No newline at end of file diff --git a/docs/ux-ui/acceptance/speed-disconnect-2026-10-10.json b/docs/ux-ui/acceptance/speed-disconnect-2026-10-10.json new file mode 100644 index 00000000..2db9a6a0 --- /dev/null +++ b/docs/ux-ui/acceptance/speed-disconnect-2026-10-10.json @@ -0,0 +1,53 @@ +{ + "date": "2026-10-10", + "name": "mm-drop97-1791570557334", + "rateLimitBps": 10000000, + "durationSec": 3, + "syntheticPreviousSnapshot": { + "txAvgMbps": 42, + "rxAvgMbps": 17, + "pingRttMs": 15, + "pingLossPct": 0 + }, + "httpMocks": false, + "routerOsMocks": false, + "receiptSocketDestroyed": true, + "httpStatus": 502, + "receipt": { + "error": "BTTest timeout/socket hang up: проверь доступность destination, /tool bandwidth-server, firewall и корректность интерфейсов" + }, + "nativeCompletion": { + "status": "done testing", + "responseRows": 6, + "httpStatus": 200 + }, + "nativeCount": 1, + "probe": { + "id": "mm-drop97-1791570557334", + "last_status": "error", + "last_tx_avg_mbps": 42, + "last_rx_avg_mbps": 17, + "last_ping_rtt_ms": 15, + "last_ping_loss_pct": 0, + "last_error": "BTTest timeout/socket hang up: проверь доступность destination, /tool bandwidth-server, firewall и корректность интерфейсов" + }, + "history": [ + { + "id": "mm-drop97-1791570557334", + "status": "error", + "tx_avg_mbps": null, + "rx_avg_mbps": null, + "ping_rtt_ms": null, + "ping_loss_pct": null, + "error": "BTTest timeout/socket hang up: проверь доступность destination, /tool bandwidth-server, firewall и корректность интерфейсов" + } + ], + "automaticRetry": false, + "limits": [ + "Real Node HTTP client socket closed after request forwarded; RouterOS independently completed. Not physical WAN loss or cancelled native command.", + "Previous metrics deliberately seeded on own disabled probe, not new real measurements.", + "History error means application did not obtain confirmed test result; native completion was observed only by independent relay." + ], + "cleanupHistory": true, + "cleanupProbes": true +} \ No newline at end of file