chore(test): подтвердить импорт WireGuard на двух CHR

This commit is contained in:
Denozordec committed 2026-10-09 08:31:09 +07:00
1 parent d13c773856
commit 7ce43adc07
9 files changed
+937 -6

No files matched your search

@@ -0,0 +1,111 @@
{
"date": "2026-10-09",
"backendSource": "c16fc0c",
"frontendSource": "c16fc0c",
"name": "mm-acceptance-wg-1791509323535",
"httpMocks": false,
"cases": [
{
"serverId": "1",
"width": 1280,
"format": "rsc",
"localPreviewPassed": true,
"selectedServerPreserved": true,
"status": 200,
"receiptConfirmed": true,
"dialogClosedAfterReceipt": true,
"noPageOverflow": true
},
{
"serverId": "2",
"width": 320,
"format": "rsc",
"localPreviewPassed": true,
"selectedServerPreserved": true,
"status": 200,
"receiptConfirmed": true,
"dialogClosedAfterReceipt": true,
"noPageOverflow": true
}
],
"native": {
"ok": true,
"handshakeConfirmed": true,
"pings": [
{
"serverId": 1,
"received": 3
},
{
"serverId": 2,
"received": 3
}
],
"roundtrip": [
{
"serverId": 1,
"format": "rsc",
"privateKeyPreservedInMemory": true,
"dryRunStatus": 200,
"dryRunNativeUnchanged": true,
"checks": {
"interfacePresent": true,
"interfaceName": true,
"interfaceComment": true,
"interfacePrivateScalarEquivalent": true,
"interfacePublicIdentity": true,
"listenPort": true,
"mtu": true,
"onePeer": true,
"peerIdentity": true,
"allowedAddresses": true,
"configuredEndpointAddress": true,
"configuredEndpointPort": true,
"keepalive": true,
"peerComment": true,
"address": true
},
"nativeParametersMatch": true,
"interfacePublicIdentityUnchanged": true,
"privateScalarEquivalent": true,
"privateEncodingUnchanged": true,
"linkedAddressAndPeerPresent": true
},
{
"serverId": 2,
"format": "rsc",
"privateKeyPreservedInMemory": true,
"dryRunStatus": 200,
"dryRunNativeUnchanged": true,
"checks": {
"interfacePresent": true,
"interfaceName": true,
"interfaceComment": true,
"interfacePrivateScalarEquivalent": true,
"interfacePublicIdentity": true,
"listenPort": true,
"mtu": true,
"onePeer": true,
"peerIdentity": true,
"allowedAddresses": true,
"configuredEndpointAddress": true,
"configuredEndpointPort": true,
"keepalive": true,
"peerComment": true,
"address": true
},
"nativeParametersMatch": true,
"interfacePublicIdentityUnchanged": true,
"privateScalarEquivalent": true,
"privateEncodingUnchanged": false,
"linkedAddressAndPeerPresent": true
}
]
},
"pageErrors": [],
"badApi": [],
"limits": [
"Private RSC configs used only in memory; no traces/screenshots/config files persisted",
"Only own objects restored; no .conf/client template import, failures or RBAC tested"
]
}
@@ -0,0 +1,21 @@
{
"date": "2026-10-09",
"runtime": "backend/frontend c16fc0c",
"beforeSource": "Final control point 12.5.67; no unrelated data mutations during 12.5.68",
"before": {
"servers": 2,
"speedHistory": 9,
"retentionDays": 14,
"migrations": 9
},
"after": {
"servers": 2,
"speedHistory": 9,
"retentionDays": 14,
"migrations": 9
},
"backendHealthy": true,
"mainServices": 3,
"temporaryFixtureContainersRemaining": 0,
"auditRevisionsIntentionallyRetained": true
}
@@ -0,0 +1,380 @@
{
"date": "2026-10-09",
"backendSource": "c16fc0c",
"frontendSource": "c16fc0c",
"name": "mm-acceptance-wg-1791509323535",
"subnet": "198.18.255.240/30",
"listenPort": 51879,
"realRouterOs": true,
"changes": [
{
"method": "POST",
"path": "/api/wireguard/interfaces",
"status": 201
},
{
"method": "POST",
"path": "/api/wireguard/interfaces",
"status": 201
},
{
"method": "POST",
"path": "/api/wireguard/peers",
"status": 201
},
{
"method": "POST",
"path": "/api/wireguard/peers",
"status": 201
},
{
"method": "PATCH",
"path": "/api/wireguard/interfaces/1/*15",
"status": 200
},
{
"method": "PATCH",
"path": "/api/wireguard/interfaces/1/*15",
"status": 200
},
{
"method": "GET",
"path": "/api/wireguard",
"status": 200
},
{
"method": "POST",
"path": "/api/wireguard/export",
"status": 200
},
{
"method": "POST",
"path": "/api/wireguard/import",
"status": 200
},
{
"method": "POST",
"path": "/api/wireguard/export",
"status": 200
},
{
"method": "POST",
"path": "/api/wireguard/import",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/interfaces/1/*15",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/interfaces/2/*11",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/peers/1/*12",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/interfaces/1/*16",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/peers/2/*F",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/interfaces/2/*12",
"status": 200
}
],
"pings": [
{
"serverId": 1,
"target": "198.18.255.242",
"interface": "mm-acceptance-wg-1791509323535",
"received": 3,
"rows": [
{
"sent": "1",
"received": "1",
"packet-loss": "0",
"time": "54ms494us",
"avg-rtt": "54ms494us"
},
{
"sent": "2",
"received": "2",
"packet-loss": "0",
"time": "54ms470us",
"avg-rtt": "54ms482us"
},
{
"sent": "3",
"received": "3",
"packet-loss": "0",
"time": "54ms557us",
"avg-rtt": "54ms507us"
}
]
},
{
"serverId": 2,
"target": "198.18.255.241",
"interface": "mm-acceptance-wg-1791509323535",
"received": 3,
"rows": [
{
"sent": "1",
"received": "1",
"packet-loss": "0",
"time": "54ms683us",
"avg-rtt": "54ms683us"
},
{
"sent": "2",
"received": "2",
"packet-loss": "0",
"time": "54ms570us",
"avg-rtt": "54ms626us"
},
{
"sent": "3",
"received": "3",
"packet-loss": "0",
"time": "54ms773us",
"avg-rtt": "54ms675us"
}
]
}
],
"cleanup": [
{
"serverId": 1,
"/interface/wireguard": true,
"/interface/wireguard/peers": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/filter": true,
"/ip/firewall/nat": true,
"/ip/firewall/mangle": true
},
{
"serverId": 2,
"/interface/wireguard": true,
"/interface/wireguard/peers": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/filter": true,
"/ip/firewall/nat": true,
"/ip/firewall/mangle": true
}
],
"nativeKeyGenerationConfirmed": true,
"connectedState": [
{
"serverId": 1,
"interface": {
"rosId": "*15",
"appId": "1:*15",
"name": "mm-acceptance-wg-1791509323535",
"listenPort": "51879",
"mtu": "1420",
"running": "true",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509323535"
},
"addresses": [
"198.18.255.241/30"
],
"peers": [
{
"rosId": "*11",
"name": "mm-acceptance-wg-1791509323535-peer",
"allowedAddresses": "198.18.255.242/32",
"endpoint": "104.165.244.7:51879",
"handshake": "1s",
"rx": "180",
"tx": "272",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509323535"
}
]
},
{
"serverId": 2,
"interface": {
"rosId": "*11",
"appId": "2:*11",
"name": "mm-acceptance-wg-1791509323535",
"listenPort": "51879",
"mtu": "1420",
"running": "true",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509323535"
},
"addresses": [
"198.18.255.242/30"
],
"peers": [
{
"rosId": "*E",
"name": "mm-acceptance-wg-1791509323535-peer",
"allowedAddresses": "198.18.255.241/32",
"endpoint": "194.226.121.150:51879",
"handshake": "1s",
"rx": "124",
"tx": "180",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509323535"
}
]
}
],
"handshakeConfirmed": true,
"bidirectionalPingPassed": true,
"catalogMatchesNative": true,
"roundtrip": [
{
"serverId": 1,
"format": "rsc",
"privateKeyPreservedInMemory": true,
"dryRunStatus": 200,
"dryRunNativeUnchanged": true,
"checks": {
"interfacePresent": true,
"interfaceName": true,
"interfaceComment": true,
"interfacePrivateScalarEquivalent": true,
"interfacePublicIdentity": true,
"listenPort": true,
"mtu": true,
"onePeer": true,
"peerIdentity": true,
"allowedAddresses": true,
"configuredEndpointAddress": true,
"configuredEndpointPort": true,
"keepalive": true,
"peerComment": true,
"address": true
},
"nativeParametersMatch": true,
"interfacePublicIdentityUnchanged": true,
"privateScalarEquivalent": true,
"privateEncodingUnchanged": true,
"linkedAddressAndPeerPresent": true
},
{
"serverId": 2,
"format": "rsc",
"privateKeyPreservedInMemory": true,
"dryRunStatus": 200,
"dryRunNativeUnchanged": true,
"checks": {
"interfacePresent": true,
"interfaceName": true,
"interfaceComment": true,
"interfacePrivateScalarEquivalent": true,
"interfacePublicIdentity": true,
"listenPort": true,
"mtu": true,
"onePeer": true,
"peerIdentity": true,
"allowedAddresses": true,
"configuredEndpointAddress": true,
"configuredEndpointPort": true,
"keepalive": true,
"peerComment": true,
"address": true
},
"nativeParametersMatch": true,
"interfacePublicIdentityUnchanged": true,
"privateScalarEquivalent": true,
"privateEncodingUnchanged": false,
"linkedAddressAndPeerPresent": true
}
],
"importedHandshakeConfirmed": true,
"importedPings": [
{
"serverId": 1,
"received": 3
},
{
"serverId": 2,
"received": 3
}
],
"afterBrowser": [
{
"serverId": 1,
"interface": {
"rosId": "*16",
"appId": "1:*16",
"name": "mm-acceptance-wg-1791509323535",
"listenPort": "51879",
"mtu": "1420",
"running": "true",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509323535"
},
"addresses": [
"198.18.255.241/30"
],
"peers": [
{
"rosId": "*12",
"name": "mm-acceptance-wg-1791509323535-peer",
"allowedAddresses": "198.18.255.242/32",
"endpoint": "104.165.244.7:51879",
"handshake": "2s",
"rx": "756",
"tx": "848",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509323535"
}
]
},
{
"serverId": 2,
"interface": {
"rosId": "*12",
"appId": "2:*12",
"name": "mm-acceptance-wg-1791509323535",
"listenPort": "51879",
"mtu": "1420",
"running": "true",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509323535"
},
"addresses": [
"198.18.255.242/30"
],
"peers": [
{
"rosId": "*F",
"name": "mm-acceptance-wg-1791509323535-peer",
"allowedAddresses": "198.18.255.241/32",
"endpoint": "194.226.121.150:51879",
"handshake": "2s",
"rx": "700",
"tx": "756",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509323535"
}
]
}
],
"limits": [
"Only own WireGuard interface/peer/IP and connected route changed; no default routes/firewall changes",
"Own private-key RSC used in memory for UI import; no config files or keys persisted",
"Private/public/preshared keys omitted from report; native generation and peer association checked in memory",
"Handshake and short ICMP connectivity, not throughput, RBAC or interrupted mutation",
"WireGuard audit revisions intentionally retained"
]
}
@@ -0,0 +1,363 @@
{
"date": "2026-10-09",
"backendSource": "c16fc0c",
"frontendSource": "c16fc0c",
"name": "mm-acceptance-wg-1791509243055",
"subnet": "198.18.255.240/30",
"listenPort": 51879,
"realRouterOs": true,
"changes": [
{
"method": "POST",
"path": "/api/wireguard/interfaces",
"status": 201
},
{
"method": "POST",
"path": "/api/wireguard/interfaces",
"status": 201
},
{
"method": "POST",
"path": "/api/wireguard/peers",
"status": 201
},
{
"method": "POST",
"path": "/api/wireguard/peers",
"status": 201
},
{
"method": "PATCH",
"path": "/api/wireguard/interfaces/1/*13",
"status": 200
},
{
"method": "PATCH",
"path": "/api/wireguard/interfaces/1/*13",
"status": 200
},
{
"method": "GET",
"path": "/api/wireguard",
"status": 200
},
{
"method": "POST",
"path": "/api/wireguard/export",
"status": 200
},
{
"method": "POST",
"path": "/api/wireguard/import",
"status": 200
},
{
"method": "POST",
"path": "/api/wireguard/export",
"status": 200
},
{
"method": "POST",
"path": "/api/wireguard/import",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/interfaces/1/*13",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/interfaces/2/*F",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/peers/1/*10",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/interfaces/1/*14",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/peers/2/*D",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/interfaces/2/*10",
"status": 200
}
],
"pings": [
{
"serverId": 1,
"target": "198.18.255.242",
"interface": "mm-acceptance-wg-1791509243055",
"received": 3,
"rows": [
{
"sent": "1",
"received": "1",
"packet-loss": "0",
"time": "54ms687us",
"avg-rtt": "54ms687us"
},
{
"sent": "2",
"received": "2",
"packet-loss": "0",
"time": "55ms213us",
"avg-rtt": "54ms950us"
},
{
"sent": "3",
"received": "3",
"packet-loss": "0",
"time": "54ms924us",
"avg-rtt": "54ms941us"
}
]
},
{
"serverId": 2,
"target": "198.18.255.241",
"interface": "mm-acceptance-wg-1791509243055",
"received": 3,
"rows": [
{
"sent": "1",
"received": "1",
"packet-loss": "0",
"time": "54ms475us",
"avg-rtt": "54ms475us"
},
{
"sent": "2",
"received": "2",
"packet-loss": "0",
"time": "54ms790us",
"avg-rtt": "54ms632us"
},
{
"sent": "3",
"received": "3",
"packet-loss": "0",
"time": "54ms563us",
"avg-rtt": "54ms609us"
}
]
}
],
"cleanup": [
{
"serverId": 1,
"/interface/wireguard": true,
"/interface/wireguard/peers": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/filter": true,
"/ip/firewall/nat": true,
"/ip/firewall/mangle": true
},
{
"serverId": 2,
"/interface/wireguard": true,
"/interface/wireguard/peers": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/filter": true,
"/ip/firewall/nat": true,
"/ip/firewall/mangle": true
}
],
"nativeKeyGenerationConfirmed": true,
"connectedState": [
{
"serverId": 1,
"interface": {
"rosId": "*13",
"appId": "1:*13",
"name": "mm-acceptance-wg-1791509243055",
"listenPort": "51879",
"mtu": "1420",
"running": "true",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509243055"
},
"addresses": [
"198.18.255.241/30"
],
"peers": [
{
"rosId": "*F",
"name": "mm-acceptance-wg-1791509243055-peer",
"allowedAddresses": "198.18.255.242/32",
"endpoint": "104.165.244.7:51879",
"handshake": "0s",
"rx": "180",
"tx": "272",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509243055"
}
]
},
{
"serverId": 2,
"interface": {
"rosId": "*F",
"appId": "2:*F",
"name": "mm-acceptance-wg-1791509243055",
"listenPort": "51879",
"mtu": "1420",
"running": "true",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509243055"
},
"addresses": [
"198.18.255.242/30"
],
"peers": [
{
"rosId": "*C",
"name": "mm-acceptance-wg-1791509243055-peer",
"allowedAddresses": "198.18.255.241/32",
"endpoint": "194.226.121.150:51879",
"handshake": "1s",
"rx": "124",
"tx": "180",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509243055"
}
]
}
],
"handshakeConfirmed": true,
"bidirectionalPingPassed": true,
"catalogMatchesNative": true,
"roundtrip": [
{
"serverId": 1,
"format": "rsc",
"privateKeyPreservedInMemory": true,
"dryRunStatus": 200,
"dryRunNativeUnchanged": true,
"checks": {
"interfacePresent": true,
"interfaceName": true,
"interfaceComment": true,
"interfacePrivateIdentity": true,
"interfacePublicIdentity": true,
"listenPort": true,
"mtu": true,
"onePeer": true,
"peerIdentity": true,
"allowedAddresses": true,
"configuredEndpointAddress": true,
"configuredEndpointPort": true,
"keepalive": true,
"peerComment": true,
"address": true
},
"nativeParametersMatch": true,
"interfaceKeysUnchanged": true,
"linkedAddressAndPeerPresent": true
},
{
"serverId": 2,
"format": "rsc",
"privateKeyPreservedInMemory": true,
"dryRunStatus": 200,
"dryRunNativeUnchanged": true,
"checks": {
"interfacePresent": true,
"interfaceName": true,
"interfaceComment": true,
"interfacePrivateIdentity": false,
"interfacePublicIdentity": true,
"listenPort": true,
"mtu": true,
"onePeer": true,
"peerIdentity": true,
"allowedAddresses": true,
"configuredEndpointAddress": true,
"configuredEndpointPort": true,
"keepalive": true,
"peerComment": true,
"address": true
}
}
],
"verifyFailure": "Imported native field mismatch",
"afterBrowser": [
{
"serverId": 1,
"interface": {
"rosId": "*14",
"appId": "1:*14",
"name": "mm-acceptance-wg-1791509243055",
"listenPort": "51879",
"mtu": "1420",
"running": "true",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509243055"
},
"addresses": [
"198.18.255.241/30"
],
"peers": [
{
"rosId": "*10",
"name": "mm-acceptance-wg-1791509243055-peer",
"allowedAddresses": "198.18.255.242/32",
"endpoint": "104.165.244.7:51879",
"handshake": "0s",
"rx": "180",
"tx": "272",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509243055"
}
]
},
{
"serverId": 2,
"interface": {
"rosId": "*10",
"appId": "2:*10",
"name": "mm-acceptance-wg-1791509243055",
"listenPort": "51879",
"mtu": "1420",
"running": "true",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509243055"
},
"addresses": [
"198.18.255.242/30"
],
"peers": [
{
"rosId": "*D",
"name": "mm-acceptance-wg-1791509243055-peer",
"allowedAddresses": "198.18.255.241/32",
"endpoint": "194.226.121.150:51879",
"handshake": "1s",
"rx": "124",
"tx": "180",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791509243055"
}
]
}
],
"limits": [
"Only own WireGuard interface/peer/IP and connected route changed; no default routes/firewall changes",
"Own private-key RSC used in memory for UI import; no config files or keys persisted",
"Private/public/preshared keys omitted from report; native generation and peer association checked in memory",
"Handshake and short ICMP connectivity, not throughput, RBAC or interrupted mutation",
"WireGuard audit revisions intentionally retained"
]
}