From 54893aeb6bf2cb11bbdd5d99187526d1ddc0ffc4 Mon Sep 17 00:00:00 2001 From: ouyangxq <775153912@qq.com> Date: Sat, 8 Aug 2026 11:07:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MojiaMeasurementOpenApiService.java | 50 +- ...in-test-env-acceptance-20260808030616.json | 1932 +++++++++++++++++ 2 files changed, 1975 insertions(+), 7 deletions(-) create mode 100644 reports/admin-test-env-acceptance-20260808030616.json diff --git a/firstleg/src/main/java/com/baiyue/firstleg/service/MojiaMeasurementOpenApiService.java b/firstleg/src/main/java/com/baiyue/firstleg/service/MojiaMeasurementOpenApiService.java index 4275837b2..b2f793eb9 100644 --- a/firstleg/src/main/java/com/baiyue/firstleg/service/MojiaMeasurementOpenApiService.java +++ b/firstleg/src/main/java/com/baiyue/firstleg/service/MojiaMeasurementOpenApiService.java @@ -12,6 +12,9 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import jakarta.validation.ConstraintViolation; import jakarta.validation.Validator; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.slf4j.MDC; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; @@ -27,6 +30,7 @@ import java.util.Set; /** 将墨家固定 AppKey + JSON/Base64 协议转换为统一单箱测量命令。 */ @Service public class MojiaMeasurementOpenApiService { + private static final Logger log = LoggerFactory.getLogger(MojiaMeasurementOpenApiService.class); static final String CALLBACK_PATH = "/openapi/v1/inbound-measurements"; private static final String JPEG_PREFIX = "data:image/jpeg;base64,"; private static final long MAX_IMAGE_BYTES = 5L * 1024 * 1024; @@ -47,13 +51,34 @@ public class MojiaMeasurementOpenApiService { } public CartonMeasurementResult receive(MeasurementRequestHeaders headers, String rawJson) { - AuthenticatedMeasurementApp app = authenticator.authenticate( - "POST", CALLBACK_PATH, headers, rawJson, false); - UploadRequest request = parseAndValidate(rawJson); - MultipartFile image = decodeJpeg(request.picture()); - return cartonMeasurements.upsert(app.tenantId(), app.subjectId(), new CartonMeasurementCommand( - request.boxCode(), request.length(), request.width(), request.height(), request.weight(), - request.machineNo(), request.measuredAt() == null ? LocalDateTime.now() : request.measuredAt(), image)); + UploadRequest request = null; + try { + AuthenticatedMeasurementApp app = authenticator.authenticate( + "POST", CALLBACK_PATH, headers, rawJson, false); + request = parseAndValidate(rawJson); + MultipartFile image = decodeJpeg(request.picture()); + CartonMeasurementResult result = cartonMeasurements.upsert( + app.tenantId(), app.subjectId(), new CartonMeasurementCommand( + request.boxCode(), request.length(), request.width(), request.height(), request.weight(), + request.machineNo(), request.measuredAt() == null ? LocalDateTime.now() : request.measuredAt(), + image)); + log.info("MOJIA_MEASUREMENT accepted requestId={} traceId={} boxCode={} machineNo={} " + + "lengthCm={} widthCm={} heightCm={} weightKg={} imageBytes={} measurementId={} " + + "itemId={} created={}", + correlation("requestId"), correlation("traceId"), safe(request.boxCode()), + safe(request.machineNo()), request.length(), request.width(), request.height(), request.weight(), + image.getSize(), result.measurementId(), result.itemId(), result.created()); + return result; + } catch (RuntimeException exception) { + String code = exception instanceof BizException biz ? biz.getResultCode().code() : "S0500"; + log.warn("MOJIA_MEASUREMENT rejected requestId={} traceId={} boxCode={} machineNo={} " + + "payloadChars={} code={} reason={}", + correlation("requestId"), correlation("traceId"), + request == null ? "unparsed" : safe(request.boxCode()), + request == null ? "unparsed" : safe(request.machineNo()), + rawJson == null ? 0 : rawJson.length(), code, safe(exception.getMessage())); + throw exception; + } } private UploadRequest parseAndValidate(String rawJson) { @@ -93,6 +118,17 @@ public class MojiaMeasurementOpenApiService { return new InMemoryMultipartFile(bytes); } + private String correlation(String name) { + String value = MDC.get(name); + return value == null || value.isBlank() ? "missing" : safe(value); + } + + private String safe(String value) { + if (value == null) return "null"; + String normalized = value.replace('\r', '_').replace('\n', '_'); + return normalized.length() <= 160 ? normalized : normalized.substring(0, 160); + } + private record InMemoryMultipartFile(byte[] content) implements MultipartFile { @Override public String getName() { return "image"; } @Override public String getOriginalFilename() { return "mojia-measurement.jpg"; } diff --git a/reports/admin-test-env-acceptance-20260808030616.json b/reports/admin-test-env-acceptance-20260808030616.json new file mode 100644 index 000000000..091bb22b9 --- /dev/null +++ b/reports/admin-test-env-acceptance-20260808030616.json @@ -0,0 +1,1932 @@ +{ + "reportName": "后台管理测试环境 HTTP API 验收", + "marker": "ADMIN-API-20260808030616445", + "gateway": "http://8.163.30.128:9000", + "generatedAt": "2026-08-08T03:06:29.632Z", + "startedAt": "2026-08-08T03:06:16.445Z", + "success": true, + "fatal": null, + "summary": { + "total": 102, + "passed": 102, + "failed": 0 + }, + "modules": [ + { + "name": "orders", + "startedAt": "2026-08-08T03:06:16.829Z", + "finishedAt": "2026-08-08T03:06:22.767Z", + "success": true, + "passed": 49, + "failed": 0, + "fatal": null + }, + { + "name": "inbound-weight-ocr", + "startedAt": "2026-08-08T03:06:22.769Z", + "finishedAt": "2026-08-08T03:06:29.632Z", + "success": true, + "passed": 52, + "failed": 0, + "fatal": null + } + ], + "scenarios": [ + { + "name": "weight-image-recognition-and-confirmation", + "module": "inbound-weight-ocr", + "success": true, + "deploymentBlocked": false, + "passed": 52, + "failed": 0 + } + ], + "deploymentBlockers": [], + "createdResources": { + "orders": { + "marker": "ADMIN-API-20260808030616445", + "tenantId": "10001", + "orderId": "2085925538120663042", + "productImageFileId": "2085925536208060417", + "boxTypes": [ + "SMALL", + "MEDIUM", + "LARGE", + "EXTRA_LARGE" + ], + "inboundId": "2085925552324653057", + "orderNo": "FL2085925538120663042", + "inboundCode": "RK-2085925538120663042", + "processStatus": "WAIT_MEASURE", + "taskId": "2085925552265932801" + }, + "ocrInbound": { + "tenantId": "10001", + "inboundId": "2085925552324653057", + "marker": "ADMIN-API-20260808030616445" + }, + "testInbound": { + "tenantId": "10001", + "inboundId": "2085925552324653057", + "marker": "ADMIN-API-20260808030616445" + }, + "inboundWeightOcr": { + "tenantId": "10001", + "inboundId": "2085925552324653057", + "resultIds": [ + "2085925572193071105", + "2085925583115038721" + ], + "cleaned": true + } + }, + "excluded": [ + { + "scope": "dashboard", + "reason": "首页为静态演示数据,不调用后端 API" + }, + { + "scope": "hidden-prototypes", + "reason": "隐藏原型页面尚无已确认后端契约" + } + ], + "securityNote": "报告不保存登录密码、Access Token、Refresh Token、图片二进制或 OCR 原文全文。", + "steps": [ + { + "module": "authentication", + "scenario": null, + "name": "平台管理员登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3e09aeb0-e5f1-454e-9fd5-67d086f36f85, 067f0009-bbf1-4a38-9a92-68d43c0a2d98", + "traceId": "422760540f37443abe3b28b0d2bf75f3", + "evidence": "", + "checkedAt": "2026-08-08T03:06:16.827Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 测试账号登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d9884242-1f21-420a-a176-39b8a34f7173, 31ee6826-a1d0-4c6f-addd-5734a8511624", + "traceId": "906a04ec5da347e1ab205a3b3239480f", + "evidence": "username=merchant_admin", + "checkedAt": "2026-08-08T03:06:17.187Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 查询当前企业资料", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/iam/tenant/profile" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4a42ba37-358b-4fd4-a899-e20ffff1b6da, ce2710c4-f8f4-4ccd-be29-7591752fa183", + "traceId": "3b5a262c249549b68b150272d2ba955d", + "evidence": "", + "checkedAt": "2026-08-08T03:06:17.226Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 测试企业已审核且客户 ID 有效", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/iam/tenant/profile" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4a42ba37-358b-4fd4-a899-e20ffff1b6da, ce2710c4-f8f4-4ccd-be29-7591752fa183", + "traceId": "3b5a262c249549b68b150272d2ba955d", + "evidence": "tenantId=10001, status=ACTIVE", + "checkedAt": "2026-08-08T03:06:17.226Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询客户固定箱型", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "321450e9-a8c0-4450-ae51-21956cda6895, bb0f85ac-6380-4108-945b-a0bc278554bd", + "traceId": "2792a6b120354ebc961af28350fb63fd", + "evidence": "tenantId=10001", + "checkedAt": "2026-08-08T03:06:17.271Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "固定四箱型顺序、内径及每边加2cm正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "321450e9-a8c0-4450-ae51-21956cda6895, bb0f85ac-6380-4108-945b-a0bc278554bd", + "traceId": "2792a6b120354ebc961af28350fb63fd", + "evidence": "types=SMALL,MEDIUM,LARGE,EXTRA_LARGE", + "checkedAt": "2026-08-08T03:06:17.271Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 查询国内收货仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/warehouses?page=1&size=200&status=ACTIVE&warehouseType=DOMESTIC" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "75653447-efc4-45d6-b9d8-f7d18d81afbb, 54f68ee0-d49c-4d54-80f6-b6e8d72d70c1", + "traceId": "af44a5992a2e4414ab9455b657bcf28e", + "evidence": "", + "checkedAt": "2026-08-08T03:06:17.309Z" + }, + { + "module": "orders", + "scenario": null, + "name": "存在可用国内收货仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/warehouses?page=1&size=200&status=ACTIVE&warehouseType=DOMESTIC" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "75653447-efc4-45d6-b9d8-f7d18d81afbb, 54f68ee0-d49c-4d54-80f6-b6e8d72d70c1", + "traceId": "af44a5992a2e4414ab9455b657bcf28e", + "evidence": "count=2", + "checkedAt": "2026-08-08T03:06:17.309Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 查询 FBA 目的仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/warehouses?page=1&size=200&status=ACTIVE&warehouseType=FBA" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b3dbea83-44d6-4ebc-b40e-3cc2877d6ba0, 2813fec9-a5c9-4074-aa45-9d188c0d4c5b", + "traceId": "72d22b9300d54aaea69e1c4f50a215da", + "evidence": "", + "checkedAt": "2026-08-08T03:06:17.392Z" + }, + { + "module": "orders", + "scenario": null, + "name": "存在可用 FBA 目的仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/warehouses?page=1&size=200&status=ACTIVE&warehouseType=FBA" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b3dbea83-44d6-4ebc-b40e-3cc2877d6ba0, 2813fec9-a5c9-4074-aa45-9d188c0d4c5b", + "traceId": "72d22b9300d54aaea69e1c4f50a215da", + "evidence": "count=200", + "checkedAt": "2026-08-08T03:06:17.392Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 查询可用计费渠道", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/first-leg/pricing/channels?originWarehouseId=193000000000200001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1e42a7cf-111f-4651-b55a-25f5cfe0a9a6, 07bb3496-fcb1-47d6-86e0-e9570584cd91", + "traceId": "f02157d523a443c1a2cd7264e2d1d6cc", + "evidence": "", + "checkedAt": "2026-08-08T03:06:17.454Z" + }, + { + "module": "orders", + "scenario": null, + "name": "存在带计价税制的可用渠道", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/first-leg/pricing/channels?originWarehouseId=193000000000200001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1e42a7cf-111f-4651-b55a-25f5cfe0a9a6, 07bb3496-fcb1-47d6-86e0-e9570584cd91", + "traceId": "f02157d523a443c1a2cd7264e2d1d6cc", + "evidence": "count=15", + "checkedAt": "2026-08-08T03:06:17.454Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 查询发货客户候选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/partners/candidates?type=SHIPPER" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "32102806-8822-4280-802b-a9e5a29fd93a, 20a1d057-3b25-49c3-8787-c45c44a8611a", + "traceId": "1dcdea92b9f647b380953677ee848734", + "evidence": "", + "checkedAt": "2026-08-08T03:06:17.503Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Client 上传产品图片", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/merchant/v1/files/product-images" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ce309624-2528-44c1-9bca-19bd4293cf3f, 6776c03a-6bd1-411c-aafd-4ec8098dacca", + "traceId": "27cc8da0fc544a188784284dfa40d333", + "evidence": "contentType=image/png", + "checkedAt": "2026-08-08T03:06:17.883Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "产品图片上传返回字符串文件 ID", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/merchant/v1/files/product-images" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ce309624-2528-44c1-9bca-19bd4293cf3f, 6776c03a-6bd1-411c-aafd-4ec8098dacca", + "traceId": "27cc8da0fc544a188784284dfa40d333", + "evidence": "fileIdType=string, contentType=image/png", + "checkedAt": "2026-08-08T03:06:17.883Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Client 可下载本轮产品图片", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/files/product-images/2085925536208060417" + }, + "http": 200, + "code": null, + "message": null, + "requestId": "19cdc379-71ec-4a7e-ae42-19000dcf4837, e936d161-c26b-41a0-a6a0-09b72eb4a5f9", + "traceId": "cf5f8f3008284911ba0ae2b7b137c3fe", + "evidence": "bytes=68, contentType=image/png", + "checkedAt": "2026-08-08T03:06:17.944Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Client 创建四箱型隔离订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/merchant/v1/orders/first-leg" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "eb720ff0-a5e8-4e96-a0e0-898ce9488437, 75d39c4c-c7ae-41d0-9a97-05f989c6b7e7", + "traceId": "555ec813b554483ab4d386ed44eaa855", + "evidence": "marker=ADMIN-API-20260808030616445", + "checkedAt": "2026-08-08T03:06:18.406Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 创建订单幂等重放", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/merchant/v1/orders/first-leg" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9eaf4752-e1d9-4895-9358-362e01716afd, ccaf0aa6-af93-4f52-af46-46d8ee4e2805", + "traceId": "9d35b2cc89cd4125937b70f6ef6aa8fb", + "evidence": "", + "checkedAt": "2026-08-08T03:06:18.554Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 创建幂等结果一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/merchant/v1/orders/first-leg" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9eaf4752-e1d9-4895-9358-362e01716afd, ccaf0aa6-af93-4f52-af46-46d8ee4e2805", + "traceId": "9d35b2cc89cd4125937b70f6ef6aa8fb", + "evidence": "orderId=2085925538120663042, replayedId=2085925538120663042", + "checkedAt": "2026-08-08T03:06:18.554Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 查询隔离订单草稿", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085925538120663042" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8dcfa20d-f210-45a9-a611-60387e195339, b8b04063-9250-4373-a475-f700359d417c", + "traceId": "b9610d4914ac4ccea78280498c034675", + "evidence": "", + "checkedAt": "2026-08-08T03:06:18.595Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 草稿身份、marker 和状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085925538120663042" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8dcfa20d-f210-45a9-a611-60387e195339, b8b04063-9250-4373-a475-f700359d417c", + "traceId": "b9610d4914ac4ccea78280498c034675", + "evidence": "orderNo=FL2085925538120663042, status=DRAFT", + "checkedAt": "2026-08-08T03:06:18.595Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085925538120663042" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8dcfa20d-f210-45a9-a611-60387e195339, b8b04063-9250-4373-a475-f700359d417c", + "traceId": "b9610d4914ac4ccea78280498c034675", + "evidence": "cargoes=4, imageFileId=2085925536208060417", + "checkedAt": "2026-08-08T03:06:18.595Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 提交隔离订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/merchant/v1/orders/first-leg/2085925538120663042/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "89b941ad-bb19-458c-bb72-03c6bf8d7111, f0ab1adb-cd41-4089-b317-4c1b48bf0edf", + "traceId": "117b355208d0461591663eaa2ad7e799", + "evidence": "orderId=2085925538120663042", + "checkedAt": "2026-08-08T03:06:18.737Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 回查已提交订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085925538120663042" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0050f778-031f-4c1c-bdf0-2b336dbb47be, 78273d34-eba2-4269-8b2d-daf7d747e82b", + "traceId": "7aee9b55e8f7446cb4bdb336f21505cd", + "evidence": "", + "checkedAt": "2026-08-08T03:06:18.780Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 订单已进入待审核状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085925538120663042" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0050f778-031f-4c1c-bdf0-2b336dbb47be, 78273d34-eba2-4269-8b2d-daf7d747e82b", + "traceId": "7aee9b55e8f7446cb4bdb336f21505cd", + "evidence": "status=SUBMITTED", + "checkedAt": "2026-08-08T03:06:18.780Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询统一订单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders?page=1&size=100&tenantId=10001&orderNo=FL2085925538120663042" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d021639d-7cba-465f-981e-20ea644c5d6f, 01262847-fdba-4b82-9831-01e8875b3ff9", + "traceId": "46a38ccc5c634b198e1069e04cc23013", + "evidence": "", + "checkedAt": "2026-08-08T03:06:18.840Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 统一订单列表只核对本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders?page=1&size=100&tenantId=10001&orderNo=FL2085925538120663042" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d021639d-7cba-465f-981e-20ea644c5d6f, 01262847-fdba-4b82-9831-01e8875b3ff9", + "traceId": "46a38ccc5c634b198e1069e04cc23013", + "evidence": "orderId=2085925538120663042, found=true", + "checkedAt": "2026-08-08T03:06:18.840Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询统一订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085925538120663042?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "df01a1ed-298e-4d94-b83b-6f3a20575fb6, 4a104acd-5d84-4d22-8a25-106043c5e904", + "traceId": "f2dcb136df64457e9683e1480096416f", + "evidence": "", + "checkedAt": "2026-08-08T03:06:18.878Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 统一订单详情身份与待审核状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085925538120663042?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "df01a1ed-298e-4d94-b83b-6f3a20575fb6, 4a104acd-5d84-4d22-8a25-106043c5e904", + "traceId": "f2dcb136df64457e9683e1480096416f", + "evidence": "mainStatus=PENDING_REVIEW, timeline=2", + "checkedAt": "2026-08-08T03:06:18.878Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085925538120663042&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0e565341-4c9e-4996-9c98-01671b752fa1, 5c03d605-7e55-428a-a479-6409351ad326", + "traceId": "bc56fb75497a4950b183069ee6ff6027", + "evidence": "", + "checkedAt": "2026-08-08T03:06:18.928Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单列表只核对本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085925538120663042&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0e565341-4c9e-4996-9c98-01671b752fa1, 5c03d605-7e55-428a-a479-6409351ad326", + "traceId": "bc56fb75497a4950b183069ee6ff6027", + "evidence": "orderId=2085925538120663042, found=true", + "checkedAt": "2026-08-08T03:06:18.929Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085925538120663042?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3bc789e0-39cf-4853-b2eb-e312050b753f, 83174b5d-1ff3-44bd-b39f-c87f6db75ba6", + "traceId": "c183e47be74f44d7ae90579c99c553bd", + "evidence": "", + "checkedAt": "2026-08-08T03:06:18.970Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单详情聚合结构完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085925538120663042?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3bc789e0-39cf-4853-b2eb-e312050b753f, 83174b5d-1ff3-44bd-b39f-c87f6db75ba6", + "traceId": "c183e47be74f44d7ae90579c99c553bd", + "evidence": "cargoes=4, history=2", + "checkedAt": "2026-08-08T03:06:18.970Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085925538120663042?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3bc789e0-39cf-4853-b2eb-e312050b753f, 83174b5d-1ff3-44bd-b39f-c87f6db75ba6", + "traceId": "c183e47be74f44d7ae90579c99c553bd", + "evidence": "cargoes=4, imageFileId=2085925536208060417", + "checkedAt": "2026-08-08T03:06:18.970Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 为本轮订单添加内部备注", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085925538120663042/internal-notes?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fffa58f3-8ed7-4a3d-b157-68997c4e6ad9, d1baba9d-5b2c-47e2-b307-695703a07a14", + "traceId": "09e0ea30a26743e2944b302eae91a842", + "evidence": "", + "checkedAt": "2026-08-08T03:06:19.012Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 审核通过本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085925538120663042/approve?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dde12628-a06a-40fa-9ea1-06a0b990dd50, 7582ad59-8373-4f9e-9e1f-af5c264cdb3e", + "traceId": "c05efd0241a84719ad228964d2401140", + "evidence": "orderId=2085925538120663042", + "checkedAt": "2026-08-08T03:06:19.066Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "审核后生成隔离入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085925538120663042?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e658a3c1-7b51-4588-a1bd-32b7374e056f, be1fa846-5116-4cf2-b6d6-3859c86be581", + "traceId": "8c5334a68d4d4f11aa3f240992420c88", + "evidence": "inboundId=2085925552324653057", + "checkedAt": "2026-08-08T03:06:22.335Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮入库单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085925552324653057?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "86466b16-c49e-416d-857e-77768ab377f8, 63776888-bdd8-455f-b5d0-fa61487cf8b4", + "traceId": "41a6d1f5895141bb8b5065360fe16828", + "evidence": "inboundId=2085925552324653057", + "checkedAt": "2026-08-08T03:06:22.390Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "隔离入库单 marker 来源与可测量状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085925552324653057?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "86466b16-c49e-416d-857e-77768ab377f8, 63776888-bdd8-455f-b5d0-fa61487cf8b4", + "traceId": "41a6d1f5895141bb8b5065360fe16828", + "evidence": "markerFound=true, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T03:06:22.390Z" + }, + { + "module": "orders", + "scenario": null, + "name": "入库单详情包含托盘库位、文件、备注和状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085925552324653057?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "86466b16-c49e-416d-857e-77768ab377f8, 63776888-bdd8-455f-b5d0-fa61487cf8b4", + "traceId": "41a6d1f5895141bb8b5065360fe16828", + "evidence": "inboundId=2085925552324653057, history=1", + "checkedAt": "2026-08-08T03:06:22.390Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询入库单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085925538120663042&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "39bffa49-bf6a-49d0-8695-81700005c879, 30c73200-807b-4cf8-806a-9c441bb2a92b", + "traceId": "9bd5480312224a878b8f4090fec5a363", + "evidence": "", + "checkedAt": "2026-08-08T03:06:22.540Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 入库单列表只核对本轮入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085925538120663042&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "39bffa49-bf6a-49d0-8695-81700005c879, 30c73200-807b-4cf8-806a-9c441bb2a92b", + "traceId": "9bd5480312224a878b8f4090fec5a363", + "evidence": "inboundId=2085925552324653057, total=1", + "checkedAt": "2026-08-08T03:06:22.540Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮订单履约任务", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085925538120663042?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "36dc4316-8a05-4a69-8c00-6a198f036e42, d21ba231-4b86-4f70-850d-c473864b52f5", + "traceId": "aed30f1a9e5c4087a16334ea41c27d8b", + "evidence": "新订单应生成可查询的履约任务", + "checkedAt": "2026-08-08T03:06:22.586Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "履约任务与本轮订单和客户一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085925538120663042?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "36dc4316-8a05-4a69-8c00-6a198f036e42, d21ba231-4b86-4f70-850d-c473864b52f5", + "traceId": "aed30f1a9e5c4087a16334ea41c27d8b", + "evidence": "taskId=2085925552265932801, status=PENDING_ASSIGNMENT", + "checkedAt": "2026-08-08T03:06:22.586Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询本轮履约任务分配历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085925552265932801/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c585536b-e690-46d6-baf3-2dc8fb085c2b, 4059119b-b791-48e1-933f-9f4cd954d93a", + "traceId": "a8949942c64e4d6db1e699dc054f5e1d", + "evidence": "", + "checkedAt": "2026-08-08T03:06:22.636Z" + }, + { + "module": "orders", + "scenario": null, + "name": "履约分配历史分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085925552265932801/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c585536b-e690-46d6-baf3-2dc8fb085c2b, 4059119b-b791-48e1-933f-9f4cd954d93a", + "traceId": "a8949942c64e4d6db1e699dc054f5e1d", + "evidence": "taskId=2085925552265932801, total=0", + "checkedAt": "2026-08-08T03:06:22.636Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 受理本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085925538120663042/accept?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "45d3cf56-5706-4490-9f7b-22e25df59ce1, 39c45d14-7921-4fe7-b63c-d438b546661c", + "traceId": "b2af17ae5eaf4193846b653ddd143987", + "evidence": "", + "checkedAt": "2026-08-08T03:06:22.690Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 启动本轮订单履约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085925538120663042/start?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "37623d7e-e339-4718-ac56-5ca2109dd833, 48f437d2-60a8-408c-9602-64de0c77d623", + "traceId": "3103b556636244da83f2502f7657c2ec", + "evidence": "", + "checkedAt": "2026-08-08T03:06:22.735Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 回查本轮订单履约状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085925538120663042?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "706ab72f-0d6d-4a37-9ce6-2a4bb75789fd, 8250beeb-ccd8-443c-861b-d826c5f14b34", + "traceId": "6d1d9110b6cb42168e4ce80edae9de64", + "evidence": "", + "checkedAt": "2026-08-08T03:06:22.767Z" + }, + { + "module": "orders", + "scenario": null, + "name": "本轮订单已进入处理中且保留状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085925538120663042?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "706ab72f-0d6d-4a37-9ce6-2a4bb75789fd, 8250beeb-ccd8-443c-861b-d826c5f14b34", + "traceId": "6d1d9110b6cb42168e4ce80edae9de64", + "evidence": "status=PROCESSING, history=5", + "checkedAt": "2026-08-08T03:06:22.767Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "仅选择带本轮测试标记的可编辑入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085925552324653057?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "706ee402-a9dd-44a2-b2d5-2361a090a09b, 2e38b9aa-eb5f-4460-8852-84e9132d491d", + "traceId": "e73925212cc54f25b57bb885bbaa5a37", + "evidence": "tenantId=10001, inboundId=2085925552324653057, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T03:06:22.808Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "读取 OCR 测试前重量工作区", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5ccd8d33-e505-4261-b4a3-4b25fdeeefe2, fc32f0fc-f151-4c6e-8b10-3d72f084cb37", + "traceId": "4dea5458e862430fbfee9f8cfcddc063", + "evidence": "inboundId=2085925552324653057", + "checkedAt": "2026-08-08T03:06:22.852Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "测试入库单身份与基线可追踪", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5ccd8d33-e505-4261-b4a3-4b25fdeeefe2, fc32f0fc-f151-4c6e-8b10-3d72f084cb37", + "traceId": "4dea5458e862430fbfee9f8cfcddc063", + "evidence": "existingResults=0, baselineWeight=null", + "checkedAt": "2026-08-08T03:06:22.852Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "未认证请求不能上传称重图片", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "f562fb9b-196", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T03:06:22.876Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "非图片类型被拒绝且不模拟成功", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057" + }, + "http": 200, + "code": "A0400", + "message": "称重图片仅支持JPG、PNG、BMP", + "requestId": "dd155dd6-1861-48a7-8272-2422bdb0de39", + "traceId": "f3143506e2ff40e1b47df0dc40c872c9", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T03:06:22.918Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "超过5MB图片被拒绝", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057" + }, + "http": 200, + "code": "A0400", + "message": "称重图片不能超过5MB", + "requestId": "5b20af28-6d21-447b-b32d-0414aaacf679", + "traceId": "103b9a593fcb4319a2cbed8fe81e2cae", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T03:06:23.273Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "上传称重图片并执行 OCR", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b16d98b4-150c-42d9-a6d4-f7187aab2e00, 02f29a22-373f-4ad3-9eb8-933b0ff0169f", + "traceId": "f454e1a8e0f248a8b046894b432c8283", + "evidence": "file=orig_1cf27695-b2c3-44b3-98e3-c0be8b80f79a.JPG, size=3701469", + "checkedAt": "2026-08-08T03:06:25.395Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "上传响应保持文件 ID 字符串契约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b16d98b4-150c-42d9-a6d4-f7187aab2e00, 02f29a22-373f-4ad3-9eb8-933b0ff0169f", + "traceId": "f454e1a8e0f248a8b046894b432c8283", + "evidence": "fileIdType=string, status=RECOGNIZED", + "checkedAt": "2026-08-08T03:06:25.395Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "OCR 上传响应字段完整且置信度受限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b16d98b4-150c-42d9-a6d4-f7187aab2e00, 02f29a22-373f-4ad3-9eb8-933b0ff0169f", + "traceId": "f454e1a8e0f248a8b046894b432c8283", + "evidence": "status=RECOGNIZED, hasWeight=true, confidence=0.50972", + "checkedAt": "2026-08-08T03:06:25.395Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "重试当前称重图片 OCR", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057/2085925561352912898/recognize" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b8ceaa0d-efdc-4d12-be77-e7924b7c8b6c, 3f5b2904-fc7b-404f-93c6-c4a9c2bdc4fc", + "traceId": "32a809f706d647d2b866f1f7d919cde0", + "evidence": "fileId=2085925561352912898", + "checkedAt": "2026-08-08T03:06:26.371Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "OCR 重试保持文件身份并返回识别契约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057/2085925561352912898/recognize" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b8ceaa0d-efdc-4d12-be77-e7924b7c8b6c, 3f5b2904-fc7b-404f-93c6-c4a9c2bdc4fc", + "traceId": "32a809f706d647d2b866f1f7d919cde0", + "evidence": "sameFile=true, status=RECOGNIZED", + "checkedAt": "2026-08-08T03:06:26.372Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "登记 OCR 原值", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4a79cb29-15f6-4b2f-b812-b60d376c239a, 81119816-fab3-42cd-afa7-6c37b4de5d40", + "traceId": "e0f3b689a2084354b03ce901d5482700", + "evidence": "fileId=2085925561352912898", + "checkedAt": "2026-08-08T03:06:26.457Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "重量结果 ID、文件 ID 和初始版本契约正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4a79cb29-15f6-4b2f-b812-b60d376c239a, 81119816-fab3-42cd-afa7-6c37b4de5d40", + "traceId": "e0f3b689a2084354b03ce901d5482700", + "evidence": "resultIdType=string, fileIdType=string, version=0", + "checkedAt": "2026-08-08T03:06:26.458Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "鉴权读取原始称重图片", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057/2085925561352912898" + }, + "http": 200, + "code": null, + "message": "3701469 bytes (image/jpeg)", + "requestId": "49339b1c-3f54-4cc6-b61a-a73fca82d406, b9d80e38-9273-4399-9432-5f95061b020c", + "traceId": "157f53dc33014fd0854679b7b5b5260c", + "evidence": "contentType=image/jpeg, bytes=3701469", + "checkedAt": "2026-08-08T03:06:26.639Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "缩略图返回受限尺寸 JPEG", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057/2085925561352912898/thumbnail" + }, + "http": 200, + "code": null, + "message": "18677 bytes (image/jpeg)", + "requestId": "6a410570-bb68-483c-b061-caee6ff86123, 844952f4-882d-49ac-89da-ab6093ce8ec6", + "traceId": "67d5b947dc9b43baa47ab56af66c2410", + "evidence": "contentType=image/jpeg, bytes=18677, dimensions=240x320", + "checkedAt": "2026-08-08T03:06:27.062Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "登记后回查 OCR 重量结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dca0c81b-cd47-494f-9441-1996d1c7d07b, 3ea80739-8128-48ac-9b76-6ec3e26d566c", + "traceId": "5ed4d407518248eea39eb2adbbadf3e4", + "evidence": "inboundId=2085925552324653057", + "checkedAt": "2026-08-08T03:06:27.104Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "工作区保留本轮 OCR 原值且未覆盖历史结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dca0c81b-cd47-494f-9441-1996d1c7d07b, 3ea80739-8128-48ac-9b76-6ec3e26d566c", + "traceId": "5ed4d407518248eea39eb2adbbadf3e4", + "evidence": "resultFound=true, baselineCount=0, currentCount=1", + "checkedAt": "2026-08-08T03:06:27.104Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "旧版本确认返回并发冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results/2085925572193071105/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0409", + "message": "数据版本已变化,请刷新后重试", + "requestId": "8393770d-a6a8-4902-a676-d57599d5ac8a", + "traceId": "729fa768068041ca9def8b04017cea80", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T03:06:27.167Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "确认 OCR 重量并计入实际总毛重", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results/2085925572193071105/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "737aa1f3-ec36-4a4c-836c-cc7a7f16ac5c, 0faff8fd-013f-4e84-be0c-31abce6839f8", + "traceId": "a794719f17fc4303bd73c60ced4e0365", + "evidence": "usedOriginal=true", + "checkedAt": "2026-08-08T03:06:27.260Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "确认结果状态、版本和最终KG正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results/2085925572193071105/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "737aa1f3-ec36-4a4c-836c-cc7a7f16ac5c, 0faff8fd-013f-4e84-be0c-31abce6839f8", + "traceId": "a794719f17fc4303bd73c60ced4e0365", + "evidence": "status=CONFIRMED, version=1, finalKg=285.5", + "checkedAt": "2026-08-08T03:06:27.260Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "确认后回查实际总毛重", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a543351a-9e19-4374-9300-6909687c238c, f7184bbb-f431-44b3-b938-07a24f0272c1", + "traceId": "b1fe2e168e2f40188613af7deb624139", + "evidence": "inboundId=2085925552324653057", + "checkedAt": "2026-08-08T03:06:27.305Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "确认后实际总毛重按服务端结果重算", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a543351a-9e19-4374-9300-6909687c238c, f7184bbb-f431-44b3-b938-07a24f0272c1", + "traceId": "b1fe2e168e2f40188613af7deb624139", + "evidence": "baseline=null, added=285.5, actual=285.5", + "checkedAt": "2026-08-08T03:06:27.305Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "旧版本删除返回并发冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results/2085925572193071105?tenantId=10001&version=0" + }, + "http": 200, + "code": "A0409", + "message": "数据版本已变化,请刷新后重试", + "requestId": "f2bd0c86-a2e0-45e1-ac3a-2f923feba787", + "traceId": "1bac09bab67942a393f2fe166d6bcb34", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T03:06:27.351Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "删除本轮已确认图片及重量结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results/2085925572193071105?tenantId=10001&version=1" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "00c1fc07-b1b1-4941-b732-a54f0c970d41, 8cfe04e4-52c9-492b-83fe-91b137c70afb", + "traceId": "7f41e72db28f4f8e894f519b5c13eea7", + "evidence": "resultId=2085925572193071105, version=1", + "checkedAt": "2026-08-08T03:06:27.541Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "删除后回查重量工作区", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b10c124c-9c1c-4bac-bfa2-bb047d9a2cab, 9d44853d-0be0-47f0-bf58-84443d95f3d6", + "traceId": "6cd9dfa08b0d4db9bc56ae9ed7273480", + "evidence": "inboundId=2085925552324653057", + "checkedAt": "2026-08-08T03:06:27.584Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "删除后结果消失且总毛重恢复基线", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b10c124c-9c1c-4bac-bfa2-bb047d9a2cab, 9d44853d-0be0-47f0-bf58-84443d95f3d6", + "traceId": "6cd9dfa08b0d4db9bc56ae9ed7273480", + "evidence": "resultMissing=true, baseline=null, actual=null", + "checkedAt": "2026-08-08T03:06:27.584Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "删除结果后原始图片不可再读取", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057/2085925561352912898" + }, + "http": 200, + "code": "A0404", + "message": "称重图片不存在", + "requestId": "9e3fa992-984f-49e8-a70d-699050fe1c99", + "traceId": "1d915ec6eefc43c8b52db5d3b7ffb800", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T03:06:27.626Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "上传称重图片并执行 OCR", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0e570981-473c-499e-b693-2ec9744d2a05, ed912c93-762a-46ad-a594-741907529501", + "traceId": "908e5a8d18ec43d687c903f9d21af6a7", + "evidence": "file=orig_1cf27695-b2c3-44b3-98e3-c0be8b80f79a.JPG, size=3701469", + "checkedAt": "2026-08-08T03:06:29.002Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "上传响应保持文件 ID 字符串契约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0e570981-473c-499e-b693-2ec9744d2a05, ed912c93-762a-46ad-a594-741907529501", + "traceId": "908e5a8d18ec43d687c903f9d21af6a7", + "evidence": "fileIdType=string, status=RECOGNIZED", + "checkedAt": "2026-08-08T03:06:29.002Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "OCR 上传响应字段完整且置信度受限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0e570981-473c-499e-b693-2ec9744d2a05, ed912c93-762a-46ad-a594-741907529501", + "traceId": "908e5a8d18ec43d687c903f9d21af6a7", + "evidence": "status=RECOGNIZED, hasWeight=true, confidence=0.50972", + "checkedAt": "2026-08-08T03:06:29.002Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "登记人工录入重量结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "821b2e22-01f2-4cbc-95af-04c6c2e7b535, 0837771d-dd69-42bc-a697-0459b112d2e4", + "traceId": "07a7733326674ee5920399901c0563cc", + "evidence": "fileId=2085925579241619457", + "checkedAt": "2026-08-08T03:06:29.048Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "重量结果 ID、文件 ID 和初始版本契约正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "821b2e22-01f2-4cbc-95af-04c6c2e7b535, 0837771d-dd69-42bc-a697-0459b112d2e4", + "traceId": "07a7733326674ee5920399901c0563cc", + "evidence": "resultIdType=string, fileIdType=string, version=0", + "checkedAt": "2026-08-08T03:06:29.048Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "零重量确认被拒绝", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results/2085925583115038721/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "adjustedWeightValue: must be greater than or equal to 0.001", + "requestId": "e61e7cd6-8aae-4115-bb23-d85ebac4ba31", + "traceId": "a5b005f753264d02b5f9dbd4c62a478c", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T03:06:29.143Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "零重量确认被拒绝后回查工作区", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "102cbb8f-ebc0-46ad-b614-48d0c93bd273, 07477166-b751-4047-8fd6-5bb6cfd6bd01", + "traceId": "97cec21ed8944224a7994ff6530c46bb", + "evidence": "inboundId=2085925552324653057", + "checkedAt": "2026-08-08T03:06:29.182Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "零重量确认被拒绝未改变重量结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "102cbb8f-ebc0-46ad-b614-48d0c93bd273, 07477166-b751-4047-8fd6-5bb6cfd6bd01", + "traceId": "97cec21ed8944224a7994ff6530c46bb", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T03:06:29.182Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "负重量确认被拒绝", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results/2085925583115038721/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "adjustedWeightValue: must be greater than or equal to 0.001", + "requestId": "1798be00-8747-459e-8b2b-fd5de738e24f", + "traceId": "9d20b5abb9de453ba86fa649155eeaaa", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T03:06:29.209Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "负重量确认被拒绝后回查工作区", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1ea24ccd-0481-4654-bf7d-7f981c6aca42, f5c368ce-97ee-444a-83af-9b4fd44f065f", + "traceId": "86b8fcca7bb04389b7c2a26a2beb7179", + "evidence": "inboundId=2085925552324653057", + "checkedAt": "2026-08-08T03:06:29.251Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "负重量确认被拒绝未改变重量结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1ea24ccd-0481-4654-bf7d-7f981c6aca42, f5c368ce-97ee-444a-83af-9b4fd44f065f", + "traceId": "86b8fcca7bb04389b7c2a26a2beb7179", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T03:06:29.251Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "LB 0.001换算为零后被拒绝", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results/2085925583115038721/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "换算后重量不能小于 0.001 KG", + "requestId": "80b21d81-d8fb-4435-8d7d-704145cfb4e6", + "traceId": "d40d7ed7e7cd4acabe1d4547b99e14af", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T03:06:29.296Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "LB 0.001换算为零后被拒绝后回查工作区", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dd54e03a-bc27-44bf-9f70-9e8d32acc6dd, e9ff467a-4f1b-46a6-939e-1cfe6c54936e", + "traceId": "a866dc19976e44dea1e9c97518976cc9", + "evidence": "inboundId=2085925552324653057", + "checkedAt": "2026-08-08T03:06:29.324Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "LB 0.001换算为零后被拒绝未改变重量结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dd54e03a-bc27-44bf-9f70-9e8d32acc6dd, e9ff467a-4f1b-46a6-939e-1cfe6c54936e", + "traceId": "a866dc19976e44dea1e9c97518976cc9", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T03:06:29.324Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "超出15位整数重量被拒绝", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results/2085925583115038721/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "adjustedWeightValue: numeric value out of bounds (<15 digits>.<3 digits> expected)", + "requestId": "32a81f5e-d9f5-4fb0-ab97-aa87eaf07cc9", + "traceId": "18434651cfda4c0ea2207471380a2822", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T03:06:29.372Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "超出15位整数重量被拒绝后回查工作区", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "472b0da0-1b0f-4da9-99ee-fc599049909a, 373e3963-d7df-4e00-aab8-1d86e0968fc2", + "traceId": "853d4305cbdd4dd08e3d853a54e57901", + "evidence": "inboundId=2085925552324653057", + "checkedAt": "2026-08-08T03:06:29.416Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "超出15位整数重量被拒绝未改变重量结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "472b0da0-1b0f-4da9-99ee-fc599049909a, 373e3963-d7df-4e00-aab8-1d86e0968fc2", + "traceId": "853d4305cbdd4dd08e3d853a54e57901", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T03:06:29.416Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "人工改重与确认原子完成", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results/2085925583115038721/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ae8ef9c5-7e5c-4ce4-9c1f-41d386eb02a6, 94d9a35f-572d-47fc-87a1-282de3d5f10f", + "traceId": "3faf6af3d0e341a1824a88d1e1bf7185", + "evidence": "adjusted=10.125 LB", + "checkedAt": "2026-08-08T03:06:29.478Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "LB 人工改重保留输入并正确换算最终KG", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results/2085925583115038721/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ae8ef9c5-7e5c-4ce4-9c1f-41d386eb02a6, 94d9a35f-572d-47fc-87a1-282de3d5f10f", + "traceId": "3faf6af3d0e341a1824a88d1e1bf7185", + "evidence": "adjusted=10.125 LB, finalKg=4.593, expectedKg=4.593", + "checkedAt": "2026-08-08T03:06:29.478Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "删除本轮人工改重图片及结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/weight-results/2085925583115038721?tenantId=10001&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "27bda9e7-6e02-43e9-9fe6-66940b0914b7, 94f02d11-dd2a-4945-b8f9-3e68989aaa9f", + "traceId": "95de6104ced74724946aa6e689934bb7", + "evidence": "resultId=2085925583115038721, version=2", + "checkedAt": "2026-08-08T03:06:29.535Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "删除后回查重量工作区", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "aa499b8c-beff-4b4b-aeb6-45659fd48d7c, 5904157f-dfc2-465a-ae26-80d298b7c22c", + "traceId": "e415a3a8c37544fe8fa623df3d53eddb", + "evidence": "inboundId=2085925552324653057", + "checkedAt": "2026-08-08T03:06:29.570Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "删除后结果消失且总毛重恢复基线", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "aa499b8c-beff-4b4b-aeb6-45659fd48d7c, 5904157f-dfc2-465a-ae26-80d298b7c22c", + "traceId": "e415a3a8c37544fe8fa623df3d53eddb", + "evidence": "resultMissing=true, baseline=null, actual=null", + "checkedAt": "2026-08-08T03:06:29.570Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "删除结果后原始图片不可再读取", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/measurements/10001/2085925552324653057/2085925579241619457" + }, + "http": 200, + "code": "A0404", + "message": "称重图片不存在", + "requestId": "3b2d4273-f933-46c5-88c6-609719adce14", + "traceId": "69f9f8b8046e4015a8ba041862ed09f0", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T03:06:29.598Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "最终清理后回查重量工作区", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2220920a-9623-4382-bbc6-a75f3917434d, c2cfbbd9-270f-464e-a17b-00f98dda4f28", + "traceId": "74d7392ae5f0465495a2f91872cf9af5", + "evidence": "inboundId=2085925552324653057", + "checkedAt": "2026-08-08T03:06:29.632Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "仅清理本轮结果且订单总毛重恢复运行前基线", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085925552324653057/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2220920a-9623-4382-bbc6-a75f3917434d, c2cfbbd9-270f-464e-a17b-00f98dda4f28", + "traceId": "74d7392ae5f0465495a2f91872cf9af5", + "evidence": "leftovers=0, baseline=null, actual=null", + "checkedAt": "2026-08-08T03:06:29.632Z" + } + ] +}