Files
MikrotikManager/docs/ux-ui/acceptance/ipsec-shared-certificate-2026-10-10.json

945 lines
30 KiB
JSON

{
"date": "2026-10-10",
"block": "12.5.114",
"local": {
"stateChecks": 114,
"profileScripts": 8,
"backendBuildPassed": true,
"eslintPassed": true,
"e2eUnique": 18,
"e2eSeconds": 35.9
},
"deployment": {
"date": "2026-10-10",
"baseCommit": "60b2e09",
"baseContext": "build-sessions113",
"context": "build-refs114",
"overrides": {
"backend/src/services/ipsec-live.ts": "4e1434d2146f363ff6866bb1b7b060dd1e9e1d0165eae8ec56de750cf11137d0",
"backend/src/routes/ipsec.ts": "548e282c1060b649a85d8378e305d333203591b4b3de72825e8337077fa02da3"
},
"containers": {
"backend": {
"imageTag": "mmapp-test/backend:ux-refs114",
"imageId": "sha256:df345a34f4e178b8a15fe5c537173f33a79eb15681a5e62b76a4aa7dab0017a6",
"state": "running",
"health": "healthy"
},
"frontend": {
"imageTag": "mmapp-test/frontend:ux-alias112-version",
"imageId": "sha256:4bf4cad8b3c990a7259f84cf27fd6bb9ee34e3db904223b559c0559dbbe094a2",
"state": "running",
"health": null
},
"postgres": {
"imageTag": "postgres:18-alpine",
"imageId": "sha256:77f585114c32fbca283dc835b0596f4e52b51b4c6662d7810b2f4084f60a1873",
"state": "running",
"health": "healthy"
}
},
"compiled": {
"backend/dist/services/ipsec-live.js": "cb6aa07a39c4be990224c1e30741d9431c64b7ff662f6ccd9843827b4b5415c4",
"backend/dist/routes/ipsec.js": "fd6d44c755d2598ab718b0925f4cc852e9fc91efc483838d0507e7202ab87b2d"
}
},
"sourceByteHashesMatch": true,
"compiledByteHashesMatch": true,
"before": {
"date": "2026-10-10",
"block": "12.5.114",
"name": "mm-ipsec114-1791640092983",
"cn": "mm-ipsec114-1791640092983",
"observations": [
{
"serverId": 1,
"active": [
{
".id": "*1",
"id": "CN=mm-ipsec114-1791640092983",
"state": "established",
"dynamic-address": "198.18.114.250",
"remote-address": "104.165.244.7",
"uptime": "1s"
}
],
"catalog": [
{
"name": "CN=mm-ipsec114-1791640092983",
"commonName": "CN=mm-ipsec114-1791640092983",
"certName": "ipsec-user-mm-ipsec114-1791640092983-decoy",
"online": false
},
{
"name": "mm-ipsec114-1791640092983",
"commonName": "mm-ipsec114-1791640092983",
"certName": "ipsec-user-mm-ipsec114-1791640092983",
"online": true,
"activeAddress": "198.18.114.250"
}
]
},
{
"serverId": 2,
"active": [
{
".id": "*1",
"id": "194.226.121.150",
"state": "established",
"remote-address": "194.226.121.150",
"uptime": "1s"
}
],
"catalog": []
}
],
"cleanup": [
{
"serverId": 1,
"/system/logging": true,
"/ip/ipsec/identity": true,
"/ip/ipsec/peer": true,
"/ip/ipsec/policy": true,
"/ip/ipsec/policy/group": true,
"/ip/ipsec/mode-config": true,
"/ip/ipsec/proposal": true,
"/ip/ipsec/profile": true,
"/certificate": true,
"/file": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/nat": true
},
{
"serverId": 2,
"/system/logging": true,
"/ip/ipsec/identity": true,
"/ip/ipsec/peer": true,
"/ip/ipsec/policy": true,
"/ip/ipsec/policy/group": true,
"/ip/ipsec/mode-config": true,
"/ip/ipsec/proposal": true,
"/ip/ipsec/profile": true,
"/certificate": true,
"/file": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/nat": true
}
],
"databaseWrites": false,
"certificate": {
"name": "ipsec-user-mm-ipsec114-1791640092983",
"common-name": "mm-ipsec114-1791640092983",
"ca": "mm-ipsec114-1791640092983-ca",
"key-usage": "digital-signature,key-encipherment,tls-client"
},
"certificates": [
[
{
"name": "mm-ipsec114-1791640092983-ca",
"trusted": "true",
"trust-store": "all",
"invalid-before": "2026-10-10 16:48:14",
"invalid-after": "2026-10-12 16:48:14",
"common-name": "mm-ipsec114-1791640092983-CA"
},
{
"name": "mm-ipsec114-1791640092983-server",
"trusted": "false",
"trust-store": "all",
"ca": "mm-ipsec114-1791640092983-ca",
"invalid-before": "2026-10-10 16:48:16",
"invalid-after": "2026-10-12 16:48:16",
"common-name": "194.226.121.150"
},
{
"name": "ipsec-user-mm-ipsec114-1791640092983",
"trusted": "false",
"trust-store": "all",
"ca": "mm-ipsec114-1791640092983-ca",
"invalid-before": "2026-10-10 16:48:16",
"invalid-after": "2026-10-12 16:48:16",
"common-name": "mm-ipsec114-1791640092983"
},
{
"name": "ipsec-user-mm-ipsec114-1791640092983-decoy",
"trusted": "false",
"trust-store": "all",
"ca": "mm-ipsec114-1791640092983-ca",
"invalid-before": "2026-10-10 16:48:18",
"invalid-after": "2026-10-12 16:48:18",
"common-name": "CN=mm-ipsec114-1791640092983"
}
],
[
{
"name": "mm-ipsec114-1791640092983-client-imported",
"trusted": "true",
"trust-store": "ipsec",
"invalid-before": "2026-10-10 15:48:16",
"invalid-after": "2026-10-12 15:48:16",
"common-name": "mm-ipsec114-1791640092983"
},
{
"name": "mm-ipsec114-1791640092983-ca-imported",
"trusted": "true",
"trust-store": "ipsec",
"invalid-before": "2026-10-10 15:48:14",
"invalid-after": "2026-10-12 15:48:14",
"common-name": "mm-ipsec114-1791640092983-CA"
}
]
],
"catalogCorrect": true,
"dnPhase": {
"active": [
{
".id": "*1",
"id": "CN=mm-ipsec114-1791640092983",
"state": "established",
"dynamic-address": "198.18.114.250",
"remote-address": "104.165.244.7",
"uptime": "1s"
}
],
"clients": [
{
"name": "CN=mm-ipsec114-1791640092983",
"commonName": "CN=mm-ipsec114-1791640092983",
"certName": "ipsec-user-mm-ipsec114-1791640092983-decoy",
"online": false
},
{
"name": "mm-ipsec114-1791640092983",
"commonName": "mm-ipsec114-1791640092983",
"certName": "ipsec-user-mm-ipsec114-1791640092983",
"online": true,
"activeAddress": "198.18.114.250"
}
],
"decoyOnline": false
},
"fqdnPhase": {
"configuredRemoteId": "fqdn:mm-ipsec114-1791640092983.example",
"nativeId": "mm-ipsec114-1791640092983.example",
"assignedAddress": "198.18.114.250",
"originalOnline": true,
"decoyOnline": false
},
"aliasName": "mm-ipsec114-1791640092983-psk",
"aliasPhase": {
"native": [
{
"id": "mm-ipsec114-1791640092983.example",
"state": "established",
"dynamic-address": "198.18.114.250"
}
],
"clients": [
{
"name": "CN=mm-ipsec114-1791640092983",
"kind": "cert",
"online": false
},
{
"name": "mm-ipsec114-1791640092983-psk",
"kind": "cert",
"online": true,
"activeAddress": "198.18.114.250"
}
],
"summary": {
"clientsTotal": 2,
"clientsOnline": 1
}
},
"error": "Expected values to be strictly equal:\n\n1 !== 2\n"
},
"native": {
"date": "2026-10-10",
"block": "12.5.114",
"name": "mm-ipsec114-1791640533938",
"cn": "mm-ipsec114-1791640533938",
"observations": [
{
"serverId": 1,
"active": [
{
".id": "*1",
"id": "CN=mm-ipsec114-1791640533938",
"state": "established",
"dynamic-address": "198.18.114.250",
"remote-address": "104.165.244.7",
"uptime": "0s"
}
],
"catalog": [
{
"name": "CN=mm-ipsec114-1791640533938",
"commonName": "CN=mm-ipsec114-1791640533938",
"certName": "ipsec-user-mm-ipsec114-1791640533938-decoy",
"online": false
},
{
"name": "mm-ipsec114-1791640533938",
"commonName": "mm-ipsec114-1791640533938",
"certName": "ipsec-user-mm-ipsec114-1791640533938",
"online": true,
"activeAddress": "198.18.114.250"
}
]
},
{
"serverId": 2,
"active": [
{
".id": "*1",
"id": "194.226.121.150",
"state": "established",
"remote-address": "194.226.121.150",
"uptime": "0s"
}
],
"catalog": []
}
],
"cleanup": [
{
"serverId": 1,
"/system/logging": true,
"/ip/ipsec/identity": true,
"/ip/ipsec/peer": true,
"/ip/ipsec/policy": true,
"/ip/ipsec/policy/group": true,
"/ip/ipsec/mode-config": true,
"/ip/ipsec/proposal": true,
"/ip/ipsec/profile": true,
"/certificate": true,
"/file": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/nat": true
},
{
"serverId": 2,
"/system/logging": true,
"/ip/ipsec/identity": true,
"/ip/ipsec/peer": true,
"/ip/ipsec/policy": true,
"/ip/ipsec/policy/group": true,
"/ip/ipsec/mode-config": true,
"/ip/ipsec/proposal": true,
"/ip/ipsec/profile": true,
"/certificate": true,
"/file": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/nat": true
}
],
"databaseWrites": "Two successful API mutations invoke history recording; deduplication may avoid new rows",
"certificate": {
"name": "ipsec-user-mm-ipsec114-1791640533938",
"common-name": "mm-ipsec114-1791640533938",
"ca": "mm-ipsec114-1791640533938-ca",
"key-usage": "digital-signature,key-encipherment,tls-client"
},
"certificates": [
[
{
"name": "mm-ipsec114-1791640533938-ca",
"trusted": "true",
"trust-store": "all",
"invalid-before": "2026-10-10 16:55:36",
"invalid-after": "2026-10-12 16:55:36",
"common-name": "mm-ipsec114-1791640533938-CA"
},
{
"name": "mm-ipsec114-1791640533938-server",
"trusted": "false",
"trust-store": "all",
"ca": "mm-ipsec114-1791640533938-ca",
"invalid-before": "2026-10-10 16:55:36",
"invalid-after": "2026-10-12 16:55:36",
"common-name": "194.226.121.150"
},
{
"name": "ipsec-user-mm-ipsec114-1791640533938",
"trusted": "false",
"trust-store": "all",
"ca": "mm-ipsec114-1791640533938-ca",
"invalid-before": "2026-10-10 16:55:37",
"invalid-after": "2026-10-12 16:55:37",
"common-name": "mm-ipsec114-1791640533938"
},
{
"name": "ipsec-user-mm-ipsec114-1791640533938-decoy",
"trusted": "false",
"trust-store": "all",
"ca": "mm-ipsec114-1791640533938-ca",
"invalid-before": "2026-10-10 16:55:37",
"invalid-after": "2026-10-12 16:55:37",
"common-name": "CN=mm-ipsec114-1791640533938"
}
],
[
{
"name": "mm-ipsec114-1791640533938-client-imported",
"trusted": "true",
"trust-store": "ipsec",
"invalid-before": "2026-10-10 15:55:37",
"invalid-after": "2026-10-12 15:55:37",
"common-name": "mm-ipsec114-1791640533938"
},
{
"name": "mm-ipsec114-1791640533938-ca-imported",
"trusted": "true",
"trust-store": "ipsec",
"invalid-before": "2026-10-10 15:55:36",
"invalid-after": "2026-10-12 15:55:36",
"common-name": "mm-ipsec114-1791640533938-CA"
}
]
],
"catalogCorrect": true,
"dnPhase": {
"active": [
{
".id": "*1",
"id": "CN=mm-ipsec114-1791640533938",
"state": "established",
"dynamic-address": "198.18.114.250",
"remote-address": "104.165.244.7",
"uptime": "0s"
}
],
"clients": [
{
"name": "CN=mm-ipsec114-1791640533938",
"commonName": "CN=mm-ipsec114-1791640533938",
"certName": "ipsec-user-mm-ipsec114-1791640533938-decoy",
"online": false
},
{
"name": "mm-ipsec114-1791640533938",
"commonName": "mm-ipsec114-1791640533938",
"certName": "ipsec-user-mm-ipsec114-1791640533938",
"online": true,
"activeAddress": "198.18.114.250"
}
],
"decoyOnline": false
},
"fqdnPhase": {
"configuredRemoteId": "fqdn:mm-ipsec114-1791640533938.example",
"nativeId": "mm-ipsec114-1791640533938.example",
"assignedAddress": "198.18.114.250",
"originalOnline": true,
"decoyOnline": false
},
"aliasName": "mm-ipsec114-1791640533938-psk",
"aliasPhase": {
"native": [
{
"id": "mm-ipsec114-1791640533938.example",
"state": "established",
"dynamic-address": "198.18.114.250"
}
],
"clients": [
{
"name": "CN=mm-ipsec114-1791640533938",
"kind": "cert",
"online": false
},
{
"name": "mm-ipsec114-1791640533938",
"kind": "cert",
"online": false,
"sessionAmbiguous": true
},
{
"name": "mm-ipsec114-1791640533938-psk",
"kind": "cert",
"online": false,
"sessionAmbiguous": true
}
],
"summary": {
"clientsTotal": 3,
"clientsOnline": 0,
"clientsSessionAmbiguous": 2
}
},
"renameReply": {
"error": "RouterOS: RouterOS API error 400 on /ip/ipsec/identity/*B: {\"detail\":\"failure: a matching identity already exists\",\"error\":400,\"message\":\"Bad Request\"}"
},
"targetGuards": {
"certificatePatch409": true,
"certificateDelete409": true,
"sharedCertificateIdentityDelete409": true,
"selectedIdentityPatchNativeMatchingConflict": true,
"bothCommentsUnchanged": true
},
"recovered": {
"originalOnline": true,
"sessionAmbiguous": false,
"activeAddress": "198.18.114.250",
"selectedIdentityPatch200AfterRemovingDuplicate": true,
"originalCommentRestored": true
}
},
"browserEvidence": "browser-ipsec-refs-2026-10-10.json",
"preliminary": {
"syntaxErrorBeforeAnyWrites": "Identifier root already declared; corrected to apiRoot",
"emptyDeleteBody": {
"date": "2026-10-10",
"block": "12.5.114",
"name": "mm-ipsec114-1791640180482",
"cn": "mm-ipsec114-1791640180482",
"observations": [
{
"serverId": 1,
"active": [
{
".id": "*1",
"id": "CN=mm-ipsec114-1791640180482",
"state": "established",
"dynamic-address": "198.18.114.250",
"remote-address": "104.165.244.7",
"uptime": "1s"
}
],
"catalog": [
{
"name": "CN=mm-ipsec114-1791640180482",
"commonName": "CN=mm-ipsec114-1791640180482",
"certName": "ipsec-user-mm-ipsec114-1791640180482-decoy",
"online": false
},
{
"name": "mm-ipsec114-1791640180482",
"commonName": "mm-ipsec114-1791640180482",
"certName": "ipsec-user-mm-ipsec114-1791640180482",
"online": true,
"activeAddress": "198.18.114.250"
}
]
},
{
"serverId": 2,
"active": [
{
".id": "*1",
"id": "194.226.121.150",
"state": "established",
"remote-address": "194.226.121.150",
"uptime": "1s"
}
],
"catalog": []
}
],
"cleanup": [
{
"serverId": 1,
"/system/logging": true,
"/ip/ipsec/identity": true,
"/ip/ipsec/peer": true,
"/ip/ipsec/policy": true,
"/ip/ipsec/policy/group": true,
"/ip/ipsec/mode-config": true,
"/ip/ipsec/proposal": true,
"/ip/ipsec/profile": true,
"/certificate": true,
"/file": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/nat": true
},
{
"serverId": 2,
"/system/logging": true,
"/ip/ipsec/identity": true,
"/ip/ipsec/peer": true,
"/ip/ipsec/policy": true,
"/ip/ipsec/policy/group": true,
"/ip/ipsec/mode-config": true,
"/ip/ipsec/proposal": true,
"/ip/ipsec/profile": true,
"/certificate": true,
"/file": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/nat": true
}
],
"databaseWrites": false,
"certificate": {
"name": "ipsec-user-mm-ipsec114-1791640180482",
"common-name": "mm-ipsec114-1791640180482",
"ca": "mm-ipsec114-1791640180482-ca",
"key-usage": "digital-signature,key-encipherment,tls-client"
},
"certificates": [
[
{
"name": "mm-ipsec114-1791640180482-ca",
"trusted": "true",
"trust-store": "all",
"invalid-before": "2026-10-10 16:49:42",
"invalid-after": "2026-10-12 16:49:42",
"common-name": "mm-ipsec114-1791640180482-CA"
},
{
"name": "mm-ipsec114-1791640180482-server",
"trusted": "false",
"trust-store": "all",
"ca": "mm-ipsec114-1791640180482-ca",
"invalid-before": "2026-10-10 16:49:42",
"invalid-after": "2026-10-12 16:49:42",
"common-name": "194.226.121.150"
},
{
"name": "ipsec-user-mm-ipsec114-1791640180482",
"trusted": "false",
"trust-store": "all",
"ca": "mm-ipsec114-1791640180482-ca",
"invalid-before": "2026-10-10 16:49:43",
"invalid-after": "2026-10-12 16:49:43",
"common-name": "mm-ipsec114-1791640180482"
},
{
"name": "ipsec-user-mm-ipsec114-1791640180482-decoy",
"trusted": "false",
"trust-store": "all",
"ca": "mm-ipsec114-1791640180482-ca",
"invalid-before": "2026-10-10 16:49:44",
"invalid-after": "2026-10-12 16:49:44",
"common-name": "CN=mm-ipsec114-1791640180482"
}
],
[
{
"name": "mm-ipsec114-1791640180482-client-imported",
"trusted": "true",
"trust-store": "ipsec",
"invalid-before": "2026-10-10 15:49:43",
"invalid-after": "2026-10-12 15:49:43",
"common-name": "mm-ipsec114-1791640180482"
},
{
"name": "mm-ipsec114-1791640180482-ca-imported",
"trusted": "true",
"trust-store": "ipsec",
"invalid-before": "2026-10-10 15:49:42",
"invalid-after": "2026-10-12 15:49:42",
"common-name": "mm-ipsec114-1791640180482-CA"
}
]
],
"catalogCorrect": true,
"dnPhase": {
"active": [
{
".id": "*1",
"id": "CN=mm-ipsec114-1791640180482",
"state": "established",
"dynamic-address": "198.18.114.250",
"remote-address": "104.165.244.7",
"uptime": "1s"
}
],
"clients": [
{
"name": "CN=mm-ipsec114-1791640180482",
"commonName": "CN=mm-ipsec114-1791640180482",
"certName": "ipsec-user-mm-ipsec114-1791640180482-decoy",
"online": false
},
{
"name": "mm-ipsec114-1791640180482",
"commonName": "mm-ipsec114-1791640180482",
"certName": "ipsec-user-mm-ipsec114-1791640180482",
"online": true,
"activeAddress": "198.18.114.250"
}
],
"decoyOnline": false
},
"fqdnPhase": {
"configuredRemoteId": "fqdn:mm-ipsec114-1791640180482.example",
"nativeId": "mm-ipsec114-1791640180482.example",
"assignedAddress": "198.18.114.250",
"originalOnline": true,
"decoyOnline": false
},
"aliasName": "mm-ipsec114-1791640180482-psk",
"aliasPhase": {
"native": [
{
"id": "mm-ipsec114-1791640180482.example",
"state": "established",
"dynamic-address": "198.18.114.250"
}
],
"clients": [
{
"name": "CN=mm-ipsec114-1791640180482",
"kind": "cert",
"online": false
},
{
"name": "mm-ipsec114-1791640180482",
"kind": "cert",
"online": false,
"sessionAmbiguous": true
},
{
"name": "mm-ipsec114-1791640180482-psk",
"kind": "cert",
"online": false,
"sessionAmbiguous": true
}
],
"summary": {
"clientsTotal": 3,
"clientsOnline": 0,
"clientsSessionAmbiguous": 2
}
},
"error": "Expected values to be strictly equal:\n\n400 !== 409\n"
},
"nativeMatchingConflict": {
"date": "2026-10-10",
"block": "12.5.114",
"name": "mm-ipsec114-1791640404881",
"cn": "mm-ipsec114-1791640404881",
"observations": [
{
"serverId": 1,
"active": [
{
".id": "*1",
"id": "CN=mm-ipsec114-1791640404881",
"state": "established",
"dynamic-address": "198.18.114.250",
"remote-address": "104.165.244.7",
"uptime": "1s"
}
],
"catalog": [
{
"name": "CN=mm-ipsec114-1791640404881",
"commonName": "CN=mm-ipsec114-1791640404881",
"certName": "ipsec-user-mm-ipsec114-1791640404881-decoy",
"online": false
},
{
"name": "mm-ipsec114-1791640404881",
"commonName": "mm-ipsec114-1791640404881",
"certName": "ipsec-user-mm-ipsec114-1791640404881",
"online": true,
"activeAddress": "198.18.114.250"
}
]
},
{
"serverId": 2,
"active": [
{
".id": "*1",
"id": "194.226.121.150",
"state": "established",
"remote-address": "194.226.121.150",
"uptime": "0s"
}
],
"catalog": []
}
],
"cleanup": [
{
"serverId": 1,
"/system/logging": true,
"/ip/ipsec/identity": true,
"/ip/ipsec/peer": true,
"/ip/ipsec/policy": true,
"/ip/ipsec/policy/group": true,
"/ip/ipsec/mode-config": true,
"/ip/ipsec/proposal": true,
"/ip/ipsec/profile": true,
"/certificate": true,
"/file": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/nat": true
},
{
"serverId": 2,
"/system/logging": true,
"/ip/ipsec/identity": true,
"/ip/ipsec/peer": true,
"/ip/ipsec/policy": true,
"/ip/ipsec/policy/group": true,
"/ip/ipsec/mode-config": true,
"/ip/ipsec/proposal": true,
"/ip/ipsec/profile": true,
"/certificate": true,
"/file": true,
"/ip/address": true,
"/ip/route": true,
"/ip/firewall/nat": true
}
],
"databaseWrites": false,
"certificate": {
"name": "ipsec-user-mm-ipsec114-1791640404881",
"common-name": "mm-ipsec114-1791640404881",
"ca": "mm-ipsec114-1791640404881-ca",
"key-usage": "digital-signature,key-encipherment,tls-client"
},
"certificates": [
[
{
"name": "mm-ipsec114-1791640404881-ca",
"trusted": "true",
"trust-store": "all",
"invalid-before": "2026-10-10 16:53:26",
"invalid-after": "2026-10-12 16:53:26",
"common-name": "mm-ipsec114-1791640404881-CA"
},
{
"name": "mm-ipsec114-1791640404881-server",
"trusted": "false",
"trust-store": "all",
"ca": "mm-ipsec114-1791640404881-ca",
"invalid-before": "2026-10-10 16:53:26",
"invalid-after": "2026-10-12 16:53:26",
"common-name": "194.226.121.150"
},
{
"name": "ipsec-user-mm-ipsec114-1791640404881",
"trusted": "false",
"trust-store": "all",
"ca": "mm-ipsec114-1791640404881-ca",
"invalid-before": "2026-10-10 16:53:28",
"invalid-after": "2026-10-12 16:53:28",
"common-name": "mm-ipsec114-1791640404881"
},
{
"name": "ipsec-user-mm-ipsec114-1791640404881-decoy",
"trusted": "false",
"trust-store": "all",
"ca": "mm-ipsec114-1791640404881-ca",
"invalid-before": "2026-10-10 16:53:29",
"invalid-after": "2026-10-12 16:53:29",
"common-name": "CN=mm-ipsec114-1791640404881"
}
],
[
{
"name": "mm-ipsec114-1791640404881-client-imported",
"trusted": "true",
"trust-store": "ipsec",
"invalid-before": "2026-10-10 15:53:28",
"invalid-after": "2026-10-12 15:53:28",
"common-name": "mm-ipsec114-1791640404881"
},
{
"name": "mm-ipsec114-1791640404881-ca-imported",
"trusted": "true",
"trust-store": "ipsec",
"invalid-before": "2026-10-10 15:53:26",
"invalid-after": "2026-10-12 15:53:26",
"common-name": "mm-ipsec114-1791640404881-CA"
}
]
],
"catalogCorrect": true,
"dnPhase": {
"active": [
{
".id": "*1",
"id": "CN=mm-ipsec114-1791640404881",
"state": "established",
"dynamic-address": "198.18.114.250",
"remote-address": "104.165.244.7",
"uptime": "1s"
}
],
"clients": [
{
"name": "CN=mm-ipsec114-1791640404881",
"commonName": "CN=mm-ipsec114-1791640404881",
"certName": "ipsec-user-mm-ipsec114-1791640404881-decoy",
"online": false
},
{
"name": "mm-ipsec114-1791640404881",
"commonName": "mm-ipsec114-1791640404881",
"certName": "ipsec-user-mm-ipsec114-1791640404881",
"online": true,
"activeAddress": "198.18.114.250"
}
],
"decoyOnline": false
},
"fqdnPhase": {
"configuredRemoteId": "fqdn:mm-ipsec114-1791640404881.example",
"nativeId": "mm-ipsec114-1791640404881.example",
"assignedAddress": "198.18.114.250",
"originalOnline": true,
"decoyOnline": false
},
"aliasName": "mm-ipsec114-1791640404881-psk",
"aliasPhase": {
"native": [
{
"id": "mm-ipsec114-1791640404881.example",
"state": "established",
"dynamic-address": "198.18.114.250"
}
],
"clients": [
{
"name": "CN=mm-ipsec114-1791640404881",
"kind": "cert",
"online": false
},
{
"name": "mm-ipsec114-1791640404881",
"kind": "cert",
"online": false,
"sessionAmbiguous": true
},
{
"name": "mm-ipsec114-1791640404881-psk",
"kind": "cert",
"online": false,
"sessionAmbiguous": true
}
],
"summary": {
"clientsTotal": 3,
"clientsOnline": 0,
"clientsSessionAmbiguous": 2
}
},
"renameReply": {
"error": "RouterOS: RouterOS API error 400 on /ip/ipsec/identity/*B: {\"detail\":\"failure: a matching identity already exists\",\"error\":400,\"message\":\"Bad Request\"}"
},
"error": "{\"error\":\"RouterOS: RouterOS API error 400 on /ip/ipsec/identity/*B: {\\\"detail\\\":\\\"failure: a matching identity already exists\\\",\\\"error\\\":400,\\\"message\\\":\\\"Bad Request\\\"}\"}\n\n502 !== 200\n"
}
},
"bounds": [
"Two identities refer to one signed client certificate; native one established IKE connection",
"Selected PATCH with identical matching conditions is rejected by RouterOS; both comments unchanged",
"PATCH200 verified after removal of own duplicate, not while duplicate matching identities coexist",
"DELETE preserving certificate covered by local HTTP test; UI currently has no separate preserve-certificate option",
"Two successful API PATCH invoke history recording; do not claim two inserted history rows",
"No full regression, multiple simultaneous native sessions, client OS or full PKI claim"
]
}