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

This commit is contained in:
Denozordec committed 2026-10-09 09:15:48 +07:00
1 parent e01454b720
commit 91ee424b42
9 files changed
+802 -7

No files matched your search

@@ -0,0 +1,145 @@
{
"date": "2026-10-09",
"backendSource": "e01454b",
"frontendSource": "479f2ad",
"name": "mm-acceptance-wg-1791511858276",
"httpMocks": false,
"cases": [
{
"serverId": "1",
"width": 1280,
"format": "conf",
"incompleteTemplateStatus": 400,
"templateAndServerRetained": true,
"lateFailureStatus": 502,
"lateFailureState": "rolled-back",
"failedFormRetained": true,
"compensatedBeforeRetry": true,
"rejectedTemplateNoNativeObjects": true,
"localPreviewPassed": true,
"selectedServerPreserved": true,
"status": 200,
"receiptConfirmed": true,
"dialogClosedAfterReceipt": true,
"noPageOverflow": true
},
{
"serverId": "2",
"width": 320,
"format": "conf",
"incompleteTemplateStatus": 400,
"templateAndServerRetained": true,
"lateFailureStatus": 502,
"lateFailureState": "rolled-back",
"failedFormRetained": true,
"compensatedBeforeRetry": true,
"rejectedTemplateNoNativeObjects": true,
"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": "conf",
"explicitNameAdded": true,
"privateKeyPreservedInMemory": true,
"dryRunStatus": 200,
"dryRunNativeUnchanged": true,
"checks": {
"interfacePresent": true,
"interfaceName": true,
"interfaceCommentAbsent": true,
"interfacePrivateScalarEquivalent": true,
"interfacePublicIdentity": true,
"listenPort": true,
"mtu": true,
"onePeer": true,
"peerIdentity": true,
"allowedAddresses": true,
"configuredEndpointAddress": true,
"configuredEndpointPort": true,
"keepalive": true,
"peerCommentAbsent": true,
"address": true
},
"nativeParametersMatch": true,
"interfacePublicIdentityUnchanged": true,
"privateScalarEquivalent": true,
"privateEncodingUnchanged": true,
"linkedAddressAndPeerPresent": true
},
{
"serverId": 2,
"format": "conf",
"explicitNameAdded": true,
"privateKeyPreservedInMemory": true,
"dryRunStatus": 200,
"dryRunNativeUnchanged": true,
"checks": {
"interfacePresent": true,
"interfaceName": true,
"interfaceCommentAbsent": true,
"interfacePrivateScalarEquivalent": true,
"interfacePublicIdentity": true,
"listenPort": true,
"mtu": true,
"onePeer": true,
"peerIdentity": true,
"allowedAddresses": true,
"configuredEndpointAddress": true,
"configuredEndpointPort": true,
"keepalive": true,
"peerCommentAbsent": true,
"address": true
},
"nativeParametersMatch": true,
"interfacePublicIdentityUnchanged": true,
"privateScalarEquivalent": true,
"privateEncodingUnchanged": false,
"linkedAddressAndPeerPresent": true
}
]
},
"pageErrors": [],
"expectedApiRejections": [
{
"path": "/api/wireguard/import",
"status": 400
},
{
"path": "/api/wireguard/import",
"status": 502
},
{
"path": "/api/wireguard/import",
"status": 400
},
{
"path": "/api/wireguard/import",
"status": 502
}
],
"unexpectedApiErrors": [],
"limits": [
"Private CONF configs used only in memory; no traces/screenshots/config files persisted",
"Own conf with explicit Name restored; comments/peer names not retained; no interrupted apply or RBAC tested"
]
}
@@ -0,0 +1,40 @@
{
"date": "2026-10-09",
"backendSource": "e01454b",
"frontendSource": "479f2ad",
"httpMocks": false,
"pages": [
{
"path": "/dashboard",
"status": 200,
"mobileFits": true
},
{
"path": "/servers",
"status": 200,
"mobileFits": true
},
{
"path": "/uptime?tab=speed",
"status": 200,
"mobileFits": true
},
{
"path": "/settings",
"status": 200,
"mobileFits": true
},
{
"path": "/filters",
"status": 200,
"mobileFits": true
},
{
"path": "/wireguard",
"status": 200,
"mobileFits": true
}
],
"pageErrors": [],
"badApiResponses": []
}
@@ -0,0 +1,46 @@
{
"date": "2026-10-09",
"backendSource": "e01454b720f92ae8adc1636f7a2092132232dc87",
"frontendSource": "479f2ad",
"archiveSha256": "6cffbd73c05cf28fded3c80d9c8965a3c22f8f698e33f499fb87f5d21fc2effc",
"backendImage": "sha256:b6d5d7f68a8529ead68d8a676a0def5edfdd6aa9ad485be4b0158c0241ecae46",
"backendHealthy": true,
"backendVersion": "1.0.0-test.e01454b",
"frontendContainerUnchanged": true,
"networkNoneModuleAssertion": true,
"backup": {
"bytes": 2364848,
"mode": "0600",
"pgRestoreListPassed": true,
"retainedOnTestServerOnly": true
},
"before": {
"servers": 2,
"speedHistory": 9,
"retentionDays": 14,
"migrations": 9
},
"after": {
"servers": 2,
"speedHistory": 9,
"retentionDays": 14,
"migrations": 9
},
"mainServices": 3,
"temporaryFixtureContainersRemaining": 0,
"auditRevisionsIntentionallyRetained": true,
"access": [
{
"host": "161.104.46.222",
"available": true
},
{
"host": "194.226.121.150",
"available": true
},
{
"host": "104.165.244.7",
"available": true
}
]
}
@@ -0,0 +1,508 @@
{
"date": "2026-10-09",
"backendSource": "e01454b",
"frontendSource": "479f2ad",
"name": "mm-acceptance-wg-1791511858276",
"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/*1B",
"status": 200
},
{
"method": "PATCH",
"path": "/api/wireguard/interfaces/1/*1B",
"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/*1B",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/interfaces/2/*16",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/peers/1/*1C",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/interfaces/1/*1E",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/peers/2/*18",
"status": 200
},
{
"method": "DELETE",
"path": "/api/wireguard/interfaces/2/*19",
"status": 200
}
],
"pings": [
{
"serverId": 1,
"target": "198.18.255.242",
"interface": "mm-acceptance-wg-1791511858276",
"received": 3,
"rows": [
{
"sent": "1",
"received": "1",
"packet-loss": "0",
"time": "54ms644us",
"avg-rtt": "54ms644us"
},
{
"sent": "2",
"received": "2",
"packet-loss": "0",
"time": "54ms831us",
"avg-rtt": "54ms737us"
},
{
"sent": "3",
"received": "3",
"packet-loss": "0",
"time": "55ms56us",
"avg-rtt": "54ms843us"
}
]
},
{
"serverId": 2,
"target": "198.18.255.241",
"interface": "mm-acceptance-wg-1791511858276",
"received": 3,
"rows": [
{
"sent": "1",
"received": "1",
"packet-loss": "0",
"time": "54ms578us",
"avg-rtt": "54ms578us"
},
{
"sent": "2",
"received": "2",
"packet-loss": "0",
"time": "54ms473us",
"avg-rtt": "54ms525us"
},
{
"sent": "3",
"received": "3",
"packet-loss": "0",
"time": "54ms622us",
"avg-rtt": "54ms557us"
}
]
}
],
"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
}
],
"rejections": [
{
"serverId": 1,
"status": 400,
"dryRun": false,
"nativeUnchanged": true
},
{
"serverId": 1,
"status": 400,
"dryRun": true,
"nativeUnchanged": true
},
{
"serverId": 2,
"status": 400,
"dryRun": false,
"nativeUnchanged": true
},
{
"serverId": 2,
"status": 400,
"dryRun": true,
"nativeUnchanged": true
}
],
"nativeKeyGenerationConfirmed": true,
"connectedState": [
{
"serverId": 1,
"interface": {
"rosId": "*1B",
"appId": "1:*1B",
"name": "mm-acceptance-wg-1791511858276",
"listenPort": "51879",
"mtu": "1420",
"running": "true",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791511858276"
},
"addresses": [
"198.18.255.241/30"
],
"peers": [
{
"rosId": "*17",
"name": "mm-acceptance-wg-1791511858276-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-1791511858276"
}
]
},
{
"serverId": 2,
"interface": {
"rosId": "*16",
"appId": "2:*16",
"name": "mm-acceptance-wg-1791511858276",
"listenPort": "51879",
"mtu": "1420",
"running": "true",
"disabled": "false",
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791511858276"
},
"addresses": [
"198.18.255.242/30"
],
"peers": [
{
"rosId": "*13",
"name": "mm-acceptance-wg-1791511858276-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-1791511858276"
}
]
}
],
"handshakeConfirmed": true,
"bidirectionalPingPassed": true,
"catalogMatchesNative": true,
"roundtrip": [
{
"serverId": 1,
"format": "conf",
"explicitNameAdded": true,
"privateKeyPreservedInMemory": true,
"dryRunStatus": 200,
"dryRunNativeUnchanged": true,
"checks": {
"interfacePresent": true,
"interfaceName": true,
"interfaceCommentAbsent": true,
"interfacePrivateScalarEquivalent": true,
"interfacePublicIdentity": true,
"listenPort": true,
"mtu": true,
"onePeer": true,
"peerIdentity": true,
"allowedAddresses": true,
"configuredEndpointAddress": true,
"configuredEndpointPort": true,
"keepalive": true,
"peerCommentAbsent": true,
"address": true
},
"nativeParametersMatch": true,
"interfacePublicIdentityUnchanged": true,
"privateScalarEquivalent": true,
"privateEncodingUnchanged": true,
"linkedAddressAndPeerPresent": true
},
{
"serverId": 2,
"format": "conf",
"explicitNameAdded": true,
"privateKeyPreservedInMemory": true,
"dryRunStatus": 200,
"dryRunNativeUnchanged": true,
"checks": {
"interfacePresent": true,
"interfaceName": true,
"interfaceCommentAbsent": true,
"interfacePrivateScalarEquivalent": true,
"interfacePublicIdentity": true,
"listenPort": true,
"mtu": true,
"onePeer": true,
"peerIdentity": true,
"allowedAddresses": true,
"configuredEndpointAddress": true,
"configuredEndpointPort": true,
"keepalive": true,
"peerCommentAbsent": true,
"address": true
},
"nativeParametersMatch": true,
"interfacePublicIdentityUnchanged": true,
"privateScalarEquivalent": true,
"privateEncodingUnchanged": false,
"linkedAddressAndPeerPresent": true
}
],
"collisions": [
{
"serverId": 1,
"status": 409,
"nativeUnchanged": true
},
{
"serverId": 2,
"status": 409,
"nativeUnchanged": true
}
],
"directNativeCompensation": [
{
"serverId": 1,
"state": "rolled-back",
"calls": [
{
"method": "PUT",
"path": "/interface/wireguard",
"completed": true,
"receiptIdPresent": true
},
{
"method": "PUT",
"path": "/ip/address",
"completed": true,
"receiptIdPresent": true
},
{
"method": "PUT",
"path": "/interface/wireguard/peers",
"completed": true,
"receiptIdPresent": true
},
{
"method": "PUT",
"path": "/interface/wireguard/peers",
"status": 400
},
{
"method": "DELETE",
"path": "/interface/wireguard/peers/*18",
"completed": true
},
{
"method": "DELETE",
"path": "/ip/address/*1B",
"completed": true
},
{
"method": "DELETE",
"path": "/interface/wireguard/*1C",
"completed": true
}
],
"nativeBaselineRestored": true
},
{
"serverId": 2,
"state": "rolled-back",
"calls": [
{
"method": "PUT",
"path": "/interface/wireguard",
"completed": true,
"receiptIdPresent": true
},
{
"method": "PUT",
"path": "/ip/address",
"completed": true,
"receiptIdPresent": true
},
{
"method": "PUT",
"path": "/interface/wireguard/peers",
"completed": true,
"receiptIdPresent": true
},
{
"method": "PUT",
"path": "/interface/wireguard/peers",
"status": 400
},
{
"method": "DELETE",
"path": "/interface/wireguard/peers/*14",
"completed": true
},
{
"method": "DELETE",
"path": "/ip/address/*18",
"completed": true
},
{
"method": "DELETE",
"path": "/interface/wireguard/*17",
"completed": true
}
],
"nativeBaselineRestored": true
}
],
"importedHandshakeConfirmed": true,
"importedPings": [
{
"serverId": 1,
"received": 3
},
{
"serverId": 2,
"received": 3
}
],
"afterBrowser": [
{
"serverId": 1,
"interface": {
"rosId": "*1E",
"appId": "1:*1E",
"name": "mm-acceptance-wg-1791511858276",
"listenPort": "51879",
"mtu": "1420",
"running": "true",
"disabled": "false"
},
"addresses": [
"198.18.255.241/30"
],
"peers": [
{
"rosId": "*1C",
"name": "peer28",
"allowedAddresses": "198.18.255.242/32",
"endpoint": "104.165.244.7:51879",
"handshake": "2s",
"rx": "936",
"tx": "940",
"disabled": "false"
}
]
},
{
"serverId": 2,
"interface": {
"rosId": "*19",
"appId": "2:*19",
"name": "mm-acceptance-wg-1791511858276",
"listenPort": "51879",
"mtu": "1420",
"running": "true",
"disabled": "false"
},
"addresses": [
"198.18.255.242/30"
],
"peers": [
{
"rosId": "*18",
"name": "peer24",
"allowedAddresses": "198.18.255.241/32",
"endpoint": "194.226.121.150:51879",
"handshake": "2s",
"rx": "668",
"tx": "756",
"disabled": "false"
}
]
}
],
"limits": [
"Only own WireGuard interface/peer/IP and connected route changed; no default routes/firewall changes",
"Native service duplicate-peer rejection plus real HTTP/UI failure and retry; explicit Name added; keys/configs only in memory",
"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"
]
}