chore(test): подтвердить экспорт шаблона WireGuard на стенде
This commit is contained in:
1 parent
c16fc0c5b5
commit
d13c773856
9 files changed
+542
-8
No files matched your search
@@ -1,6 +1,6 @@
|
||||
# UX/UI: протокол внешней приёмки 12.5
|
||||
|
||||
Статус на2026-10-08: backend3722fad/frontendbf43263, backend healthy. Мобильная ширина WireGuard Sheets принята на реальных CHR в12.5.64. API экспорт безprivate keys подтверждён в65; peer-conf default endpoint ошибочен, client template и применение импорта не приняты. Мобильная GRE форма и native сохранение на обоих CHR приняты в12.5.57. WireGuard handshake/короткий Ping/native API/read-only UI приняты в границах12.5.58; 12.5.59 воспроизвёл оставшиеся peers/IP; 12.5.60 развернул исправление и принял обычное удаление own WG интерфейса с peer/IPv4 адресом на обоих CHR. 12.5.62 принял полный WireGuard UI create/peer/disable/enable/Ping/delete на обоих CHR; устойчивое меню развёрнуто. Устойчивость меню GRE при live refresh на обоих CHR принята в12.5.55. GRE peer metadata и реальный lifecycle/API/UI/двусторонний Ping подтверждены в12.5.53. Browser retry/checkpoint на реальном HTTP/PG принят в границах12.5.43–45; Telegram sender responses подменены, реальная доставка не проверена. 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-09: backend/frontend c16fc0c, backend healthy. В12.5.67 исправленный Peer .conf принят как клиентский шаблон: API6/6, browser4/4, server endpoint и placeholders; настоящий import ещё не принят. Мобильная ширина WireGuard Sheets принята в12.5.64. Мобильная GRE форма и native сохранение на обоих CHR приняты в12.5.57. WireGuard handshake/короткий Ping/native API/read-only UI приняты в границах12.5.58; 12.5.59 воспроизвёл оставшиеся peers/IP; 12.5.60 развернул исправление и принял обычное удаление own WG интерфейса с peer/IPv4 адресом на обоих CHR. 12.5.62 принял полный WireGuard UI create/peer/disable/enable/Ping/delete на обоих CHR; устойчивое меню развёрнуто. Устойчивость меню GRE при live refresh на обоих CHR принята в12.5.55. GRE peer metadata и реальный lifecycle/API/UI/двусторонний Ping подтверждены в12.5.53. Browser retry/checkpoint на реальном HTTP/PG принят в границах12.5.43–45; Telegram sender responses подменены, реальная доставка не проверена. 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).
|
||||
|
||||
## Паспорт стенда
|
||||
|
||||
@@ -525,3 +525,17 @@ Server allowed-address не обозначает клиентские маршр
|
||||
Проверки lib/wg-client-template.test.ts —5/5: endpoint exporting server/явный override/hostname/IPv6/неизвестные значения, одинаковые backend/frontend placeholders, отсутствие активного Address/AllowedIPs и default route без явных данных, сохранение явно заданных client параметров. Existing backend wireguard-config.test.ts passed; contracts build, backend TypeScript, scoped frontend TypeScript и ESLint всех изменённых файлов passed. Profile wireguard-links.spec.ts --grep экспорт —4/4: late response isolation/error, неправильный формат, выбор второго peer/ROS ID, его client-address/client-endpoint и отсутствие remote endpoint/server allowed-address в preview. Первый запуск старого теста ожидал ошибочно скопированные peer.allowedIps; fixture и assertions заменены на отличающиеся client metadata, защита выбора второго пира сохранена. ReUI checklist checked.
|
||||
|
||||
Исправление локальное: runtime backend3722fad/frontendbf43263 не менялся. Следующий12.5.67 — production Docker build/deploy backend и frontend с обновлённым contracts source, новая собственная WG пара, native/API export false redaction и правильный endpoint/шаблон, browser preview соответствие, cleanup/baseline. Поддержка client-allowed-address, настоящий client import/connectivity, import roundtrip/private-key modes, throughput/IPv6/RBAC/внешние failures/multi-instance/Telegram/Portal и другие протоколы/интеграции остаются открытыми. Пользовательское правило настоящих VPN объектов сохраняется. Локальный коммит без push.
|
||||
|
||||
## 12.5.67 — Docker deploy и реальный экспорт клиентского шаблона WireGuard (2026-10-09)
|
||||
|
||||
Обе production Docker сборки c16fc0c завершились успешно. Межслойный unit test перенесён из lib в tests/unit/wg-client-template.test.ts отдельным локальным коммитом c16fc0c: frontend Docker context не содержит backend source. Предварительный frontend staging c82e8fa не включал этот новый тест и не используется как доказательство чистой сборки исходного c82e8fa. Окончательные staging lib/backend src/contracts совпали с архивом c16fc0c; финальные образы обеих частей имеют OCI revision c16fc0c5b53ba8fcb6690ef6f0a695f59875f171. Network-none assertion backend образа проверил общий resolver и отсутствие активных клиентских Address/AllowedIPs без явных данных.
|
||||
|
||||
Перед обновлением сохранён приватный PG dump pre-c16fc0c.dump,2314923bytes,mode0600; pg_restore --list passed. Backend/frontend обновлены до1.0.0-test.c16fc0c, backend healthy, frontend /wireguard HTTP200. Образы: backend sha256:fb9f9279df07481d960f5799338e15a0fc9162a8baca3be7789a89f28a5f56dc, frontend sha256:bc70ee3203b4fd3f269ab6554493f0fb1ec2e60ef515ced2dcd6c6c7428064bc. Резервная .env хранится только на сервере. SSH161.104.46.222 и RouterOS REST194.226.121.150/104.165.244.7 доступны с прежними учётными данными; пароли не изменялись.
|
||||
|
||||
Создана собственная временная WG пара с адресами198.18.255.241/30 и198.18.255.242/30,port51879,MTU1420,уникальными name/comment. Native key generation/peer association проверены в памяти, handshake и Ping3/3 в обе стороны passed. Шесть настоящих API export запросов (rsc/conf/peer-conf на обоих устройствах) вернули200 с includePrivateKey=false. RSC/CONF параметры совпали с native; ключи и конфигурации не сохранялись. Peer .conf содержит PublicKey экспортирующего интерфейса и Endpoint экспортирующего устройства:51879; client Address/AllowedIPs остаются comment placeholders, активного default route нет. Это шаблон, готовность к импорту клиента не заявлена.
|
||||
|
||||
[Native/API evidence](ux-ui/acceptance/wg-export-native-2026-10-09.json), [browser evidence](ux-ui/acceptance/browser-wg-peer-export-c16fc0c-2026-10-09.json), [deploy/DB controls](ux-ui/acceptance/wg-export-deploy-controls-2026-10-09.json). Четыре настоящих browser сценария без HTTP mocks: оба CHR ×1280/320px. Local preview и live Peer export совпали по server endpoint/client placeholders; POST включает выбранный ROS peer ID и includePrivateKey=false. Нет page errors/API errors/page overflow. Export содержимое и ключи не попали в отчёты/скриншоты; UI download не выполнялся.
|
||||
|
||||
Fixture завершён exit0 и удалён. Проверенные WG interfaces/peers/IP/routes/IPv4 filter/nat/mangle совпали с baseline на обоих CHR. Очистка только собственных объектов; audit revisions намеренно сохранены. DB controls до/после совпали:servers2,speedHistory9,retentionDays14,migrations9. Дополнительно сохранён ранее полученный screenshot создания на CHR2 в12.5.64 с исходной датой2026-10-08. Product code в этом блоке не менялся после уже проверенного c16fc0c; общая регрессия не повторялась.
|
||||
|
||||
Следующий12.5.68 — import roundtrip собственного конфигурационного файла с независимой проверкой параметров и очисткой. Client-allowed-address/готовый client import, private-key export modes/UI download,throughput/IPv6/RBAC/внешние failures/multi-instance/Telegram/Portal и остальные протоколы/интеграции остаются открытыми. Локальный коммит без push.
|
||||
Reference in new issue
Block a user