3189 lines
104 KiB
JSON
3189 lines
104 KiB
JSON
{
|
||
"marker": "20260808032107-59bca758",
|
||
"gateway": "http://8.163.30.128:9000",
|
||
"generatedAt": "2026-08-08T03:21:07.557Z",
|
||
"completedAt": "2026-08-08T03:21:23.225Z",
|
||
"success": true,
|
||
"fatal": null,
|
||
"testAccount": {
|
||
"username": "client_20260808032107_024af1",
|
||
"companyName": "客户端全链路测试企业-20260808032107-59bca758",
|
||
"legalPhone": "13959267559"
|
||
},
|
||
"resources": {
|
||
"tenantId": "2085929269531889665",
|
||
"membershipId": "2085929269531889667",
|
||
"reviewId": "2085929275026427905",
|
||
"businessLicenseQualificationId": "2085929273797496834",
|
||
"businessLicenseDocumentUrl": "/api/merchant/v1/files/qualifications/0dc50e5f-9f9b-4ef4-abc0-e7c09dcacc97.png",
|
||
"productImageFileId": "2085929310632869889",
|
||
"enterpriseAddressId": "2085929280101535746",
|
||
"receivingWarehouseId": "193000000000200001",
|
||
"destinationWarehouseId": "193000000000000001",
|
||
"channelCode": "EXX_RAIL_NY",
|
||
"roleId": null,
|
||
"testMembershipId": "2085929284870459395",
|
||
"orderIds": [
|
||
"2085929273286787073",
|
||
"2085929313522745345",
|
||
"2085929317431836673"
|
||
]
|
||
},
|
||
"steps": [
|
||
{
|
||
"module": "registration",
|
||
"name": "enterprise self-registration",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:07.560Z",
|
||
"durationMs": 444,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-a8b9bb3e-7adb-422e-82f8-3bf99bba401e, client-e2e-a8b9bb3e-7adb-422e-82f8-3bf99bba401e",
|
||
"traceId": "7284d292f1a44077adc46f86419bc3d6",
|
||
"evidence": {
|
||
"tenantId": "2085929269531889665",
|
||
"membershipId": "2085929269531889667",
|
||
"tenantStatus": "PROFILE_REQUIRED",
|
||
"nextStep": "LOGIN_AND_COMPLETE_QUALIFICATIONS"
|
||
}
|
||
},
|
||
{
|
||
"module": "registration",
|
||
"name": "duplicate username is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.005Z",
|
||
"durationMs": 55,
|
||
"http": 200,
|
||
"code": "A0409",
|
||
"message": "Username already exists",
|
||
"requestId": "client-e2e-3b142084-1179-4d40-849e-e12cc3a00f24, client-e2e-3b142084-1179-4d40-849e-e12cc3a00f24",
|
||
"traceId": "180782ea951d462d928c0ded00b2d2d6",
|
||
"evidence": null
|
||
},
|
||
{
|
||
"module": "registration",
|
||
"name": "login before approval",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.061Z",
|
||
"durationMs": 357,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-67e3af49-4685-4bb7-b028-722e8bfc8959, client-e2e-67e3af49-4685-4bb7-b028-722e8bfc8959",
|
||
"traceId": "30f44dff099442d3a78bc8b74578c084",
|
||
"evidence": {
|
||
"username": "client_20260808032107_024af1"
|
||
}
|
||
},
|
||
{
|
||
"module": "registration",
|
||
"name": "profile is incomplete before qualifications",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.419Z",
|
||
"durationMs": 31,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-227013df-8bf3-4b74-a09b-2f163f184f27, client-e2e-227013df-8bf3-4b74-a09b-2f163f184f27",
|
||
"traceId": "473d4eff0537449781c0b96719fd1ab3",
|
||
"evidence": {
|
||
"id": "2085929269531889665",
|
||
"status": "PROFILE_REQUIRED",
|
||
"tenantName": "客户端全链路测试企业-20260808032107-59bca758"
|
||
}
|
||
},
|
||
{
|
||
"module": "pre-approval-master-data",
|
||
"name": "load active domestic receiving warehouses",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.451Z",
|
||
"durationMs": 30,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-a304afcc-3d2e-48f2-838a-2675a0db018e, client-e2e-a304afcc-3d2e-48f2-838a-2675a0db018e",
|
||
"traceId": "2c1bc4197d454b2d82462ffda2603454",
|
||
"evidence": {
|
||
"total": "2",
|
||
"warehouseCount": 2
|
||
}
|
||
},
|
||
{
|
||
"module": "pre-approval-master-data",
|
||
"name": "load active FBA destination warehouses",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.482Z",
|
||
"durationMs": 73,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-c63815cb-b87c-4e67-a9b1-1b666f95c783, client-e2e-c63815cb-b87c-4e67-a9b1-1b666f95c783",
|
||
"traceId": "9524fde426714760814f7996a3165f89",
|
||
"evidence": {
|
||
"total": "253",
|
||
"warehouseCount": 200
|
||
}
|
||
},
|
||
{
|
||
"module": "pre-approval-master-data",
|
||
"name": "load receiving warehouse detail",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.556Z",
|
||
"durationMs": 35,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-8eba94f2-d7cb-4772-9ec8-6e923d1212a5, client-e2e-8eba94f2-d7cb-4772-9ec8-6e923d1212a5",
|
||
"traceId": "b9285ec6228b462595ffdce11293fc9e",
|
||
"evidence": {
|
||
"id": "193000000000200001",
|
||
"name": "义乌仓"
|
||
}
|
||
},
|
||
{
|
||
"module": "pre-approval-master-data",
|
||
"name": "load active pricing channels",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.592Z",
|
||
"durationMs": 55,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-5fb37aeb-ea96-4563-b270-8ab44c780593, client-e2e-5fb37aeb-ea96-4563-b270-8ab44c780593",
|
||
"traceId": "f1b8ff63de9447338fe7268f0b9d9240",
|
||
"evidence": {
|
||
"channels": [
|
||
{
|
||
"channelCode": "EXX_RAIL_NY",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "EXX_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "HEDE_PARCEL",
|
||
"priceModel": "REGION_WEIGHT_TIER",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "HEDE_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "MATSON_CLX_PARCEL",
|
||
"priceModel": "REGION_WEIGHT_TIER",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "MATSON_CLX_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "MATSON_MAX_PARCEL",
|
||
"priceModel": "REGION_WEIGHT_TIER",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "MATSON_MAX_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_CHICAGO_RAIL",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_HOUSTON_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_LA_FULL_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_LA_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_NEW_YORK_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_PARCEL",
|
||
"priceModel": "REGION_WEIGHT_TIER",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_SAVANNAH_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "pre-approval-master-data",
|
||
"name": "load public shipper candidates",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.648Z",
|
||
"durationMs": 38,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-3b63231b-2175-42c5-8408-9182ab74d85e, client-e2e-3b63231b-2175-42c5-8408-9182ab74d85e",
|
||
"traceId": "25760465f0c5444d90f0942f61ba2d43",
|
||
"evidence": {
|
||
"candidateCount": 3
|
||
}
|
||
},
|
||
{
|
||
"module": "pre-approval-product-image",
|
||
"name": "upload product image",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.688Z",
|
||
"durationMs": 45,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-c7b87143-b6a6-4295-902a-2e1f702323a3, client-e2e-c7b87143-b6a6-4295-902a-2e1f702323a3",
|
||
"traceId": "bcb254f69b4c40578906e1f4839067e9",
|
||
"evidence": {
|
||
"fileId": "2085929272749916161",
|
||
"fileName": "product-20260808032107-59bca758.png",
|
||
"contentType": "image/png",
|
||
"sizeBytes": "68"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-validation",
|
||
"name": "missing pricingTaxMode is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.734Z",
|
||
"durationMs": 43,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "pricingTaxMode: must not be blank",
|
||
"requestId": "client-e2e-16d7870e-b69b-4f26-95fe-6f15b2b9f181, client-e2e-16d7870e-b69b-4f26-95fe-6f15b2b9f181",
|
||
"traceId": "180cba1d28a3483d8864c331c18d7c2d",
|
||
"evidence": null
|
||
},
|
||
{
|
||
"module": "order-before-approval",
|
||
"name": "create draft before approval",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.777Z",
|
||
"durationMs": 87,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-330768f8-a0ee-40e5-b0ee-81469daa2eaa, client-e2e-330768f8-a0ee-40e5-b0ee-81469daa2eaa",
|
||
"traceId": "c6a7188d672346fdb221da2a8ca51ada",
|
||
"evidence": {
|
||
"orderId": "2085929273286787073",
|
||
"status": "DRAFT"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-before-approval",
|
||
"name": "create draft idempotent replay",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.865Z",
|
||
"durationMs": 35,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-d982af19-a4c6-4f60-b970-7de643925210, client-e2e-d982af19-a4c6-4f60-b970-7de643925210",
|
||
"traceId": "04c1b6180abd4314b9881b032043d13d",
|
||
"evidence": {
|
||
"orderId": "2085929273286787073",
|
||
"replayed": true
|
||
}
|
||
},
|
||
{
|
||
"module": "order-before-approval",
|
||
"name": "submit is blocked before approval",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.901Z",
|
||
"durationMs": 37,
|
||
"http": 200,
|
||
"code": "A0403",
|
||
"message": "Enterprise information must be approved before ordering",
|
||
"requestId": "client-e2e-c05ef246-241d-4d0d-be07-d4269f7db180, client-e2e-c05ef246-241d-4d0d-be07-d4269f7db180",
|
||
"traceId": "eb5b648bbbb947f8b4726072d76e5912",
|
||
"evidence": {
|
||
"orderId": "2085929273286787073",
|
||
"rejectionCode": "A0403"
|
||
}
|
||
},
|
||
{
|
||
"module": "qualification-review",
|
||
"name": "upload required qualification package",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.939Z",
|
||
"durationMs": 53,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-2d71042b-09c8-43e4-967b-73841a4e2274, client-e2e-2d71042b-09c8-43e4-967b-73841a4e2274",
|
||
"traceId": "0b99fbf514b1497995915ada6e16d5e6",
|
||
"evidence": {
|
||
"businessLicenseQualificationId": "2085929273797496834",
|
||
"legalPersonIdQualificationId": "2085929273810079746",
|
||
"tenantStatus": "PROFILE_REQUIRED"
|
||
}
|
||
},
|
||
{
|
||
"module": "qualification-review",
|
||
"name": "upload optional qualification FREIGHT_FORWARDER_CERTIFICATE",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:08.993Z",
|
||
"durationMs": 62,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-6d12910c-0756-4061-811e-44d72979fca5, client-e2e-6d12910c-0756-4061-811e-44d72979fca5",
|
||
"traceId": "52e56f224fe14e37b7bd5e3f2aa3e79d",
|
||
"evidence": {
|
||
"qualificationType": "FREIGHT_FORWARDER_CERTIFICATE",
|
||
"qualificationId": "2085929274070126594",
|
||
"tenantStatus": "PROFILE_REQUIRED"
|
||
}
|
||
},
|
||
{
|
||
"module": "qualification-review",
|
||
"name": "upload optional qualification BANK_ACCOUNT_LICENSE",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:09.055Z",
|
||
"durationMs": 47,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-ef677232-1d65-436c-8e3c-64ec145229e6, client-e2e-ef677232-1d65-436c-8e3c-64ec145229e6",
|
||
"traceId": "58dbd496faf24fc9ac711a6537ddde1c",
|
||
"evidence": {
|
||
"qualificationType": "BANK_ACCOUNT_LICENSE",
|
||
"qualificationId": "2085929274271453185",
|
||
"tenantStatus": "PROFILE_REQUIRED"
|
||
}
|
||
},
|
||
{
|
||
"module": "qualification-review",
|
||
"name": "duplicate optional qualification requires explicit replacement",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:09.103Z",
|
||
"durationMs": 54,
|
||
"http": 200,
|
||
"code": "A0409",
|
||
"message": "Qualification type already uploaded / 该类资质已上传",
|
||
"requestId": "client-e2e-80ee142d-89a7-4ed5-8ba6-a8ea448b25b5, client-e2e-80ee142d-89a7-4ed5-8ba6-a8ea448b25b5",
|
||
"traceId": "daafc657e7e644e68967f6fc35b42f09",
|
||
"evidence": {
|
||
"qualificationType": "FREIGHT_FORWARDER_CERTIFICATE",
|
||
"rejectionCode": "A0409"
|
||
}
|
||
},
|
||
{
|
||
"module": "qualification-review",
|
||
"name": "replace optional qualification explicitly",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:09.158Z",
|
||
"durationMs": 48,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-64b73984-2f96-4620-9d10-82f109d262b2, client-e2e-64b73984-2f96-4620-9d10-82f109d262b2",
|
||
"traceId": "3633c6bcc83c469da640f40eb43698f4",
|
||
"evidence": {
|
||
"qualificationType": "FREIGHT_FORWARDER_CERTIFICATE",
|
||
"qualificationId": "2085929274720243713",
|
||
"replaced": true
|
||
}
|
||
},
|
||
{
|
||
"module": "qualification-review",
|
||
"name": "required qualifications are pending",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:09.207Z",
|
||
"durationMs": 27,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-0aced113-91bb-4c99-ad5a-5234e8820452, client-e2e-0aced113-91bb-4c99-ad5a-5234e8820452",
|
||
"traceId": "267d74e490844f9a9329e55d86579228",
|
||
"evidence": {
|
||
"qualifications": [
|
||
{
|
||
"qualificationId": "2085929273797496834",
|
||
"qualificationType": "BUSINESS_LICENSE",
|
||
"status": "PENDING"
|
||
},
|
||
{
|
||
"qualificationId": "2085929273810079746",
|
||
"qualificationType": "LEGAL_PERSON_ID",
|
||
"status": "PENDING"
|
||
},
|
||
{
|
||
"qualificationId": "2085929274271453185",
|
||
"qualificationType": "BANK_ACCOUNT_LICENSE",
|
||
"status": "PENDING"
|
||
},
|
||
{
|
||
"qualificationId": "2085929274720243713",
|
||
"qualificationType": "FREIGHT_FORWARDER_CERTIFICATE",
|
||
"status": "PENDING"
|
||
},
|
||
{
|
||
"qualificationId": "2085929274070126594",
|
||
"qualificationType": "FREIGHT_FORWARDER_CERTIFICATE",
|
||
"status": "SUPERSEDED"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "qualification-review",
|
||
"name": "submit enterprise review",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:09.235Z",
|
||
"durationMs": 47,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-66a385bf-f707-4b94-9951-3a0b751eeae4, client-e2e-66a385bf-f707-4b94-9951-3a0b751eeae4",
|
||
"traceId": "4a5c20c276514573970a6d2f1b5a0bd2",
|
||
"evidence": {
|
||
"tenantId": "2085929269531889665",
|
||
"status": "PENDING"
|
||
}
|
||
},
|
||
{
|
||
"module": "qualification-review",
|
||
"name": "platform reviewer login",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:09.282Z",
|
||
"durationMs": 343,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-c3f0c5cc-c064-4cee-a83f-7977eedcc74d, client-e2e-c3f0c5cc-c064-4cee-a83f-7977eedcc74d",
|
||
"traceId": "0b0459ff9a4147e594f3fb71d4850fef",
|
||
"evidence": {
|
||
"username": "platform_admin"
|
||
}
|
||
},
|
||
{
|
||
"module": "qualification-review",
|
||
"name": "platform finds pending review",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:09.626Z",
|
||
"durationMs": 50,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-4aea8f92-9d6c-44cd-806e-6b115e650d8c, client-e2e-4aea8f92-9d6c-44cd-806e-6b115e650d8c",
|
||
"traceId": "e0a5135ce75f4e4a87ceb15e871d5b46",
|
||
"evidence": {
|
||
"reviewId": "2085929275026427905",
|
||
"tenantId": "2085929269531889665",
|
||
"status": "PENDING"
|
||
}
|
||
},
|
||
{
|
||
"module": "qualification-review",
|
||
"name": "platform sees required qualifications",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:09.677Z",
|
||
"durationMs": 43,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-f3193638-76e1-4a50-90be-8cb05d93da02, client-e2e-f3193638-76e1-4a50-90be-8cb05d93da02",
|
||
"traceId": "1830f3b5a1274a669d82363cb6ac747a",
|
||
"evidence": {
|
||
"qualifications": [
|
||
{
|
||
"qualificationId": "2085929273797496834",
|
||
"qualificationType": "BUSINESS_LICENSE",
|
||
"status": "PENDING"
|
||
},
|
||
{
|
||
"qualificationId": "2085929273810079746",
|
||
"qualificationType": "LEGAL_PERSON_ID",
|
||
"status": "PENDING"
|
||
},
|
||
{
|
||
"qualificationId": "2085929274271453185",
|
||
"qualificationType": "BANK_ACCOUNT_LICENSE",
|
||
"status": "PENDING"
|
||
},
|
||
{
|
||
"qualificationId": "2085929274720243713",
|
||
"qualificationType": "FREIGHT_FORWARDER_CERTIFICATE",
|
||
"status": "PENDING"
|
||
},
|
||
{
|
||
"qualificationId": "2085929274070126594",
|
||
"qualificationType": "FREIGHT_FORWARDER_CERTIFICATE",
|
||
"status": "SUPERSEDED"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "qualification-review",
|
||
"name": "platform approves enterprise",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:09.721Z",
|
||
"durationMs": 59,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-dcf36100-d0c8-48e6-996b-e2694e8fabe2, client-e2e-dcf36100-d0c8-48e6-996b-e2694e8fabe2",
|
||
"traceId": "7868c057694242d38e507ddd16c5dcde",
|
||
"evidence": {
|
||
"tenantId": "2085929269531889665",
|
||
"administratorCreated": false,
|
||
"generatedCredentialsReturned": false
|
||
}
|
||
},
|
||
{
|
||
"module": "qualification-review",
|
||
"name": "registered account remains enterprise owner",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:09.781Z",
|
||
"durationMs": 36,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-94ac1c1b-25d8-4205-9510-776426791932, client-e2e-94ac1c1b-25d8-4205-9510-776426791932",
|
||
"traceId": "863ca1085b314ff990c303d49320a16e",
|
||
"evidence": {
|
||
"membershipId": "2085929269531889667",
|
||
"username": "client_20260808032107_024af1",
|
||
"memberType": "OWNER",
|
||
"status": "ACTIVE"
|
||
}
|
||
},
|
||
{
|
||
"module": "merchant-session",
|
||
"name": "client re-login after approval",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:09.817Z",
|
||
"durationMs": 341,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-f32442b2-a696-499f-bdc8-0836246312dc, client-e2e-f32442b2-a696-499f-bdc8-0836246312dc",
|
||
"traceId": "8cb3c7bc163d4b009f60f8269468ba73",
|
||
"evidence": {
|
||
"username": "client_20260808032107_024af1"
|
||
}
|
||
},
|
||
{
|
||
"module": "merchant-session",
|
||
"name": "profile is active after approval",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.160Z",
|
||
"durationMs": 39,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-2ecf8171-81d8-4f1c-98cf-97a9aaf028f8, client-e2e-2ecf8171-81d8-4f1c-98cf-97a9aaf028f8",
|
||
"traceId": "16b816b34942485ab1e3d3dc1bc6dccc",
|
||
"evidence": {
|
||
"id": "2085929269531889665",
|
||
"status": "ACTIVE",
|
||
"tenantName": "客户端全链路测试企业-20260808032107-59bca758"
|
||
}
|
||
},
|
||
{
|
||
"module": "merchant-session",
|
||
"name": "required qualifications are approved",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.200Z",
|
||
"durationMs": 29,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-fc043ea0-d526-437d-b49c-8dc6f302880a, client-e2e-fc043ea0-d526-437d-b49c-8dc6f302880a",
|
||
"traceId": "9b77fe5024074696a958f70bcd99112d",
|
||
"evidence": {
|
||
"qualifications": [
|
||
{
|
||
"qualificationId": "2085929273797496834",
|
||
"qualificationType": "BUSINESS_LICENSE",
|
||
"status": "APPROVED"
|
||
},
|
||
{
|
||
"qualificationId": "2085929273810079746",
|
||
"qualificationType": "LEGAL_PERSON_ID",
|
||
"status": "APPROVED"
|
||
},
|
||
{
|
||
"qualificationId": "2085929274271453185",
|
||
"qualificationType": "BANK_ACCOUNT_LICENSE",
|
||
"status": "APPROVED"
|
||
},
|
||
{
|
||
"qualificationId": "2085929274720243713",
|
||
"qualificationType": "FREIGHT_FORWARDER_CERTIFICATE",
|
||
"status": "APPROVED"
|
||
},
|
||
{
|
||
"qualificationId": "2085929274070126594",
|
||
"qualificationType": "FREIGHT_FORWARDER_CERTIFICATE",
|
||
"status": "SUPERSEDED"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "merchant-session",
|
||
"name": "preview approved qualification file",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.231Z",
|
||
"durationMs": 34,
|
||
"http": 200,
|
||
"code": null,
|
||
"message": null,
|
||
"requestId": "client-e2e-2c8e1a8f-3084-42e6-ac1d-8b47959135b8, client-e2e-2c8e1a8f-3084-42e6-ac1d-8b47959135b8",
|
||
"traceId": "a292ee2437024eb9b76c9dd04322baf9",
|
||
"evidence": {
|
||
"sizeBytes": 68,
|
||
"contentType": "image/png"
|
||
}
|
||
},
|
||
{
|
||
"module": "profile-management",
|
||
"name": "load enterprise profile for editing",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.266Z",
|
||
"durationMs": 24,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-ea5ed54b-8460-4080-8f7b-8a3ff8501a4e, client-e2e-ea5ed54b-8460-4080-8f7b-8a3ff8501a4e",
|
||
"traceId": "dc5dd06d8d64486ba6683d247bdff4b3",
|
||
"evidence": {
|
||
"id": "2085929269531889665",
|
||
"tenantName": "客户端全链路测试企业-20260808032107-59bca758",
|
||
"status": "ACTIVE"
|
||
}
|
||
},
|
||
{
|
||
"module": "profile-management",
|
||
"name": "edit enterprise profile",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.291Z",
|
||
"durationMs": 43,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-60a6231d-cb0c-42b4-91d7-20c28927e6a4, client-e2e-60a6231d-cb0c-42b4-91d7-20c28927e6a4",
|
||
"traceId": "a3e2cfa1c3a84496803b61d5aaec9d60",
|
||
"evidence": {
|
||
"id": "2085929269531889665",
|
||
"tenantName": "客户端全链路测试企业-20260808032107-59bca758-已编辑",
|
||
"contactName": "企业联系人-20260808032107-59bca758",
|
||
"status": "ACTIVE"
|
||
}
|
||
},
|
||
{
|
||
"module": "profile-management",
|
||
"name": "enterprise profile edit is persisted",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.335Z",
|
||
"durationMs": 38,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-f826cd52-ae68-49ed-96cc-345ebed49a77, client-e2e-f826cd52-ae68-49ed-96cc-345ebed49a77",
|
||
"traceId": "bad03701e28b445da23f844b1103a8cd",
|
||
"evidence": {
|
||
"id": "2085929269531889665",
|
||
"tenantName": "客户端全链路测试企业-20260808032107-59bca758-已编辑",
|
||
"contactEmail": "company_2026080803210759bca758@example.com"
|
||
}
|
||
},
|
||
{
|
||
"module": "profile-validation",
|
||
"name": "invalid enterprise contact email is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.374Z",
|
||
"durationMs": 37,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "contactEmail: must be a well-formed email address",
|
||
"requestId": "client-e2e-21a76857-6912-4faf-8b7e-3ceaf75a9bbd, client-e2e-21a76857-6912-4faf-8b7e-3ceaf75a9bbd",
|
||
"traceId": "97ee6f3a684d434f9a34d28be68f75b8",
|
||
"evidence": {
|
||
"rejectionCode": "A0422"
|
||
}
|
||
},
|
||
{
|
||
"module": "profile-validation",
|
||
"name": "blank enterprise address detail is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.412Z",
|
||
"durationMs": 43,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "detail: must not be blank",
|
||
"requestId": "client-e2e-277c1a1f-e38f-42c2-804a-9d545c5d7203, client-e2e-277c1a1f-e38f-42c2-804a-9d545c5d7203",
|
||
"traceId": "da11e347160b4419bfed66b2e4bdb210",
|
||
"evidence": {
|
||
"rejectionCode": "A0422"
|
||
}
|
||
},
|
||
{
|
||
"module": "profile-management",
|
||
"name": "add enterprise operating address",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.455Z",
|
||
"durationMs": 33,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-e0c45d07-0865-40de-8919-cea7fd579ce5, client-e2e-e0c45d07-0865-40de-8919-cea7fd579ce5",
|
||
"traceId": "4083030d7e7045e2ac1679cf4d9fbfb6",
|
||
"evidence": {
|
||
"id": "2085929280101535746",
|
||
"addressType": "OPERATING",
|
||
"city": "深圳市",
|
||
"isDefault": true
|
||
}
|
||
},
|
||
{
|
||
"module": "profile-management",
|
||
"name": "enterprise address list contains created address",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.488Z",
|
||
"durationMs": 33,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-83dbd1fa-b75c-4f4a-aa94-031fa2cf2c1a, client-e2e-83dbd1fa-b75c-4f4a-aa94-031fa2cf2c1a",
|
||
"traceId": "45a122f0f8594c5a9d5448333ba29d83",
|
||
"evidence": {
|
||
"addressCount": 2,
|
||
"addressId": "2085929280101535746"
|
||
}
|
||
},
|
||
{
|
||
"module": "profile-management",
|
||
"name": "platform can read created enterprise address",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.521Z",
|
||
"durationMs": 46,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-03611475-212c-4d99-886f-af1786b62ef5, client-e2e-03611475-212c-4d99-886f-af1786b62ef5",
|
||
"traceId": "c959acbdbc7b46e5834d894c32f6710e",
|
||
"evidence": {
|
||
"addressCount": 2,
|
||
"addressId": "2085929280101535746"
|
||
}
|
||
},
|
||
{
|
||
"module": "profile-management",
|
||
"name": "load personal profile",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.567Z",
|
||
"durationMs": 47,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-b5ecc7b6-a71b-4191-88ef-98d274086ee8, client-e2e-b5ecc7b6-a71b-4191-88ef-98d274086ee8",
|
||
"traceId": "beb01afc4eaa4f64a11912b1027a248f",
|
||
"evidence": {
|
||
"userId": "2085929269531889666",
|
||
"username": "client_20260808032107_024af1",
|
||
"displayName": "测试管理员-20260808032107-59bca758"
|
||
}
|
||
},
|
||
{
|
||
"module": "profile-validation",
|
||
"name": "invalid personal email is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.614Z",
|
||
"durationMs": 46,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "email: must be a well-formed email address",
|
||
"requestId": "client-e2e-85282534-cf0b-4a52-9687-d4d3f3425409, client-e2e-85282534-cf0b-4a52-9687-d4d3f3425409",
|
||
"traceId": "7e03401a68d84f46853292b5573888f0",
|
||
"evidence": {
|
||
"rejectionCode": "A0422"
|
||
}
|
||
},
|
||
{
|
||
"module": "profile-management",
|
||
"name": "edit personal profile",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.661Z",
|
||
"durationMs": 53,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-6ea63b21-0301-4b5e-a67d-44bc9d37195f, client-e2e-6ea63b21-0301-4b5e-a67d-44bc9d37195f",
|
||
"traceId": "692f3fc16ee546498274e429e46df1db",
|
||
"evidence": {
|
||
"userId": "2085929269531889666",
|
||
"username": "client_20260808032107_024af1",
|
||
"displayName": "测试企业管理员-20260808032107-59bca758"
|
||
}
|
||
},
|
||
{
|
||
"module": "profile-management",
|
||
"name": "re-login after personal profile token revocation",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:10.715Z",
|
||
"durationMs": 345,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-5ca03da9-f256-4ba8-892b-d1a7968c273c, client-e2e-5ca03da9-f256-4ba8-892b-d1a7968c273c",
|
||
"traceId": "5cd7973fce8e454abc22bea783aea9be",
|
||
"evidence": {
|
||
"username": "client_20260808032107_024af1"
|
||
}
|
||
},
|
||
{
|
||
"module": "profile-management",
|
||
"name": "personal profile edit is persisted",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.061Z",
|
||
"durationMs": 49,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-0cf1b809-1b7c-4cfb-8bb6-868fa85a8bbd, client-e2e-0cf1b809-1b7c-4cfb-8bb6-868fa85a8bbd",
|
||
"traceId": "22a86f0a37ff44eea02b37b8818eaa76",
|
||
"evidence": {
|
||
"userId": "2085929269531889666",
|
||
"username": "client_20260808032107_024af1",
|
||
"displayName": "测试企业管理员-20260808032107-59bca758"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "load merchant permission resources",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.111Z",
|
||
"durationMs": 46,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-94045b6b-0669-407b-a147-7fae247b52f7, client-e2e-94045b6b-0669-407b-a147-7fae247b52f7",
|
||
"traceId": "8e77a05fea13403290ed8e567ccca25e",
|
||
"evidence": {
|
||
"permissionCount": 27
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "load owner effective permissions",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.158Z",
|
||
"durationMs": 46,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-ea217b5f-943a-4842-a4e4-5ba4854d1722, client-e2e-ea217b5f-943a-4842-a4e4-5ba4854d1722",
|
||
"traceId": "2f2b56ea95504720b16876bd7edb3a20",
|
||
"evidence": {
|
||
"backendPermissionCount": 27,
|
||
"visibleClientMenus": [
|
||
"account:profile:view",
|
||
"company:member:list",
|
||
"company:permission:list",
|
||
"company:profile:view",
|
||
"company:role:list",
|
||
"dashboard:view",
|
||
"order:first-leg:list"
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "load initial merchant roles",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.205Z",
|
||
"durationMs": 42,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-e0c3674a-6e08-4ade-8dbb-45cf133c603d, client-e2e-e0c3674a-6e08-4ade-8dbb-45cf133c603d",
|
||
"traceId": "19a074470e444442becf1c211ad1bb44",
|
||
"evidence": {
|
||
"roleCount": 0
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "create custom role",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.248Z",
|
||
"durationMs": 34,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-48b79194-d4db-4158-8f81-14ab297bc33c, client-e2e-48b79194-d4db-4158-8f81-14ab297bc33c",
|
||
"traceId": "f5a6334846834384852fdadb74ba371a",
|
||
"evidence": {
|
||
"roleId": "2085929283440201730",
|
||
"roleCode": "E2E_20260808032107_59bca758",
|
||
"roleType": "CUSTOM",
|
||
"status": "ACTIVE"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "grant permissions to custom role",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.283Z",
|
||
"durationMs": 52,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-28af332b-f5f0-4f9b-bd32-efc0b18803ca, client-e2e-28af332b-f5f0-4f9b-bd32-efc0b18803ca",
|
||
"traceId": "2d2b7c1eea004a1f9f4e8e882d646922",
|
||
"evidence": {
|
||
"roleId": "2085929283440201730",
|
||
"permissionIds": [
|
||
"5301010",
|
||
"5301011"
|
||
],
|
||
"permissionCodes": [
|
||
"merchant:order:list",
|
||
"merchant:order:view"
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "custom role permission detail is persisted",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.336Z",
|
||
"durationMs": 28,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-d5ee01f4-36af-41c9-9c67-fdde59aa123b, client-e2e-d5ee01f4-36af-41c9-9c67-fdde59aa123b",
|
||
"traceId": "ac0a059d08b14f8aa370e3904f6d6ca0",
|
||
"evidence": {
|
||
"roleId": "2085929283440201730",
|
||
"roleName": "订单只读-20260808032107-59bca758",
|
||
"permissionIds": [
|
||
"5301011",
|
||
"5301010"
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "edit custom role",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.365Z",
|
||
"durationMs": 58,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-325d1aa3-e22a-4f63-ac10-48c460e797f3, client-e2e-325d1aa3-e22a-4f63-ac10-48c460e797f3",
|
||
"traceId": "62a68895ab8543489cbc2f8e567ac4e7",
|
||
"evidence": {
|
||
"roleId": "2085929283440201730",
|
||
"roleName": "订单查询员-20260808032107-59bca758",
|
||
"description": "edited 20260808032107-59bca758"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "disable custom role",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.424Z",
|
||
"durationMs": 60,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-e77a9acf-941b-4d79-ad04-5118e00a52f8, client-e2e-e77a9acf-941b-4d79-ad04-5118e00a52f8",
|
||
"traceId": "9a0f0b5ac11e42ba80f150069192a121",
|
||
"evidence": {
|
||
"roleId": "2085929283440201730",
|
||
"status": "DISABLED"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "enable custom role",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.485Z",
|
||
"durationMs": 45,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-bfc8f525-5383-4944-8607-0481257796ea, client-e2e-bfc8f525-5383-4944-8607-0481257796ea",
|
||
"traceId": "c6319e146c5849d2bd787e586481d418",
|
||
"evidence": {
|
||
"roleId": "2085929283440201730",
|
||
"status": "ACTIVE"
|
||
}
|
||
},
|
||
{
|
||
"module": "member-validation",
|
||
"name": "member with weak password and invalid email is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.531Z",
|
||
"durationMs": 46,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "password: 密码必须同时包含字母和数字;email: must be a well-formed email address",
|
||
"requestId": "client-e2e-ba6146e3-9f51-4b1d-be85-75be3734a07a, client-e2e-ba6146e3-9f51-4b1d-be85-75be3734a07a",
|
||
"traceId": "58a8115691d54913a8b77ad866b381fe",
|
||
"evidence": {
|
||
"rejectionCode": "A0422"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "create enterprise member with role",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.578Z",
|
||
"durationMs": 357,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-0e2d2db6-9ae5-4f93-81be-04a41b49e846, client-e2e-0e2d2db6-9ae5-4f93-81be-04a41b49e846",
|
||
"traceId": "a02845e3f23645038ab67759a56f5d5c",
|
||
"evidence": {
|
||
"membershipId": "2085929284870459395",
|
||
"memberType": "EMPLOYEE",
|
||
"status": "ACTIVE",
|
||
"roleIds": [
|
||
"2085929283440201730"
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "enterprise member list contains created member and roles",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.935Z",
|
||
"durationMs": 26,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-c1d102b7-c038-4181-b078-ab8aad026f21, client-e2e-c1d102b7-c038-4181-b078-ab8aad026f21",
|
||
"traceId": "b3919f94ef924cc89986ff748acfd7f2",
|
||
"evidence": {
|
||
"memberCount": 2,
|
||
"membershipId": "2085929284870459395"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "enterprise member detail matches created fields and roles",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.963Z",
|
||
"durationMs": 27,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-3fae5c87-b3bb-42f9-8997-15815561a6c8, client-e2e-3fae5c87-b3bb-42f9-8997-15815561a6c8",
|
||
"traceId": "40f221c8e1ef448b8463ac5b66049206",
|
||
"evidence": {
|
||
"membershipId": "2085929284870459395",
|
||
"status": "ACTIVE",
|
||
"roleIds": [
|
||
"2085929283440201730"
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "duplicate member username is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:11.990Z",
|
||
"durationMs": 34,
|
||
"http": 200,
|
||
"code": "A0409",
|
||
"message": "企业成员编号已存在",
|
||
"requestId": "client-e2e-e9baffd7-015f-46e4-8d0e-b30ac1cf4472, client-e2e-e9baffd7-015f-46e4-8d0e-b30ac1cf4472",
|
||
"traceId": "fa4b8ab3c9f647f6be64ed27deb45415",
|
||
"evidence": {
|
||
"username": "member_20260808032111_71de6",
|
||
"rejectionCode": "A0409"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "assigned custom role cannot be deleted",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:12.025Z",
|
||
"durationMs": 36,
|
||
"http": 200,
|
||
"code": "A0409",
|
||
"message": "角色已分配给成员,不能删除",
|
||
"requestId": "client-e2e-f3688fbc-95db-4c7f-8a8a-965ecf443309, client-e2e-f3688fbc-95db-4c7f-8a8a-965ecf443309",
|
||
"traceId": "51a29f555fe746d48e906e1acd5dc99e",
|
||
"evidence": {
|
||
"roleId": "2085929283440201730",
|
||
"rejectionCode": "A0409"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "enterprise owner cannot be disabled",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:12.061Z",
|
||
"durationMs": 42,
|
||
"http": 200,
|
||
"code": "A0403",
|
||
"message": "企业所有者不能被停用",
|
||
"requestId": "client-e2e-c5575ca2-1b9d-43d2-9421-920b824ba639, client-e2e-c5575ca2-1b9d-43d2-9421-920b824ba639",
|
||
"traceId": "495cc532503646a883e1b3b4b7363836",
|
||
"evidence": {
|
||
"membershipId": "2085929269531889667",
|
||
"rejectionCode": "A0403"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "enterprise owner cannot be edited through member API",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:12.104Z",
|
||
"durationMs": 40,
|
||
"http": 200,
|
||
"code": "A0403",
|
||
"message": "不能通过成员管理接口创建或转让企业所有者",
|
||
"requestId": "client-e2e-81adbeb7-c112-49bc-a21f-e7a098932279, client-e2e-81adbeb7-c112-49bc-a21f-e7a098932279",
|
||
"traceId": "18e0ebaa57ee41b08e35a144d857dbeb",
|
||
"evidence": {
|
||
"membershipId": "2085929269531889667",
|
||
"rejectionCode": "A0403"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "new enterprise member can login",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:12.145Z",
|
||
"durationMs": 345,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-6ffe6bbc-7eb8-48ed-97ac-bee9fac5de24, client-e2e-6ffe6bbc-7eb8-48ed-97ac-bee9fac5de24",
|
||
"traceId": "2eccef603ebb451983b8239ad6a45eac",
|
||
"evidence": {
|
||
"username": "member_20260808032111_71de6"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "member can use granted order list permission",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:12.490Z",
|
||
"durationMs": 41,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-57eda8f7-688e-4711-afe7-78f280689748, client-e2e-57eda8f7-688e-4711-afe7-78f280689748",
|
||
"traceId": "2fd378fc9d4d4817877e977cbb54a86e",
|
||
"evidence": {
|
||
"total": "1"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "member can view order with granted permission",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:12.532Z",
|
||
"durationMs": 38,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-c670907a-263e-4817-bce6-2bfacc0e65e4, client-e2e-c670907a-263e-4817-bce6-2bfacc0e65e4",
|
||
"traceId": "d8e708e4c08f44efb31f100ebf70a7bf",
|
||
"evidence": {
|
||
"orderId": "2085929273286787073",
|
||
"status": "DRAFT"
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "read-only member effective permissions match role",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:12.571Z",
|
||
"durationMs": 24,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-f5a3dbc7-1a93-4a87-80f8-bd49fe9f8c98, client-e2e-f5a3dbc7-1a93-4a87-80f8-bd49fe9f8c98",
|
||
"traceId": "ec5edeff1a014f5a9a2f8a009d877ca5",
|
||
"evidence": {
|
||
"backendPermissions": [
|
||
"merchant:order:view",
|
||
"merchant:order:list"
|
||
],
|
||
"visibleClientMenus": [
|
||
"account:profile:view",
|
||
"dashboard:view",
|
||
"order:first-leg:list"
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "disable assigned role",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:12.595Z",
|
||
"durationMs": 103,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-c38af3bf-ed4b-4cca-bf55-739d1a280a47, client-e2e-c38af3bf-ed4b-4cca-bf55-739d1a280a47",
|
||
"traceId": "63fafcfc9b0048b19c154138d761cb50",
|
||
"evidence": {
|
||
"roleId": "2085929283440201730",
|
||
"status": "DISABLED"
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "disabled role revokes stale token permission query",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:12.698Z",
|
||
"durationMs": 32,
|
||
"http": 401,
|
||
"code": "A0401",
|
||
"message": "登录会话已过期、已退出或 Redis 不可用",
|
||
"requestId": "client-e2e-e577b34f-af6a-450f-b0e0-26fe06280f8b",
|
||
"traceId": null,
|
||
"evidence": {
|
||
"rejectionCode": "A0401",
|
||
"message": "登录会话已过期、已退出或 Redis 不可用"
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "disabled role blocks stale token order access",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:12.730Z",
|
||
"durationMs": 31,
|
||
"http": 401,
|
||
"code": "A0401",
|
||
"message": "登录会话已过期、已退出或 Redis 不可用",
|
||
"requestId": "client-e2e-46d00632-7837-4c2a-8dca-78cb46290239",
|
||
"traceId": null,
|
||
"evidence": {
|
||
"rejectionCode": "A0401",
|
||
"message": "登录会话已过期、已退出或 Redis 不可用"
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "member login succeeds while role is disabled",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:12.762Z",
|
||
"durationMs": 352,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-106f94cd-09e6-4742-8e21-a8f3a5a620cf, client-e2e-106f94cd-09e6-4742-8e21-a8f3a5a620cf",
|
||
"traceId": "337d1846ff0a4e44a1f08bbf598a610c",
|
||
"evidence": {
|
||
"username": "member_20260808032111_71de6"
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "disabled role removes member menus and permissions",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:13.115Z",
|
||
"durationMs": 28,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-c97367f0-463c-45b8-83fd-4529f93ffbd7, client-e2e-c97367f0-463c-45b8-83fd-4529f93ffbd7",
|
||
"traceId": "789a4b7b34644c8b8989a1f3b1254ffc",
|
||
"evidence": {
|
||
"backendPermissions": [],
|
||
"visibleClientMenus": [
|
||
"account:profile:view",
|
||
"dashboard:view"
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "disabled role blocks member order list",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:13.143Z",
|
||
"durationMs": 23,
|
||
"http": 200,
|
||
"code": "A0403",
|
||
"message": "Access denied",
|
||
"requestId": "client-e2e-b655b680-5171-43bb-a32f-95ea08ac3d32, client-e2e-b655b680-5171-43bb-a32f-95ea08ac3d32",
|
||
"traceId": "9845a5e02cc049e5b5e68fb45fdefb30",
|
||
"evidence": {
|
||
"rejectionCode": "A0403"
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "re-enable assigned role",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:13.167Z",
|
||
"durationMs": 386,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-514a9349-9163-4925-a356-b20e409abda0, client-e2e-514a9349-9163-4925-a356-b20e409abda0",
|
||
"traceId": "1d1a8c14baea46e9bcc04725ffcb1c2e",
|
||
"evidence": {
|
||
"roleId": "2085929283440201730",
|
||
"status": "ACTIVE"
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "member re-login after role is enabled",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:13.553Z",
|
||
"durationMs": 360,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-533e58e0-c5b6-4805-8fda-de0242261726, client-e2e-533e58e0-c5b6-4805-8fda-de0242261726",
|
||
"traceId": "8126960140f14cd386cc0a2d06d8583a",
|
||
"evidence": {
|
||
"username": "member_20260808032111_71de6"
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "re-enabled role restores member menus",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:13.914Z",
|
||
"durationMs": 40,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-df489b1b-0e23-48a6-a7d3-91452eae7aaa, client-e2e-df489b1b-0e23-48a6-a7d3-91452eae7aaa",
|
||
"traceId": "3e4d0a5da078430e8f3cc0621408460f",
|
||
"evidence": {
|
||
"backendPermissions": [
|
||
"merchant:order:view",
|
||
"merchant:order:list"
|
||
],
|
||
"visibleClientMenus": [
|
||
"account:profile:view",
|
||
"dashboard:view",
|
||
"order:first-leg:list"
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "remove order view permission from assigned role",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:13.955Z",
|
||
"durationMs": 130,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-054fd6e8-4bb4-4198-91b7-b7c1a15a27ad, client-e2e-054fd6e8-4bb4-4198-91b7-b7c1a15a27ad",
|
||
"traceId": "7579763c4356446dad6a5c497600ca20",
|
||
"evidence": {
|
||
"roleId": "2085929283440201730",
|
||
"permissionCodes": [
|
||
"merchant:order:list"
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "permission removal revokes stale member token",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:14.085Z",
|
||
"durationMs": 29,
|
||
"http": 401,
|
||
"code": "A0401",
|
||
"message": "登录会话已过期、已退出或 Redis 不可用",
|
||
"requestId": "client-e2e-2fd59441-622f-44e1-a233-b1e340b3b850",
|
||
"traceId": null,
|
||
"evidence": {
|
||
"rejectionCode": "A0401",
|
||
"message": "登录会话已过期、已退出或 Redis 不可用"
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "member re-login after permission removal",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:14.114Z",
|
||
"durationMs": 345,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-3d3e709e-22c9-4687-890e-382bc119f67e, client-e2e-3d3e709e-22c9-4687-890e-382bc119f67e",
|
||
"traceId": "5666cd80b5c7426fb3be51fe3c81ce88",
|
||
"evidence": {
|
||
"username": "member_20260808032111_71de6"
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "permission removal is reflected after re-login",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:14.460Z",
|
||
"durationMs": 42,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-5a6f85f7-8ac4-42d1-9ea8-392f40677e15, client-e2e-5a6f85f7-8ac4-42d1-9ea8-392f40677e15",
|
||
"traceId": "635f9da211584692a41d83b150e9cfd9",
|
||
"evidence": {
|
||
"backendPermissions": [
|
||
"merchant:order:list"
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "member without view permission cannot read order detail",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:14.502Z",
|
||
"durationMs": 34,
|
||
"http": 200,
|
||
"code": "A0403",
|
||
"message": "Access denied",
|
||
"requestId": "client-e2e-2e8f9ae0-07f2-41a3-a1c4-ad833784ba8a, client-e2e-2e8f9ae0-07f2-41a3-a1c4-ad833784ba8a",
|
||
"traceId": "e7709afdf9da410e8d16e41ec3dc7fc2",
|
||
"evidence": {
|
||
"rejectionCode": "A0403"
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "restore assigned role permissions",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:14.536Z",
|
||
"durationMs": 110,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-bc66d943-0d94-469c-9333-5111f28cfd00, client-e2e-bc66d943-0d94-469c-9333-5111f28cfd00",
|
||
"traceId": "54bad3bc91644bb18126f0713998ef60",
|
||
"evidence": {
|
||
"roleId": "2085929283440201730",
|
||
"permissionCodes": [
|
||
"merchant:order:list",
|
||
"merchant:order:view"
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "member re-login after permission restoration",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:14.646Z",
|
||
"durationMs": 344,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-7ecb8069-8431-4597-b6ea-a9f0075d26fc, client-e2e-7ecb8069-8431-4597-b6ea-a9f0075d26fc",
|
||
"traceId": "693204b8181d4f00ab91bf615078811b",
|
||
"evidence": {
|
||
"username": "member_20260808032111_71de6"
|
||
}
|
||
},
|
||
{
|
||
"module": "menu-permissions",
|
||
"name": "restored permission allows order detail again",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:14.990Z",
|
||
"durationMs": 38,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-2f9fabdd-8467-4641-b59c-0cc8b31bb77a, client-e2e-2f9fabdd-8467-4641-b59c-0cc8b31bb77a",
|
||
"traceId": "9b89fd6552c34b5cbe3918f98506291e",
|
||
"evidence": {
|
||
"orderId": "2085929273286787073"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "edit enterprise member",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:15.028Z",
|
||
"durationMs": 36,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-0b5bd4fd-a9a1-48f7-bf1b-af525b379374, client-e2e-0b5bd4fd-a9a1-48f7-bf1b-af525b379374",
|
||
"traceId": "7778f2d62c6d4cafb86506624dea2a56",
|
||
"evidence": {
|
||
"membershipId": "2085929284870459395",
|
||
"displayName": "已编辑订单成员-20260808032107-59bca758",
|
||
"status": "ACTIVE"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "reset enterprise member password",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:15.064Z",
|
||
"durationMs": 404,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-9a0ef229-77f2-4875-9dc8-79ee70bb54b5, client-e2e-9a0ef229-77f2-4875-9dc8-79ee70bb54b5",
|
||
"traceId": "e04acc4a99be49b2b30c6c4df2575890",
|
||
"evidence": {
|
||
"membershipId": "2085929284870459395"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "member old password is rejected after reset",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:15.468Z",
|
||
"durationMs": 336,
|
||
"http": 200,
|
||
"code": "A0401",
|
||
"message": "用户名或密码错误",
|
||
"requestId": "client-e2e-23b5b737-3565-4c6a-a7fe-4f576498439b, client-e2e-23b5b737-3565-4c6a-a7fe-4f576498439b",
|
||
"traceId": "558536c91ac447d7bbd78bcc7f3d4341",
|
||
"evidence": {
|
||
"username": "member_20260808032111_71de6",
|
||
"rejectionCode": "A0401"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "member can login with reset password",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:15.806Z",
|
||
"durationMs": 334,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-df7504a0-4967-48fc-93eb-a9b49de21889, client-e2e-df7504a0-4967-48fc-93eb-a9b49de21889",
|
||
"traceId": "24d7fa96ef594e08bb454cfd65be36fc",
|
||
"evidence": {
|
||
"username": "member_20260808032111_71de6"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "disable enterprise member",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:16.140Z",
|
||
"durationMs": 91,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-1d20eb6a-8c7e-4568-970c-82b3c45f387a, client-e2e-1d20eb6a-8c7e-4568-970c-82b3c45f387a",
|
||
"traceId": "5be563158da04721a1e3eed76c874bef",
|
||
"evidence": {
|
||
"membershipId": "2085929284870459395",
|
||
"status": "DISABLED"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "disabled member stale token is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:16.232Z",
|
||
"durationMs": 24,
|
||
"http": 401,
|
||
"code": "A0401",
|
||
"message": "登录会话已过期、已退出或 Redis 不可用",
|
||
"requestId": "client-e2e-98ab1ec9-339b-4a97-8593-8bd3bac6b1da",
|
||
"traceId": null,
|
||
"evidence": {
|
||
"membershipId": "2085929284870459395",
|
||
"rejectionCode": "A0401"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "disabled member login is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:16.256Z",
|
||
"durationMs": 38,
|
||
"http": 200,
|
||
"code": "A0403",
|
||
"message": "账号已禁用",
|
||
"requestId": "client-e2e-ad07af82-3c5f-4892-be6e-be1e59255050, client-e2e-ad07af82-3c5f-4892-be6e-be1e59255050",
|
||
"traceId": "bfbe34151b9842d9bc0e61f03de3b20d",
|
||
"evidence": {
|
||
"username": "member_20260808032111_71de6",
|
||
"rejectionCode": "A0403"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "enable enterprise member",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:16.294Z",
|
||
"durationMs": 106,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-14d10f82-258c-4440-911e-3916d6ba7ded, client-e2e-14d10f82-258c-4440-911e-3916d6ba7ded",
|
||
"traceId": "ff041ba3e7e54b79853016a9460586d1",
|
||
"evidence": {
|
||
"membershipId": "2085929284870459395",
|
||
"status": "ACTIVE"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "member re-login after account is enabled",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:16.401Z",
|
||
"durationMs": 333,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-57412d0f-37f5-4936-a634-74b488fb34bc, client-e2e-57412d0f-37f5-4936-a634-74b488fb34bc",
|
||
"traceId": "5cd5c6b024e44364a230e10772ec6fd7",
|
||
"evidence": {
|
||
"username": "member_20260808032111_71de6"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "re-enabled member can list orders before roles are cleared",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:16.735Z",
|
||
"durationMs": 45,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-d5c10872-205b-43b8-b10d-bab8c0a25bca, client-e2e-d5c10872-205b-43b8-b10d-bab8c0a25bca",
|
||
"traceId": "c6814e5172df4a18992bf1f31a02e407",
|
||
"evidence": {
|
||
"total": "1"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "clear enterprise member roles",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:16.781Z",
|
||
"durationMs": 99,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-c568360b-54a2-46b7-b19c-59599b184cf5, client-e2e-c568360b-54a2-46b7-b19c-59599b184cf5",
|
||
"traceId": "4cecf1912633405a8a0ac95dea19269d",
|
||
"evidence": {
|
||
"membershipId": "2085929284870459395",
|
||
"roleIds": []
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "member role clearing is persisted",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:16.880Z",
|
||
"durationMs": 24,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-8f144348-c0d0-4c89-8e2c-c0079676780c, client-e2e-8f144348-c0d0-4c89-8e2c-c0079676780c",
|
||
"traceId": "d13055e66b204ef4b50a5476ecc15caf",
|
||
"evidence": {
|
||
"membershipId": "2085929284870459395",
|
||
"roleIds": []
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "role clearing revokes stale member token",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:16.904Z",
|
||
"durationMs": 22,
|
||
"http": 401,
|
||
"code": "A0401",
|
||
"message": "登录会话已过期、已退出或 Redis 不可用",
|
||
"requestId": "client-e2e-51546bd3-6f10-4d86-a843-a936f5300d7c",
|
||
"traceId": null,
|
||
"evidence": {
|
||
"rejectionCode": "A0401"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "member re-login after role clearing",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:16.927Z",
|
||
"durationMs": 349,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-10a6e369-6bf7-474f-9cee-f98b68367622, client-e2e-10a6e369-6bf7-474f-9cee-f98b68367622",
|
||
"traceId": "36cca4527ad84f7b8c4fc18c952e01ba",
|
||
"evidence": {
|
||
"username": "member_20260808032111_71de6"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "member without roles cannot list orders",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.279Z",
|
||
"durationMs": 26,
|
||
"http": 200,
|
||
"code": "A0403",
|
||
"message": "Access denied",
|
||
"requestId": "client-e2e-b53320dd-5427-41fd-94bf-cdc68a87d0a9, client-e2e-b53320dd-5427-41fd-94bf-cdc68a87d0a9",
|
||
"traceId": "ea458f264da34b34802208d068ae0523",
|
||
"evidence": {
|
||
"rejectionCode": "A0403"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "disable test member after verification",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.305Z",
|
||
"durationMs": 105,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-8562c78c-fec9-4926-ab95-b135f2013aa3, client-e2e-8562c78c-fec9-4926-ab95-b135f2013aa3",
|
||
"traceId": "1f11753f18f84cbda302f9661cf0d323",
|
||
"evidence": {
|
||
"membershipId": "2085929284870459395",
|
||
"status": "DISABLED"
|
||
}
|
||
},
|
||
{
|
||
"module": "rbac-member",
|
||
"name": "delete unassigned custom role",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.410Z",
|
||
"durationMs": 43,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-9aaa5e88-57b7-424c-9c60-2c63d105dbfe, client-e2e-9aaa5e88-57b7-424c-9c60-2c63d105dbfe",
|
||
"traceId": "9a7537a7b5544dc9aefcd019c9fdde67",
|
||
"evidence": {
|
||
"roleId": "2085929283440201730"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-master-data",
|
||
"name": "load active domestic receiving warehouses",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.454Z",
|
||
"durationMs": 43,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-676f270e-2b54-46db-a333-7f6a3a8d573e, client-e2e-676f270e-2b54-46db-a333-7f6a3a8d573e",
|
||
"traceId": "0af5aaf6031c4a59add12f873b1a10b4",
|
||
"evidence": {
|
||
"total": "2",
|
||
"warehouseCount": 2
|
||
}
|
||
},
|
||
{
|
||
"module": "order-master-data",
|
||
"name": "load active FBA destination warehouses",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.498Z",
|
||
"durationMs": 56,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-e4ebae20-0730-45fe-a0c6-187c5b817f7c, client-e2e-e4ebae20-0730-45fe-a0c6-187c5b817f7c",
|
||
"traceId": "db70e52c4683485f97fe2dd7b715d412",
|
||
"evidence": {
|
||
"total": "253",
|
||
"warehouseCount": 200
|
||
}
|
||
},
|
||
{
|
||
"module": "order-master-data",
|
||
"name": "load receiving warehouse detail",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.555Z",
|
||
"durationMs": 35,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-967fe064-59c3-407e-b45e-e59b4020a4f3, client-e2e-967fe064-59c3-407e-b45e-e59b4020a4f3",
|
||
"traceId": "a0eaafbdc9964ab488aa4bd7df96d5cb",
|
||
"evidence": {
|
||
"id": "193000000000200001",
|
||
"name": "义乌仓"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-master-data",
|
||
"name": "load active pricing channels",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.590Z",
|
||
"durationMs": 35,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-610a6478-2b2e-4f0a-bafd-fd2c3764bc07, client-e2e-610a6478-2b2e-4f0a-bafd-fd2c3764bc07",
|
||
"traceId": "613b959258e4433389d132b19c17fc91",
|
||
"evidence": {
|
||
"channels": [
|
||
{
|
||
"channelCode": "EXX_RAIL_NY",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "EXX_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "HEDE_PARCEL",
|
||
"priceModel": "REGION_WEIGHT_TIER",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "HEDE_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "MATSON_CLX_PARCEL",
|
||
"priceModel": "REGION_WEIGHT_TIER",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "MATSON_CLX_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "MATSON_MAX_PARCEL",
|
||
"priceModel": "REGION_WEIGHT_TIER",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "MATSON_MAX_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_CHICAGO_RAIL",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_HOUSTON_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_LA_FULL_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_LA_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_NEW_YORK_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_PARCEL",
|
||
"priceModel": "REGION_WEIGHT_TIER",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED"
|
||
]
|
||
},
|
||
{
|
||
"channelCode": "OA_SAVANNAH_TRUCK",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxModes": [
|
||
"TAX_INCLUDED",
|
||
"TAX_EXCLUDED"
|
||
]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"module": "order-master-data",
|
||
"name": "load public shipper candidates",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.626Z",
|
||
"durationMs": 39,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-da38e81a-dcfb-4ab5-8919-3fda87eeafe5, client-e2e-da38e81a-dcfb-4ab5-8919-3fda87eeafe5",
|
||
"traceId": "6d519e9c97704480a269a4771034e867",
|
||
"evidence": {
|
||
"candidateCount": 3
|
||
}
|
||
},
|
||
{
|
||
"module": "pricing-estimate",
|
||
"name": "probe configured price 1",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.666Z",
|
||
"durationMs": 33,
|
||
"http": 200,
|
||
"code": "A0404",
|
||
"message": "当前条件没有匹配价格",
|
||
"requestId": "client-e2e-467a59d0-6b01-458a-9b12-dd829e63a8dd, client-e2e-467a59d0-6b01-458a-9b12-dd829e63a8dd",
|
||
"traceId": "381716422426461cb0ab0710cfbd3bac",
|
||
"evidence": {
|
||
"matched": false,
|
||
"destinationWarehouseId": "193000000000000001",
|
||
"destinationCode": "ABE2",
|
||
"channelCode": "EXX_RAIL_NY",
|
||
"code": "A0404",
|
||
"message": "当前条件没有匹配价格"
|
||
}
|
||
},
|
||
{
|
||
"module": "pricing-estimate",
|
||
"name": "probe configured price 2",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.700Z",
|
||
"durationMs": 26,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-d4329683-72b6-4ebf-8708-4f35fb89651b, client-e2e-d4329683-72b6-4ebf-8708-4f35fb89651b",
|
||
"traceId": "960a821599bf4787970dcfe7713843ac",
|
||
"evidence": {
|
||
"matched": true,
|
||
"destinationWarehouseId": "193000000000000002",
|
||
"destinationCode": "ABE3",
|
||
"priceBookVersionId": "2085910455296503809",
|
||
"channelCode": "EXX_RAIL_NY",
|
||
"priceModel": "FBA_WAREHOUSE_RATE",
|
||
"pricingTaxMode": "TAX_INCLUDED",
|
||
"chargeableQuantity": 20.5,
|
||
"chargeUnit": "KG",
|
||
"unitPrice": 11.7,
|
||
"estimatedAmount": 239.85,
|
||
"currency": "CNY"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-product-image",
|
||
"name": "upload product image",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.727Z",
|
||
"durationMs": 35,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-365b6c18-e096-4a1b-9e4e-a7f229457384, client-e2e-365b6c18-e096-4a1b-9e4e-a7f229457384",
|
||
"traceId": "e258d34e5c5e49f5b0363f6bdbbc9723",
|
||
"evidence": {
|
||
"fileId": "2085929310632869889",
|
||
"fileName": "product-20260808032107-59bca758.png",
|
||
"contentType": "image/png",
|
||
"sizeBytes": "68"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-product-image",
|
||
"name": "invalid product image MIME type is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.763Z",
|
||
"durationMs": 24,
|
||
"http": 200,
|
||
"code": "A0400",
|
||
"message": "产品图片仅支持JPG、PNG",
|
||
"requestId": "client-e2e-a48b9828-1e96-4258-bb9e-6c7bd47a7540, client-e2e-a48b9828-1e96-4258-bb9e-6c7bd47a7540",
|
||
"traceId": "04cc8522971b4bb7b72c0aa4492e594d",
|
||
"evidence": {
|
||
"rejectionCode": "A0400",
|
||
"message": "产品图片仅支持JPG、PNG"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-product-image",
|
||
"name": "empty product image is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.787Z",
|
||
"durationMs": 30,
|
||
"http": 200,
|
||
"code": "A0400",
|
||
"message": "产品图片不能为空",
|
||
"requestId": "client-e2e-febf717a-1540-46a4-9582-b8ea72d8181f, client-e2e-febf717a-1540-46a4-9582-b8ea72d8181f",
|
||
"traceId": "d6bd64910d01430bbd7985d676133996",
|
||
"evidence": {
|
||
"rejectionCode": "A0400",
|
||
"message": "产品图片不能为空"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-product-image",
|
||
"name": "forged product image signature is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.817Z",
|
||
"durationMs": 24,
|
||
"http": 200,
|
||
"code": "A0400",
|
||
"message": "上传内容不是有效图片",
|
||
"requestId": "client-e2e-ef1a6aec-a301-44fe-ba18-8fc1865e4a46, client-e2e-ef1a6aec-a301-44fe-ba18-8fc1865e4a46",
|
||
"traceId": "dcb6c0d3270d44a78219b363f2f04c81",
|
||
"evidence": {
|
||
"rejectionCode": "A0400",
|
||
"message": "上传内容不是有效图片"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-product-image",
|
||
"name": "product image over 5MB is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:17.844Z",
|
||
"durationMs": 207,
|
||
"http": 200,
|
||
"code": "A0400",
|
||
"message": "产品图片不能超过5MB",
|
||
"requestId": "client-e2e-d3061eec-679b-4ec0-84ae-b3493f7c48de, client-e2e-d3061eec-679b-4ec0-84ae-b3493f7c48de",
|
||
"traceId": "f7c4c5946d194b6d8dfa5673258f7a36",
|
||
"evidence": {
|
||
"rejectionCode": "A0400",
|
||
"message": "产品图片不能超过5MB"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-lifecycle",
|
||
"name": "download own product image",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.052Z",
|
||
"durationMs": 30,
|
||
"http": 200,
|
||
"code": null,
|
||
"message": null,
|
||
"requestId": "client-e2e-d4e6c59e-8572-49d5-a6c2-8196f91714c1, client-e2e-d4e6c59e-8572-49d5-a6c2-8196f91714c1",
|
||
"traceId": "735631fe56c244158f71e34a2d0bf627",
|
||
"evidence": {
|
||
"sizeBytes": 68,
|
||
"contentType": "image/png"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-validation",
|
||
"name": "FBA order missing Amazon identifiers is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.083Z",
|
||
"durationMs": 35,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "FBA orders require Amazon warehouse code, Shipment ID and Reference ID",
|
||
"requestId": "client-e2e-76af913e-18bc-4877-8cbf-283ddb7fb9db, client-e2e-76af913e-18bc-4877-8cbf-283ddb7fb9db",
|
||
"traceId": "34a49a37166844e095ae87d4979b1e91",
|
||
"evidence": {
|
||
"rejectionCode": "A0422",
|
||
"message": "FBA orders require Amazon warehouse code, Shipment ID and Reference ID"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-validation",
|
||
"name": "FBA cargo missing SKU UPC shipment and reference is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.119Z",
|
||
"durationMs": 44,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "FBA cargo requires SKU NO., UPC NO., Shipment ID and Reference ID.",
|
||
"requestId": "client-e2e-a6f9eb69-9a80-4182-990b-ffaaca18b414, client-e2e-a6f9eb69-9a80-4182-990b-ffaaca18b414",
|
||
"traceId": "3f7304f4c5df4fa9bb53e270eb2fa805",
|
||
"evidence": {
|
||
"rejectionCode": "A0422",
|
||
"message": "FBA cargo requires SKU NO., UPC NO., Shipment ID and Reference ID."
|
||
}
|
||
},
|
||
{
|
||
"module": "order-validation",
|
||
"name": "PICKUP order without sender is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.164Z",
|
||
"durationMs": 31,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "上门提货时必须填写发货信息",
|
||
"requestId": "client-e2e-4ab98690-5bed-42f3-a1c8-2cd3366a5776, client-e2e-4ab98690-5bed-42f3-a1c8-2cd3366a5776",
|
||
"traceId": "1cf2f76c779545d3a6a647ec95b79661",
|
||
"evidence": {
|
||
"rejectionCode": "A0422",
|
||
"message": "上门提货时必须填写发货信息"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-validation",
|
||
"name": "PRIVATE destination without receiver is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.196Z",
|
||
"durationMs": 28,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "私人地址必须填写收货信息",
|
||
"requestId": "client-e2e-1c938009-2b5c-4c93-816c-10af195afe41, client-e2e-1c938009-2b5c-4c93-816c-10af195afe41",
|
||
"traceId": "0aa7e9242968414a9df11c37fb302cf5",
|
||
"evidence": {
|
||
"rejectionCode": "A0422",
|
||
"message": "私人地址必须填写收货信息"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-validation",
|
||
"name": "invalid product image file ID is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.225Z",
|
||
"durationMs": 31,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "产品图片文件ID无效",
|
||
"requestId": "client-e2e-759d9a04-88b0-4dd4-9822-45b070c8aba1, client-e2e-759d9a04-88b0-4dd4-9822-45b070c8aba1",
|
||
"traceId": "bffb4d42eb844333831e859b6a8733d4",
|
||
"evidence": {
|
||
"rejectionCode": "A0422",
|
||
"message": "产品图片文件ID无效"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-validation",
|
||
"name": "zero package count weight and volume are rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.257Z",
|
||
"durationMs": 28,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "cargoes[0].packageCount: must be greater than or equal to 1;cargoes[0].volumeCbm: must be greater than or equal to 0.0001;cargoes[0].grossWeightKg: must be greater than or equal to 0.001",
|
||
"requestId": "client-e2e-06b0d527-0f95-4cd3-9326-05f31c95adfe, client-e2e-06b0d527-0f95-4cd3-9326-05f31c95adfe",
|
||
"traceId": "172185845ce140cb8ed4347a5eb6699f",
|
||
"evidence": {
|
||
"rejectionCode": "A0422",
|
||
"message": "cargoes[0].packageCount: must be greater than or equal to 1;cargoes[0].volumeCbm: must be greater than or equal to 0.0001;cargoes[0].grossWeightKg: must be greater than or equal to 0.001"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-validation",
|
||
"name": "customer remark over 1000 characters is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.286Z",
|
||
"durationMs": 21,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "customerRemark: size must be between 0 and 1000",
|
||
"requestId": "client-e2e-8117c4ae-e966-45b0-89cf-2a1649a6e811, client-e2e-8117c4ae-e966-45b0-89cf-2a1649a6e811",
|
||
"traceId": "16bcad00beb2426292ae41f261127c70",
|
||
"evidence": {
|
||
"rejectionCode": "A0422",
|
||
"message": "customerRemark: size must be between 0 and 1000"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-validation",
|
||
"name": "missing Idempotency-Key is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.308Z",
|
||
"durationMs": 37,
|
||
"http": 200,
|
||
"code": "A0400",
|
||
"message": "Bad request",
|
||
"requestId": "client-e2e-457de03f-e168-495e-bb8c-261aeb0796cc, client-e2e-457de03f-e168-495e-bb8c-261aeb0796cc",
|
||
"traceId": "72707579af75406ab2ccf9bd68f5adab",
|
||
"evidence": {
|
||
"rejectionCode": "A0400",
|
||
"message": "Bad request"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-validation",
|
||
"name": "Idempotency-Key over 128 characters is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.346Z",
|
||
"durationMs": 30,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "Idempotency-Key length must not exceed 128",
|
||
"requestId": "client-e2e-0bdda743-839d-423f-8d74-27ccfd5421e1, client-e2e-0bdda743-839d-423f-8d74-27ccfd5421e1",
|
||
"traceId": "c5583d6a667b4b5e988b89c298aa86f7",
|
||
"evidence": {
|
||
"rejectionCode": "A0422",
|
||
"message": "Idempotency-Key length must not exceed 128"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-lifecycle",
|
||
"name": "create valid draft after approval",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.377Z",
|
||
"durationMs": 75,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-1008c04b-f3f4-4549-a4ec-913e9813e3a5, client-e2e-1008c04b-f3f4-4549-a4ec-913e9813e3a5",
|
||
"traceId": "b0e1f3b955394b1ebcd411229bbe7ce9",
|
||
"evidence": {
|
||
"orderId": "2085929313522745345"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-lifecycle",
|
||
"name": "create order idempotent replay",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.453Z",
|
||
"durationMs": 41,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-bfb7f11d-2abb-440f-bb53-3b83cb8ce80e, client-e2e-bfb7f11d-2abb-440f-bb53-3b83cb8ce80e",
|
||
"traceId": "92e2e68517f242888d35b7c983749df7",
|
||
"evidence": {
|
||
"orderId": "2085929313522745345",
|
||
"replayed": true
|
||
}
|
||
},
|
||
{
|
||
"module": "order-boundary",
|
||
"name": "same idempotency key with different payload is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.495Z",
|
||
"durationMs": 43,
|
||
"http": 200,
|
||
"code": "A0409",
|
||
"message": "Idempotency-Key conflicts with a different request",
|
||
"requestId": "client-e2e-1ce3dd0b-edc6-4f24-a3a3-1c5751f84735, client-e2e-1ce3dd0b-edc6-4f24-a3a3-1c5751f84735",
|
||
"traceId": "9b5d423733294bb3ab04306dd7c6da7a",
|
||
"evidence": {
|
||
"orderId": "2085929313522745345",
|
||
"rejectionCode": "A0409"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-lifecycle",
|
||
"name": "edit draft",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.538Z",
|
||
"durationMs": 73,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-3809d510-ef0b-4549-8f61-060d27c90896, client-e2e-3809d510-ef0b-4549-8f61-060d27c90896",
|
||
"traceId": "3f4e56e2dd2541e4a91c943bc1e48b88",
|
||
"evidence": {
|
||
"orderId": "2085929313522745345",
|
||
"customerRemark": "edited-20260808032107-59bca758"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-lifecycle",
|
||
"name": "order detail preserves complete product fields",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.612Z",
|
||
"durationMs": 30,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-d2c253d6-2a14-4527-b6f9-3f8e96f5598a, client-e2e-d2c253d6-2a14-4527-b6f9-3f8e96f5598a",
|
||
"traceId": "d9ec42817be34579806c277657d65d5d",
|
||
"evidence": {
|
||
"orderId": "2085929313522745345",
|
||
"orderNo": "FL2085929313522745345",
|
||
"status": "DRAFT",
|
||
"cargo": {
|
||
"id": "2085929314185445377",
|
||
"skuNo": "SKU-ACTIVE-20260808032107-59bca758",
|
||
"cargoName": "蓝牙音箱",
|
||
"cargoNameEn": "Bluetooth Speaker",
|
||
"packageCount": 2,
|
||
"totalQuantity": 24,
|
||
"grossWeightKg": 20.5,
|
||
"volumeCbm": 0.024,
|
||
"shipmentId": "SHIP-ACTIVE-20260808032107-59bca758",
|
||
"referenceId": "REF-ACTIVE-20260808032107-59bca758",
|
||
"productImageFileId": "2085929310632869889"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"module": "order-lifecycle",
|
||
"name": "order list contains edited draft",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.642Z",
|
||
"durationMs": 41,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-caba328e-ce00-45cb-80eb-a5a06588aa8a, client-e2e-caba328e-ce00-45cb-80eb-a5a06588aa8a",
|
||
"traceId": "a8015685ae0f4480ae21e61abd562716",
|
||
"evidence": {
|
||
"total": "1",
|
||
"orderId": "2085929313522745345",
|
||
"orderNo": "FL2085929313522745345",
|
||
"status": "DRAFT"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-filters",
|
||
"name": "order keyword filter finds draft by order number",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.684Z",
|
||
"durationMs": 51,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-300ee38c-5d40-475a-a353-53d9dbda87fe, client-e2e-300ee38c-5d40-475a-a353-53d9dbda87fe",
|
||
"traceId": "be7c89fae8034c82a6ac04b872b91cd3",
|
||
"evidence": {
|
||
"total": "1",
|
||
"orderId": "2085929313522745345"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-filters",
|
||
"name": "DRAFT status filter contains draft",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.736Z",
|
||
"durationMs": 51,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-461cbdd4-e071-48a7-aaa7-c87452a23ec5, client-e2e-461cbdd4-e071-48a7-aaa7-c87452a23ec5",
|
||
"traceId": "2b669738284b4f0eb570642cd1cf4b6b",
|
||
"evidence": {
|
||
"total": "2",
|
||
"orderId": "2085929313522745345",
|
||
"status": "DRAFT"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-lifecycle",
|
||
"name": "submit order",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.787Z",
|
||
"durationMs": 91,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-afa09ba8-c314-4794-8e94-93bf77a96beb, client-e2e-afa09ba8-c314-4794-8e94-93bf77a96beb",
|
||
"traceId": "1f015da0cf774b93918fc8deba7d56df",
|
||
"evidence": {
|
||
"orderId": "2085929313522745345"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-lifecycle",
|
||
"name": "submit order idempotent replay",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.878Z",
|
||
"durationMs": 30,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-d67239f4-7144-4e6b-8036-1768a3b87751, client-e2e-d67239f4-7144-4e6b-8036-1768a3b87751",
|
||
"traceId": "6576afb444ec4ca185d8d387f6b8e175",
|
||
"evidence": {
|
||
"orderId": "2085929313522745345",
|
||
"replayed": true
|
||
}
|
||
},
|
||
{
|
||
"module": "order-lifecycle",
|
||
"name": "submitted status is persisted",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.908Z",
|
||
"durationMs": 30,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-c706855f-9263-437e-b680-abfbeab07eb1, client-e2e-c706855f-9263-437e-b680-abfbeab07eb1",
|
||
"traceId": "ce3eb024a1924b35bce173d37c52e23c",
|
||
"evidence": {
|
||
"orderId": "2085929313522745345",
|
||
"orderNo": "FL2085929313522745345",
|
||
"status": "SUBMITTED"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-filters",
|
||
"name": "SUBMITTED status filter contains submitted order",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.939Z",
|
||
"durationMs": 39,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-77794833-7194-4840-964b-de351150bc50, client-e2e-77794833-7194-4840-964b-de351150bc50",
|
||
"traceId": "de9a9a06ee9240c99c30fac72af171cd",
|
||
"evidence": {
|
||
"total": "1",
|
||
"orderId": "2085929313522745345",
|
||
"status": "SUBMITTED"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-filters",
|
||
"name": "warehouse channel and destination filters contain submitted order",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:18.978Z",
|
||
"durationMs": 51,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-d9509326-478a-410e-9bab-74854063a5f7, client-e2e-d9509326-478a-410e-9bab-74854063a5f7",
|
||
"traceId": "51395567fa364ff6a2103c39d80abc1a",
|
||
"evidence": {
|
||
"total": "2",
|
||
"orderId": "2085929313522745345"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-filters",
|
||
"name": "sender phone filter contains submitted order",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.030Z",
|
||
"durationMs": 47,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-f875fa20-c8f5-4dc2-ae1a-e6a0d05a14ce, client-e2e-f875fa20-c8f5-4dc2-ae1a-e6a0d05a14ce",
|
||
"traceId": "c63711824d914d8dbb0f7dc0c9dcd651",
|
||
"evidence": {
|
||
"total": "2",
|
||
"orderId": "2085929313522745345"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-filters",
|
||
"name": "unmatched keyword returns an empty order page",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.078Z",
|
||
"durationMs": 32,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-7a4269cc-61c5-433c-a1c8-a188b0c58d8d, client-e2e-7a4269cc-61c5-433c-a1c8-a188b0c58d8d",
|
||
"traceId": "29abfed574024a4bbb3ee501486b955a",
|
||
"evidence": {
|
||
"total": "0"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-validation",
|
||
"name": "invalid order status filter is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.110Z",
|
||
"durationMs": 24,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "status: Failed to convert value of type 'java.lang.String' to required type 'com.baiyue.order.entity.OrderStatus'; Failed to convert from type [java.lang.String] to type [com.baiyue.order.entity.OrderStatus] for value [UNKNOWN]",
|
||
"requestId": "client-e2e-a3757add-ff0b-434c-bbfe-8e93d754b697, client-e2e-a3757add-ff0b-434c-bbfe-8e93d754b697",
|
||
"traceId": "fc67f1343fc64384b3fc03a4908cf8f5",
|
||
"evidence": {
|
||
"rejectionCode": "A0422",
|
||
"message": "status: Failed to convert value of type 'java.lang.String' to required type 'com.baiyue.order.entity.OrderStatus'; Failed to convert from type [java.lang.String] to type [com.baiyue.order.entity.OrderStatus] for value [UNKNOWN]"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-boundary",
|
||
"name": "unknown order detail is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.135Z",
|
||
"durationMs": 34,
|
||
"http": 200,
|
||
"code": "A0404",
|
||
"message": "Order not found",
|
||
"requestId": "client-e2e-289e1a8e-4ec7-4c53-a7b4-8392e2193171, client-e2e-289e1a8e-4ec7-4c53-a7b4-8392e2193171",
|
||
"traceId": "656b51b87e094461aab4c1409bf07c10",
|
||
"evidence": {
|
||
"orderId": 1,
|
||
"rejectionCode": "A0404"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-boundary",
|
||
"name": "submitted order cannot be edited by client",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.170Z",
|
||
"durationMs": 57,
|
||
"http": 200,
|
||
"code": "A0409",
|
||
"message": "当前订单状态不允许编辑订单资料",
|
||
"requestId": "client-e2e-554d9976-9fda-4d2a-add5-f2453f6b3ec8, client-e2e-554d9976-9fda-4d2a-add5-f2453f6b3ec8",
|
||
"traceId": "de4f5757bc1447778604610dedfe17ac",
|
||
"evidence": {
|
||
"orderId": "2085929313522745345",
|
||
"rejectionCode": "A0409",
|
||
"message": "当前订单状态不允许编辑订单资料"
|
||
}
|
||
},
|
||
{
|
||
"module": "unified-orders",
|
||
"name": "unified order list contains submitted order",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.228Z",
|
||
"durationMs": 45,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-be52e0c9-73f6-4443-99f6-c0cb5f236666, client-e2e-be52e0c9-73f6-4443-99f6-c0cb5f236666",
|
||
"traceId": "665a7cb3fe1a42e7bc3a9570a4ed7289",
|
||
"evidence": {
|
||
"total": "1",
|
||
"orderId": "2085929313522745345",
|
||
"mainStatus": "PENDING_REVIEW",
|
||
"internalOrderStatus": "SUBMITTED"
|
||
}
|
||
},
|
||
{
|
||
"module": "unified-orders",
|
||
"name": "unified order detail returns timeline",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.274Z",
|
||
"durationMs": 37,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-e5964a83-5fe0-47a7-91ca-ce4d824ddcfd, client-e2e-e5964a83-5fe0-47a7-91ca-ce4d824ddcfd",
|
||
"traceId": "93053007c3594302bbc9fc08e61d7a8e",
|
||
"evidence": {
|
||
"orderId": "2085929313522745345",
|
||
"mainStatus": "PENDING_REVIEW",
|
||
"timelineCount": 3
|
||
}
|
||
},
|
||
{
|
||
"module": "order-lifecycle",
|
||
"name": "create second draft for cancellation",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.312Z",
|
||
"durationMs": 76,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-6c07252c-533f-4eba-a1f7-ab0c90a43f91, client-e2e-6c07252c-533f-4eba-a1f7-ab0c90a43f91",
|
||
"traceId": "92788ff8d2394cf7a50b5210053ce731",
|
||
"evidence": {
|
||
"orderId": "2085929317431836673"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-lifecycle",
|
||
"name": "cancel second draft",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.388Z",
|
||
"durationMs": 36,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-79efc661-9bf3-4e8d-b05d-7daacc2a6d47, client-e2e-79efc661-9bf3-4e8d-b05d-7daacc2a6d47",
|
||
"traceId": "4b8b477fe89a409595fd5b8bc3b037d7",
|
||
"evidence": {
|
||
"orderId": "2085929317431836673"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-lifecycle",
|
||
"name": "cancelled status is persisted",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.425Z",
|
||
"durationMs": 42,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-ea61ecc1-a744-47cf-8bff-c3260d0a9f24, client-e2e-ea61ecc1-a744-47cf-8bff-c3260d0a9f24",
|
||
"traceId": "4a2c689682824f9c8e710e6175ab4137",
|
||
"evidence": {
|
||
"orderId": "2085929317431836673",
|
||
"status": "CANCELLED"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-boundary",
|
||
"name": "cancelled order cannot be cancelled again",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.467Z",
|
||
"durationMs": 28,
|
||
"http": 200,
|
||
"code": "A0409",
|
||
"message": "该操作已完成,请勿重复提交",
|
||
"requestId": "client-e2e-f8256a70-b69f-4cd1-b760-ffa9d6c0c308, client-e2e-f8256a70-b69f-4cd1-b760-ffa9d6c0c308",
|
||
"traceId": "3f9a06b915534a6ca91e9224958cd160",
|
||
"evidence": {
|
||
"orderId": "2085929317431836673",
|
||
"rejectionCode": "A0409",
|
||
"message": "该操作已完成,请勿重复提交"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-boundary",
|
||
"name": "cancelled order cannot be submitted",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.495Z",
|
||
"durationMs": 40,
|
||
"http": 200,
|
||
"code": "A0409",
|
||
"message": "订单状态不允许当前操作: CANCELLED -> SUBMITTED",
|
||
"requestId": "client-e2e-93842327-e822-4e1c-92e0-e92cb8ed657a, client-e2e-93842327-e822-4e1c-92e0-e92cb8ed657a",
|
||
"traceId": "3272dbbbe2794407bb63539463492927",
|
||
"evidence": {
|
||
"orderId": "2085929317431836673",
|
||
"rejectionCode": "A0409",
|
||
"message": "订单状态不允许当前操作: CANCELLED -> SUBMITTED"
|
||
}
|
||
},
|
||
{
|
||
"module": "order-boundary",
|
||
"name": "invalid order page size is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.536Z",
|
||
"durationMs": 35,
|
||
"http": 200,
|
||
"code": "A0422",
|
||
"message": "size: must be less than or equal to 200",
|
||
"requestId": "client-e2e-3afbb9e4-250b-4d6c-9e27-695aa662af9c, client-e2e-3afbb9e4-250b-4d6c-9e27-695aa662af9c",
|
||
"traceId": "428a8de3b19e49469cbbeeacf337c72b",
|
||
"evidence": {
|
||
"rejectionCode": "A0422"
|
||
}
|
||
},
|
||
{
|
||
"module": "isolation",
|
||
"name": "existing client login",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.572Z",
|
||
"durationMs": 345,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-08a2c32a-6017-4db4-85ea-d3da53d90021, client-e2e-08a2c32a-6017-4db4-85ea-d3da53d90021",
|
||
"traceId": "5bf3a9d117cd4eb8b37570c087f36824",
|
||
"evidence": {
|
||
"username": "merchant_admin"
|
||
}
|
||
},
|
||
{
|
||
"module": "isolation",
|
||
"name": "cross-client order access is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.918Z",
|
||
"durationMs": 27,
|
||
"http": 200,
|
||
"code": "A0404",
|
||
"message": "Order not found",
|
||
"requestId": "client-e2e-6d792f28-0180-4447-92ac-0ad9fe71f0f9, client-e2e-6d792f28-0180-4447-92ac-0ad9fe71f0f9",
|
||
"traceId": "7e2a79c6c600429f8fdaa200d1c8449a",
|
||
"evidence": {
|
||
"orderId": "2085929313522745345",
|
||
"rejectionCode": "A0404"
|
||
}
|
||
},
|
||
{
|
||
"module": "isolation",
|
||
"name": "cross-client product image access is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.946Z",
|
||
"durationMs": 34,
|
||
"http": 200,
|
||
"code": "A0404",
|
||
"message": "产品图片不存在",
|
||
"requestId": "client-e2e-4c194325-4efb-497d-ae14-3e8b30c6cd2e, client-e2e-4c194325-4efb-497d-ae14-3e8b30c6cd2e",
|
||
"traceId": "2a9c7472d05440c8a9971302a11a8ecf",
|
||
"evidence": {
|
||
"fileId": "2085929310632869889",
|
||
"rejectionCode": "A0404"
|
||
}
|
||
},
|
||
{
|
||
"module": "isolation",
|
||
"name": "cross-client member detail access is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:19.980Z",
|
||
"durationMs": 23,
|
||
"http": 200,
|
||
"code": "A0404",
|
||
"message": "成员不存在",
|
||
"requestId": "client-e2e-af9231f1-a421-49ef-a600-cc895e7a5bbd, client-e2e-af9231f1-a421-49ef-a600-cc895e7a5bbd",
|
||
"traceId": "5504878f2c0b4ba5b269ef39b91de3be",
|
||
"evidence": {
|
||
"membershipId": "2085929284870459395",
|
||
"rejectionCode": "A0404"
|
||
}
|
||
},
|
||
{
|
||
"module": "isolation",
|
||
"name": "existing client address list excludes new enterprise address",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:20.003Z",
|
||
"durationMs": 36,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-01b5b9cb-737e-4708-84f7-ca7c6f5f0ec7, client-e2e-01b5b9cb-737e-4708-84f7-ca7c6f5f0ec7",
|
||
"traceId": "16406a6eaf894306b9d45e71ad4aa736",
|
||
"evidence": {
|
||
"addressCount": 0,
|
||
"excludedAddressId": "2085929280101535746"
|
||
}
|
||
},
|
||
{
|
||
"module": "isolation",
|
||
"name": "existing client qualification list excludes new enterprise qualification",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:20.039Z",
|
||
"durationMs": 27,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-2fa0a4fd-6c6e-43bd-9884-b56e3324ca0d, client-e2e-2fa0a4fd-6c6e-43bd-9884-b56e3324ca0d",
|
||
"traceId": "18014c6599e342a98c80c757c6fd02fe",
|
||
"evidence": {
|
||
"qualificationCount": 3,
|
||
"excludedQualificationId": "2085929273797496834"
|
||
}
|
||
},
|
||
{
|
||
"module": "isolation",
|
||
"name": "cross-client qualification file access is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:20.067Z",
|
||
"durationMs": 34,
|
||
"http": 200,
|
||
"code": "A0404",
|
||
"message": "File not found",
|
||
"requestId": "client-e2e-36486daa-73ba-4ae3-aadf-ed9fda82807f, client-e2e-36486daa-73ba-4ae3-aadf-ed9fda82807f",
|
||
"traceId": "9dfb7d7a8990458a9f8220f5e492fadb",
|
||
"evidence": {
|
||
"qualificationId": "2085929273797496834",
|
||
"rejectionCode": "A0404"
|
||
}
|
||
},
|
||
{
|
||
"module": "account-security",
|
||
"name": "rotate refresh token",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:20.102Z",
|
||
"durationMs": 39,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-2b6f6e73-565a-471f-8b31-666ffae78c55, client-e2e-2b6f6e73-565a-471f-8b31-666ffae78c55",
|
||
"traceId": "64075cd7139943c386c3b2493be6ae01",
|
||
"evidence": {
|
||
"rotated": true
|
||
}
|
||
},
|
||
{
|
||
"module": "account-security",
|
||
"name": "consumed refresh token cannot be replayed",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:20.142Z",
|
||
"durationMs": 35,
|
||
"http": 200,
|
||
"code": "A0401",
|
||
"message": "刷新令牌无效或已过期",
|
||
"requestId": "client-e2e-ab56690c-fcb3-4928-989a-46f3feeeeb24, client-e2e-ab56690c-fcb3-4928-989a-46f3feeeeb24",
|
||
"traceId": "2132db3b1429480da05d492ff54a7d8f",
|
||
"evidence": {
|
||
"rejectionCode": "A0401"
|
||
}
|
||
},
|
||
{
|
||
"module": "account-security",
|
||
"name": "change owner password to temporary value",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:20.178Z",
|
||
"durationMs": 964,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-e0335f9d-0b78-463e-a78d-7eff88f32e64, client-e2e-e0335f9d-0b78-463e-a78d-7eff88f32e64",
|
||
"traceId": "3c6e77fff40b4297b31666c176bd3c19",
|
||
"evidence": {
|
||
"username": "client_20260808032107_024af1",
|
||
"passwordChanged": true
|
||
}
|
||
},
|
||
{
|
||
"module": "account-security",
|
||
"name": "original password is rejected after change",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:21.144Z",
|
||
"durationMs": 337,
|
||
"http": 200,
|
||
"code": "A0401",
|
||
"message": "用户名或密码错误",
|
||
"requestId": "client-e2e-f517a29f-3fad-46d8-b0ef-220404b60df9, client-e2e-f517a29f-3fad-46d8-b0ef-220404b60df9",
|
||
"traceId": "cd5a2b8fe2a34f08b7e1a7ea01f7af4e",
|
||
"evidence": {
|
||
"username": "client_20260808032107_024af1",
|
||
"rejectionCode": "A0401"
|
||
}
|
||
},
|
||
{
|
||
"module": "account-security",
|
||
"name": "temporary password login succeeds",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:21.481Z",
|
||
"durationMs": 335,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-c8de63b7-cea4-45de-94e6-6135643180ab, client-e2e-c8de63b7-cea4-45de-94e6-6135643180ab",
|
||
"traceId": "0cdbfbe738b640f3841579b163029e04",
|
||
"evidence": {
|
||
"username": "client_20260808032107_024af1"
|
||
}
|
||
},
|
||
{
|
||
"module": "account-security",
|
||
"name": "restore owner password",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:21.817Z",
|
||
"durationMs": 969,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-15623045-1bc4-4acb-a4ac-83ecfade9534, client-e2e-15623045-1bc4-4acb-a4ac-83ecfade9534",
|
||
"traceId": "ddaec5119a50426187641b8ab16dc7eb",
|
||
"evidence": {
|
||
"username": "client_20260808032107_024af1",
|
||
"passwordRestored": true
|
||
}
|
||
},
|
||
{
|
||
"module": "account-security",
|
||
"name": "restored owner password login succeeds",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:22.786Z",
|
||
"durationMs": 343,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-632e7199-7198-41b5-8ce8-bc02e16854b6, client-e2e-632e7199-7198-41b5-8ce8-bc02e16854b6",
|
||
"traceId": "a3fbb93df05f4bbf89d19b7f3c3ae082",
|
||
"evidence": {
|
||
"username": "client_20260808032107_024af1",
|
||
"passwordRestored": true
|
||
}
|
||
},
|
||
{
|
||
"module": "account-security",
|
||
"name": "logout current client session",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:23.130Z",
|
||
"durationMs": 34,
|
||
"http": 200,
|
||
"code": "200",
|
||
"message": "success",
|
||
"requestId": "client-e2e-212c9530-19c5-4d2c-a164-9d633a103c70, client-e2e-212c9530-19c5-4d2c-a164-9d633a103c70",
|
||
"traceId": "ef097f25b09446609ee6db03814ba67e",
|
||
"evidence": {
|
||
"username": "client_20260808032107_024af1"
|
||
}
|
||
},
|
||
{
|
||
"module": "account-security",
|
||
"name": "logged-out refresh token is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:23.165Z",
|
||
"durationMs": 34,
|
||
"http": 200,
|
||
"code": "A0401",
|
||
"message": "刷新令牌无效或已过期",
|
||
"requestId": "client-e2e-0da16781-4cf9-4720-940c-f1c239498afd, client-e2e-0da16781-4cf9-4720-940c-f1c239498afd",
|
||
"traceId": "1280414e74034e9f94951e28f2480495",
|
||
"evidence": {
|
||
"rejectionCode": "A0401"
|
||
}
|
||
},
|
||
{
|
||
"module": "account-security",
|
||
"name": "repeated logout with revoked session is rejected",
|
||
"passed": true,
|
||
"skipped": false,
|
||
"startedAt": "2026-08-08T03:21:23.199Z",
|
||
"durationMs": 26,
|
||
"http": 401,
|
||
"code": "A0401",
|
||
"message": "未登录或令牌已失效",
|
||
"requestId": "client-e2e-ebd3bc4f-ed2b-4ece-8e51-52f85d553141",
|
||
"traceId": null,
|
||
"evidence": {
|
||
"repeated": true,
|
||
"rejectionCode": "A0401"
|
||
}
|
||
}
|
||
],
|
||
"futureModules": [
|
||
"measurement",
|
||
"ocr",
|
||
"mojia",
|
||
"billing"
|
||
]
|
||
}
|