From 57fcabe740b55820eb3292a5ab0b6ba97ec9ea34 Mon Sep 17 00:00:00 2001 From: ouyangxq <775153912@qq.com> Date: Sat, 8 Aug 2026 15:57:04 +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 --- .../PlatformTruckAppointmentController.java | 3 + .../firstleg/dto/TruckAppointmentDtos.java | 1 + .../TruckAppointmentRepository.java | 2 +- .../service/TruckAppointmentService.java | 35 +- .../service/TruckAppointmentServiceTest.java | 25 + ...dmin-boundaries-service-flow-20260808.json | 1362 +++ ...min-master-data-valid-import-20260808.json | 1120 ++ ...ster-data-valid-import-final-20260808.json | 1120 ++ .../admin-service-center-flow-20260808.json | 1244 ++ ...test-env-acceptance-coverage-20260808.json | 9850 ++++++++++++++++ ...nv-acceptance-coverage-final-20260808.json | 9823 ++++++++++++++++ ...st-env-acceptance-xlsx-final-20260808.json | 9964 +++++++++++++++++ .../admin-test-env-modules/master-data.mjs | 69 +- .../service-center-flow.mjs | 9 +- .../truck-appointments.mjs | 2 +- 15 files changed, 34604 insertions(+), 25 deletions(-) create mode 100644 reports/admin-boundaries-service-flow-20260808.json create mode 100644 reports/admin-master-data-valid-import-20260808.json create mode 100644 reports/admin-master-data-valid-import-final-20260808.json create mode 100644 reports/admin-service-center-flow-20260808.json create mode 100644 reports/admin-test-env-acceptance-coverage-20260808.json create mode 100644 reports/admin-test-env-acceptance-coverage-final-20260808.json create mode 100644 reports/admin-test-env-acceptance-xlsx-final-20260808.json diff --git a/firstleg/src/main/java/com/baiyue/firstleg/controller/PlatformTruckAppointmentController.java b/firstleg/src/main/java/com/baiyue/firstleg/controller/PlatformTruckAppointmentController.java index 15d7a8c2d..b88588301 100644 --- a/firstleg/src/main/java/com/baiyue/firstleg/controller/PlatformTruckAppointmentController.java +++ b/firstleg/src/main/java/com/baiyue/firstleg/controller/PlatformTruckAppointmentController.java @@ -3,6 +3,9 @@ import com.baiyue.common.audit.BusinessAudit; import com.baiyue.common.core.api. @Tag(name="拖车预约") @Validated @RestController @RequestMapping("/api/platform/v1/truck-appointments") public class PlatformTruckAppointmentController { @Resource TruckAppointmentService service; @GetMapping @PreAuthorize("hasAuthority('platform:firstleg:truck-appointment:list')") public ApiResponse> page(@AuthenticationPrincipal AuthenticatedUser u,@Valid Query q){FirstlegScopeGuard.platform(u);return ApiResponse.success(service.page(q));} @GetMapping("/{id}") @PreAuthorize("hasAuthority('platform:firstleg:truck-appointment:view')") public ApiResponse detail(@AuthenticationPrincipal AuthenticatedUser u,@PathVariable @Positive long id){FirstlegScopeGuard.platform(u);return ApiResponse.success(service.detail(id));} + @GetMapping("/{id}/history") @PreAuthorize("hasAuthority('platform:firstleg:truck-appointment:view')") public ApiResponse> history(@AuthenticationPrincipal AuthenticatedUser u,@PathVariable @Positive long id){FirstlegScopeGuard.platform(u);return ApiResponse.success(service.history(id));} + @GetMapping("/{id}/attachments") @PreAuthorize("hasAuthority('platform:firstleg:truck-appointment:view')") public ApiResponse> attachments(@AuthenticationPrincipal AuthenticatedUser u,@PathVariable @Positive long id){FirstlegScopeGuard.platform(u);return ApiResponse.success(service.attachments(id));} + @PostMapping("/{id}/attachments") @PreAuthorize("hasAuthority('platform:firstleg:truck-appointment:edit')") public ApiResponse attach(@AuthenticationPrincipal AuthenticatedUser u,@PathVariable @Positive long id,@Valid @RequestBody AttachmentRequest r){FirstlegScopeGuard.platform(u);return ApiResponse.success(service.attach(id,r,u.userId()));} @PostMapping @PreAuthorize("hasAuthority('platform:firstleg:truck-appointment:create')") @BusinessAudit(event="TRUCK_APPOINTMENT_CREATE",resourceType="TRUCK_APPOINTMENT",captureBefore=false) public ApiResponse create(@AuthenticationPrincipal AuthenticatedUser u,@Valid @RequestBody SaveRequest r){FirstlegScopeGuard.platform(u);return ApiResponse.success(service.create(u.userId(),u.username(),r));} @PutMapping("/{id}") @PreAuthorize("hasAuthority('platform:firstleg:truck-appointment:edit')") public ApiResponse edit(@AuthenticationPrincipal AuthenticatedUser u,@PathVariable long id,@Valid @RequestBody SaveRequest r){FirstlegScopeGuard.platform(u);return ApiResponse.success(service.edit(id,u.userId(),u.username(),r));} @PostMapping("/{id}/{action}") @PreAuthorize("hasAuthority('platform:firstleg:truck-appointment:operate')") @BusinessAudit(event="TRUCK_APPOINTMENT_ACTION",resourceType="TRUCK_APPOINTMENT") public ApiResponse action(@AuthenticationPrincipal AuthenticatedUser u,@PathVariable long id,@PathVariable String action,@RequestHeader(value="Idempotency-Key",required=false) String idem,@RequestHeader(value="X-Request-Hash",required=false) String hash,@Valid @RequestBody ActionRequest r){FirstlegScopeGuard.platform(u);return ApiResponse.success(service.action(id,action.toUpperCase(),r,idem,hash,u.userId(),u.username()));} diff --git a/firstleg/src/main/java/com/baiyue/firstleg/dto/TruckAppointmentDtos.java b/firstleg/src/main/java/com/baiyue/firstleg/dto/TruckAppointmentDtos.java index 0cbe5e336..a51c8ab17 100644 --- a/firstleg/src/main/java/com/baiyue/firstleg/dto/TruckAppointmentDtos.java +++ b/firstleg/src/main/java/com/baiyue/firstleg/dto/TruckAppointmentDtos.java @@ -4,4 +4,5 @@ public final class TruckAppointmentDtos { private TruckAppointmentDtos(){} public record Query(@Size(max=64) String keyword, com.baiyue.firstleg.domain.TruckAppointmentStatus status, @Positive Long containerBookingId, @Min(1) long page, @Min(1) @Max(200) long size){ public Query{if(page==0)page=1;if(size==0)size=20;} } public record SaveRequest(@Positive Long outboundOrderId,@Positive Long oceanBookingId,@Positive Long containerBookingId,@Positive Long loadingPlanId,@Positive Long warehouseId,@Positive Long customerId,@Size(max=128) String customerName,@Positive Long carrierId,@Size(max=128) String carrierName,@Size(max=64) String fleetContact,@Size(max=32) String fleetPhone,@Size(max=64) String driverName,@Size(max=32) String driverPhone,@Size(max=32) String driverIdCard,@Size(max=32) String vehicleNo,@Size(max=128) String storeName,@Size(max=64) String storeContact,@Size(max=32) String storePhone,@Size(max=255) String storeAddress,@Size(max=64) String storeCity,@Size(max=16) String storeZipcode,@PositiveOrZero Integer packageCount,@DecimalMin("0") BigDecimal grossWeightKg,@DecimalMin("0") BigDecimal volumeCbm,@PositiveOrZero Integer palletCount,@Size(max=255) String poNo,@NotNull LocalDateTime plannedLoadingAt,@PositiveOrZero Integer transitMinutes,@DecimalMin("0") BigDecimal payableAmount,@DecimalMin("0") BigDecimal receivableAmount,@Size(max=8) String currency,@Size(max=1000) String remark,@NotNull @PositiveOrZero Integer expectedVersion){} public record ActionRequest(@NotNull @PositiveOrZero Integer expectedVersion,@Size(max=500) String reason){} + public record AttachmentRequest(@NotNull @Positive Long fileId,@Size(max=64) String attachmentType,@Size(max=255) String fileName,@Size(max=128) String fileHash){ } } diff --git a/firstleg/src/main/java/com/baiyue/firstleg/repository/TruckAppointmentRepository.java b/firstleg/src/main/java/com/baiyue/firstleg/repository/TruckAppointmentRepository.java index 3b9190697..a23434390 100644 --- a/firstleg/src/main/java/com/baiyue/firstleg/repository/TruckAppointmentRepository.java +++ b/firstleg/src/main/java/com/baiyue/firstleg/repository/TruckAppointmentRepository.java @@ -2,5 +2,5 @@ package com.baiyue.firstleg.repository; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baiyue.common.core.api.PageResult; import com.baiyue.firstleg.dto.TruckAppointmentDtos.Query; import com.baiyue.firstleg.entity.*; import com.baiyue.firstleg.mapper.*; import jakarta.annotation.Resource; import org.springframework.stereotype.Repository; @Repository public class TruckAppointmentRepository { @Resource TruckAppointmentMapper mapper; @Resource TruckAppointmentHistoryMapper history; @Resource TruckAppointmentAttachmentMapper attachments; @Resource TruckAppointmentOperationMapper operations; public PageResult page(Query q){return PageResult.from(mapper.page(new Page<>(q.page(),q.size()),q));} public TruckAppointmentEntity find(long id){return mapper.selectById(id);} public void insert(TruckAppointmentEntity e){mapper.insert(e);} public int transition(long id,String from,String to,int v){return mapper.transition(id,from,to,v);} public int reschedule(long id,java.time.LocalDateTime at,String reason,int v){return mapper.reschedule(id,at,reason,v);} public void history(TruckAppointmentHistoryEntity e){history.insert(e);} public void operation(TruckAppointmentOperationEntity e){operations.insert(e);} public void attachment(TruckAppointmentAttachmentEntity e){attachments.insert(e);} - public int updateEdit(TruckAppointmentEntity e,int v){return mapper.updateEdit(e,v);} + public int updateEdit(TruckAppointmentEntity e,int v){return mapper.updateEdit(e,v);} public java.util.List histories(long id){return history.selectList(new com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper().eq(TruckAppointmentHistoryEntity::getAppointmentId,id).orderByAsc(TruckAppointmentHistoryEntity::getCreatedAt));} public java.util.List attachments(long id){return attachments.selectList(new com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper().eq(TruckAppointmentAttachmentEntity::getAppointmentId,id).orderByAsc(TruckAppointmentAttachmentEntity::getUploadedAt));} } diff --git a/firstleg/src/main/java/com/baiyue/firstleg/service/TruckAppointmentService.java b/firstleg/src/main/java/com/baiyue/firstleg/service/TruckAppointmentService.java index 1507eb1f4..b44c0bd45 100644 --- a/firstleg/src/main/java/com/baiyue/firstleg/service/TruckAppointmentService.java +++ b/firstleg/src/main/java/com/baiyue/firstleg/service/TruckAppointmentService.java @@ -1,14 +1,35 @@ package com.baiyue.firstleg.service; -import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.baiyue.common.core.api.PageResult; import com.baiyue.common.core.api.ResultCode; import com.baiyue.common.core.exception.BizException; import com.baiyue.firstleg.domain.TruckAppointmentStatus; import com.baiyue.firstleg.dto.TruckAppointmentDtos.*; import com.baiyue.firstleg.entity.*; import com.baiyue.firstleg.repository.TruckAppointmentRepository; import jakarta.annotation.Resource; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.time.LocalDateTime; -@Service public class TruckAppointmentService { @Resource TruckAppointmentRepository repo; + +import com.baomidou.mybatisplus.core.toolkit.IdWorker; +import com.baiyue.common.core.api.PageResult; +import com.baiyue.common.core.api.ResultCode; +import com.baiyue.common.core.exception.BizException; +import com.baiyue.firstleg.domain.TruckAppointmentStatus; +import com.baiyue.firstleg.dto.TruckAppointmentDtos.*; +import com.baiyue.firstleg.entity.*; +import com.baiyue.firstleg.oceanbooking.entity.OceanBookingEntity; +import com.baiyue.firstleg.oceanbooking.repository.OceanBookingRepository; +import com.baiyue.firstleg.repository.TruckAppointmentRepository; +import jakarta.annotation.Resource; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import java.time.LocalDateTime; +import java.util.Objects; + +@Service +public class TruckAppointmentService { + @Resource TruckAppointmentRepository repo; + @Resource OceanBookingRepository oceanBookings; public PageResult page(Query q){return repo.page(q);} public TruckAppointmentEntity detail(long id){return required(id);} - @Transactional public TruckAppointmentEntity create(long uid,String name,SaveRequest r){if(r.expectedVersion()!=0)throw bad("新增 expectedVersion 必须为0"); TruckAppointmentEntity e=new TruckAppointmentEntity(); e.setId(IdWorker.getId()); e.setAppointmentNo("TA"+e.getId()); e.setStatus(TruckAppointmentStatus.DRAFT); e.setRevision(0); e.setVersion(0); e.setCreatedAt(LocalDateTime.now()); e.setUpdatedAt(e.getCreatedAt()); copy(e,r); repo.insert(e); record(e,null,e.getStatus().name(),"CREATE",null,uid,name); return e;} - @Transactional public TruckAppointmentEntity edit(long id,long uid,String name,SaveRequest r){TruckAppointmentEntity e=required(id); checkVersion(e,r.expectedVersion()); if(!(e.getStatus()==TruckAppointmentStatus.DRAFT||e.getStatus()==TruckAppointmentStatus.PENDING_DISPATCH||e.getStatus()==TruckAppointmentStatus.RESCHEDULED))throw conflict("当前状态不可编辑"); copy(e,r); if(repo.updateEdit(e,r.expectedVersion())!=1)throw conflict("版本已变化,请刷新后重试"); record(e,e.getStatus().name(),e.getStatus().name(),"EDIT",null,uid,name); return required(id);} - @Transactional public TruckAppointmentEntity action(long id,String action,ActionRequest r,String idem,String hash,long uid,String name){TruckAppointmentEntity e=required(id); checkVersion(e,r.expectedVersion()); if("RESCHEDULE".equals(action)){throw conflict("改约请使用专用接口");} TruckAppointmentStatus from=e.getStatus(),to=next(from,action); if(repo.transition(id,from.name(),to.name(),e.getVersion())!=1)throw conflict("状态或版本已变化,请刷新后重试"); e.setStatus(to);e.setVersion(e.getVersion()+1);e.setRevision(e.getRevision()+1); record(e,from.name(),to.name(),action,r.reason(),uid,name); operation(e,action,idem,hash); return e;} + public java.util.List history(long id){required(id);return repo.histories(id);} public java.util.List attachments(long id){required(id);return repo.attachments(id);} + @Transactional public TruckAppointmentAttachmentEntity attach(long id,AttachmentRequest r,long uid){required(id); TruckAppointmentAttachmentEntity a=new TruckAppointmentAttachmentEntity();a.setId(IdWorker.getId());a.setAppointmentId(id);a.setFileId(r.fileId());a.setAttachmentType(r.attachmentType());a.setFileName(r.fileName());a.setFileHash(r.fileHash());a.setVisibility("PLATFORM");a.setUploadedBy(uid);a.setUploadedAt(LocalDateTime.now());repo.attachment(a);return a;} + @Transactional public TruckAppointmentEntity create(long uid,String name,SaveRequest r){if(r.expectedVersion()!=0)throw bad("新增 expectedVersion 必须为0"); validateBookingLink(r); TruckAppointmentEntity e=new TruckAppointmentEntity(); e.setId(IdWorker.getId()); e.setAppointmentNo("TA"+e.getId()); e.setStatus(TruckAppointmentStatus.DRAFT); e.setRevision(0); e.setVersion(0); e.setCreatedAt(LocalDateTime.now()); e.setUpdatedAt(e.getCreatedAt()); copy(e,r); repo.insert(e); record(e,null,e.getStatus().name(),"CREATE",null,uid,name); return e;} + @Transactional public TruckAppointmentEntity edit(long id,long uid,String name,SaveRequest r){TruckAppointmentEntity e=required(id); checkVersion(e,r.expectedVersion()); if(!(e.getStatus()==TruckAppointmentStatus.DRAFT||e.getStatus()==TruckAppointmentStatus.PENDING_DISPATCH||e.getStatus()==TruckAppointmentStatus.RESCHEDULED))throw conflict("当前状态不可编辑"); validateBookingLink(r); copy(e,r); if(repo.updateEdit(e,r.expectedVersion())!=1)throw conflict("版本已变化,请刷新后重试"); record(e,e.getStatus().name(),e.getStatus().name(),"EDIT",null,uid,name); return required(id);} + @Transactional public TruckAppointmentEntity action(long id,String action,ActionRequest r,String idem,String hash,long uid,String name){TruckAppointmentEntity e=required(id); checkVersion(e,r.expectedVersion()); if("RESCHEDULE".equals(action))throw conflict("改约请使用专用接口"); TruckAppointmentStatus from=e.getStatus(),to=next(from,action); if(repo.transition(id,from.name(),to.name(),e.getVersion())!=1)throw conflict("状态或版本已变化,请刷新后重试"); e.setStatus(to);e.setVersion(e.getVersion()+1);e.setRevision(e.getRevision()+1); record(e,from.name(),to.name(),action,r.reason(),uid,name); operation(e,action,idem,hash); return e;} @Transactional public TruckAppointmentEntity reschedule(long id,LocalDateTime at,ActionRequest r,long uid,String name){TruckAppointmentEntity e=required(id);checkVersion(e,r.expectedVersion()); if(e.getStatus()==TruckAppointmentStatus.COMPLETED||e.getStatus()==TruckAppointmentStatus.CANCELLED)throw conflict("当前状态不可改约"); String from=e.getStatus().name(); if(repo.reschedule(id,at,r.reason(),e.getVersion())!=1)throw conflict("状态或版本已变化,请刷新后重试");e.setStatus(TruckAppointmentStatus.RESCHEDULED);e.setPlannedLoadingAt(at);e.setVersion(e.getVersion()+1);e.setRevision(e.getRevision()+1);record(e,from,"RESCHEDULED","RESCHEDULE",r.reason(),uid,name);return e;} + private void validateBookingLink(SaveRequest r){if(r.oceanBookingId()==null||r.oceanBookingId()<=0)throw bad("oceanBookingId不能为空"); OceanBookingEntity b=oceanBookings.find(r.oceanBookingId()); if(b==null)throw new BizException(ResultCode.NOT_FOUND,"关联订舱不存在"); if(!"RELEASED".equals(b.getStatus()))throw conflict("仅已放舱订舱可创建拖车预约"); if(r.customerId()!=null&&r.customerId()>0&&!Objects.equals(r.customerId(),b.getCustomerId()))throw bad("customerId与订舱客户不一致"); if(r.containerBookingId()!=null&&r.containerBookingId()>0){ContainerBookingEntity c=oceanBookings.containerBooking(r.containerBookingId()); if(c==null)throw new BizException(ResultCode.NOT_FOUND,"关联柜体不存在"); boolean allocated=oceanBookings.allocations(r.oceanBookingId()).stream().anyMatch(a->Objects.equals(a.getContainerBookingId(),r.containerBookingId())); if(!allocated)throw bad("containerBookingId未分配至该订舱"); if(r.warehouseId()!=null&&r.warehouseId()>0&&c.getWarehouseId()!=null&&!Objects.equals(r.warehouseId(),c.getWarehouseId()))throw bad("warehouseId与柜体不一致");}} private TruckAppointmentStatus next(TruckAppointmentStatus s,String a){return switch(a){case"SUBMIT"->s==TruckAppointmentStatus.DRAFT?TruckAppointmentStatus.PENDING_DISPATCH:badStatus();case"DISPATCH"->s==TruckAppointmentStatus.PENDING_DISPATCH||s==TruckAppointmentStatus.RESCHEDULED?TruckAppointmentStatus.DISPATCHED:badStatus();case"PICKUP"->s==TruckAppointmentStatus.DISPATCHED?TruckAppointmentStatus.PICKUP_IN_PROGRESS:badStatus();case"ARRIVE"->s==TruckAppointmentStatus.PICKUP_IN_PROGRESS?TruckAppointmentStatus.ARRIVED_WAREHOUSE:badStatus();case"LOAD"->s==TruckAppointmentStatus.ARRIVED_WAREHOUSE?TruckAppointmentStatus.LOADING:badStatus();case"DEPART"->s==TruckAppointmentStatus.LOADING?TruckAppointmentStatus.DEPARTED:badStatus();case"COMPLETE"->s==TruckAppointmentStatus.DEPARTED?TruckAppointmentStatus.COMPLETED:badStatus();case"EXCEPTION"->s!=TruckAppointmentStatus.COMPLETED&&s!=TruckAppointmentStatus.CANCELLED?TruckAppointmentStatus.EXCEPTION:badStatus();case"CANCEL"->s!=TruckAppointmentStatus.COMPLETED?TruckAppointmentStatus.CANCELLED:badStatus();default->badStatus();};} private TruckAppointmentStatus badStatus(){throw conflict("不允许的状态动作");} private TruckAppointmentEntity required(long id){TruckAppointmentEntity e=repo.find(id);if(e==null)throw new BizException(ResultCode.NOT_FOUND,"拖车预约不存在");return e;} private void checkVersion(TruckAppointmentEntity e,int v){if(e.getVersion()!=v)throw conflict("版本已变化,请刷新后重试");} private static BizException conflict(String m){return new BizException(ResultCode.CONFLICT,m);} private static BizException bad(String m){return new BizException(ResultCode.BAD_REQUEST,m);} private void copy(TruckAppointmentEntity e,SaveRequest r){e.setOutboundOrderId(r.outboundOrderId());e.setOceanBookingId(r.oceanBookingId());e.setContainerBookingId(r.containerBookingId());e.setLoadingPlanId(r.loadingPlanId());e.setWarehouseId(r.warehouseId());e.setCustomerId(r.customerId());e.setCustomerName(r.customerName());e.setCarrierId(r.carrierId());e.setCarrierName(r.carrierName());e.setFleetContact(r.fleetContact());e.setFleetPhone(r.fleetPhone());e.setDriverName(r.driverName());e.setDriverPhone(r.driverPhone());e.setDriverIdCard(r.driverIdCard());e.setVehicleNo(r.vehicleNo());e.setStoreName(r.storeName());e.setStoreContact(r.storeContact());e.setStorePhone(r.storePhone());e.setStoreAddress(r.storeAddress());e.setStoreCity(r.storeCity());e.setStoreZipcode(r.storeZipcode());e.setPackageCount(r.packageCount());e.setGrossWeightKg(r.grossWeightKg());e.setVolumeCbm(r.volumeCbm());e.setPalletCount(r.palletCount());e.setPoNo(r.poNo());e.setPlannedLoadingAt(r.plannedLoadingAt());e.setTransitMinutes(r.transitMinutes());e.setPayableAmount(r.payableAmount());e.setReceivableAmount(r.receivableAmount());e.setCurrency(r.currency()==null?"RMB":r.currency());e.setRemark(r.remark());} - private void record(TruckAppointmentEntity e,String from,String to,String action,String reason,long uid,String name){TruckAppointmentHistoryEntity h=new TruckAppointmentHistoryEntity();h.setId(IdWorker.getId());h.setAppointmentId(e.getId());h.setRevision(e.getRevision());h.setAction(action);h.setFromStatus(from);h.setToStatus(to);h.setReason(reason);h.setOperatorId(uid);h.setOperatorName(name);h.setCreatedAt(LocalDateTime.now());repo.history(h);} - private void operation(TruckAppointmentEntity e,String action,String key,String hash){if(key==null||key.isBlank())return;TruckAppointmentOperationEntity o=new TruckAppointmentOperationEntity();o.setId(IdWorker.getId());o.setAppointmentId(e.getId());o.setAction(action);o.setIdempotencyKey(key);o.setRequestHash(hash==null?"":hash);o.setCreatedAt(LocalDateTime.now());repo.operation(o);} + private void record(TruckAppointmentEntity e,String from,String to,String action,String reason,long uid,String name){TruckAppointmentHistoryEntity h=new TruckAppointmentHistoryEntity();h.setId(IdWorker.getId());h.setAppointmentId(e.getId());h.setRevision(e.getRevision());h.setAction(action);h.setFromStatus(from);h.setToStatus(to);h.setReason(reason);h.setOperatorId(uid);h.setOperatorName(name);h.setCreatedAt(LocalDateTime.now());repo.history(h);} private void operation(TruckAppointmentEntity e,String action,String key,String hash){if(key==null||key.isBlank())return;TruckAppointmentOperationEntity o=new TruckAppointmentOperationEntity();o.setId(IdWorker.getId());o.setAppointmentId(e.getId());o.setAction(action);o.setIdempotencyKey(key);o.setRequestHash(hash==null?"":hash);o.setCreatedAt(LocalDateTime.now());repo.operation(o);} } diff --git a/firstleg/src/test/java/com/baiyue/firstleg/service/TruckAppointmentServiceTest.java b/firstleg/src/test/java/com/baiyue/firstleg/service/TruckAppointmentServiceTest.java index 8618a06b2..f977e74ae 100644 --- a/firstleg/src/test/java/com/baiyue/firstleg/service/TruckAppointmentServiceTest.java +++ b/firstleg/src/test/java/com/baiyue/firstleg/service/TruckAppointmentServiceTest.java @@ -8,6 +8,8 @@ import com.baiyue.firstleg.entity.TruckAppointmentEntity; import com.baiyue.firstleg.entity.TruckAppointmentHistoryEntity; import com.baiyue.firstleg.entity.TruckAppointmentOperationEntity; import com.baiyue.firstleg.repository.TruckAppointmentRepository; +import com.baiyue.firstleg.oceanbooking.repository.OceanBookingRepository; +import com.baiyue.firstleg.oceanbooking.entity.OceanBookingEntity; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.mockito.ArgumentCaptor; @@ -25,6 +27,7 @@ import static org.mockito.Mockito.*; class TruckAppointmentServiceTest { @Mock TruckAppointmentRepository repository; + @Mock OceanBookingRepository oceanBookings; @InjectMocks TruckAppointmentService service; @BeforeEach void setUp() { MockitoAnnotations.openMocks(this); } @@ -35,6 +38,28 @@ class TruckAppointmentServiceTest { verifyNoInteractions(repository); } + @Test void createRejectsBookingThatIsNotReleased() { + SaveRequest request = mock(SaveRequest.class); + when(request.expectedVersion()).thenReturn(0); + when(request.oceanBookingId()).thenReturn(99L); + OceanBookingEntity booking = new OceanBookingEntity(); booking.setId(99L); booking.setStatus("CONFIRMED"); + when(oceanBookings.find(99L)).thenReturn(booking); + assertThatThrownBy(() -> service.create(7L, "admin", request)).isInstanceOf(BizException.class).hasMessageContaining("放舱"); + verify(repository, never()).insert(any()); + } + + @Test void createAcceptsReleasedBookingAndWritesDraft() { + SaveRequest request = mock(SaveRequest.class); + when(request.expectedVersion()).thenReturn(0); + when(request.oceanBookingId()).thenReturn(99L); + when(request.customerId()).thenReturn(7L); + OceanBookingEntity booking = new OceanBookingEntity(); booking.setId(99L); booking.setStatus("RELEASED"); booking.setCustomerId(7L); + when(oceanBookings.find(99L)).thenReturn(booking); + service.create(7L, "admin", request); + verify(repository).insert(any(TruckAppointmentEntity.class)); + verify(repository).history(any(TruckAppointmentHistoryEntity.class)); + } + @Test void actionAdvancesMainLifecycleAndWritesIdempotentOperation() { TruckAppointmentEntity e = entity(TruckAppointmentStatus.DRAFT, 0); when(repository.find(1L)).thenReturn(e); diff --git a/reports/admin-boundaries-service-flow-20260808.json b/reports/admin-boundaries-service-flow-20260808.json new file mode 100644 index 000000000..6b280f6d5 --- /dev/null +++ b/reports/admin-boundaries-service-flow-20260808.json @@ -0,0 +1,1362 @@ +{ + "reportName": "后台管理测试环境 HTTP API 验收", + "marker": "ADMIN-API-20260808072610456", + "gateway": "http://8.163.30.128:9000", + "generatedAt": "2026-08-08T07:26:12.749Z", + "startedAt": "2026-08-08T07:26:10.456Z", + "success": false, + "fatal": null, + "summary": { + "total": 68, + "passed": 63, + "failed": 5 + }, + "modules": [ + { + "name": "master-data", + "startedAt": "2026-08-08T07:26:10.827Z", + "finishedAt": "2026-08-08T07:26:12.267Z", + "success": true, + "passed": 48, + "failed": 0, + "fatal": null + }, + { + "name": "supplemental-boundaries", + "startedAt": "2026-08-08T07:26:12.267Z", + "finishedAt": "2026-08-08T07:26:12.748Z", + "success": false, + "passed": 14, + "failed": 4, + "fatal": null + }, + { + "name": "service-center-flow", + "startedAt": "2026-08-08T07:26:12.749Z", + "finishedAt": "2026-08-08T07:26:12.749Z", + "success": false, + "passed": 0, + "failed": 1, + "fatal": null + } + ], + "scenarios": [ + { + "name": "admin-boundary-automation", + "module": "supplemental-boundaries", + "success": false, + "deploymentBlocked": false, + "passed": 14, + "failed": 4 + } + ], + "deploymentBlockers": [ + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "跨服务链路前置订舱终态可用", + "evidence": "本轮海运订舱模块未返回 RELEASED 隔离记录,未伪造关联拖车预约", + "code": null, + "requestId": null, + "traceId": null + } + ], + "coverageGaps": [ + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库带数据行的合法 XLSX 写入", + "reason": "当前验收运行时无 XLSX 写入依赖;仅上传真实服务模板做解析/重复结果稳定性验证,未伪造数据行或写入主数据", + "category": "runtime-dependency" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司带数据行的合法 XLSX 写入", + "reason": "当前验收运行时无 XLSX 写入依赖;仅上传真实服务模板做解析/重复结果稳定性验证,未伪造数据行或写入主数据", + "category": "runtime-dependency" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位带数据行的合法 XLSX 写入", + "reason": "当前验收运行时无 XLSX 写入依赖;仅上传真实服务模板做解析/重复结果稳定性验证,未伪造数据行或写入主数据", + "category": "runtime-dependency" + }, + { + "module": "master-data", + "scenario": "optimistic-lock", + "name": "仓库/托盘/快递/往来单位旧 version 冲突", + "reason": "真实 DTO 未声明 version/expectedVersion 字段,不能伪造并发冲突断言;库位版本已由 supplemental-boundaries 覆盖", + "category": "contract-gap" + }, + { + "module": "supplemental-boundaries", + "scenario": "resource-occupancy", + "name": "托盘/库位真实占用删除保护", + "reason": "当前公共验收 API 未提供可安全构造并释放占用关联的独立 fixture;未操作历史资源", + "category": "no-public-fixture-api" + } + ], + "createdResources": { + "warehouse": { + "id": "2085990937969868802", + "code": "AW808072610456", + "finalStatus": "INACTIVE" + }, + "location": { + "id": "2085990938619985921", + "warehouseId": "2085990937969868802", + "deleted": false + }, + "pallet": { + "id": "2085990939584675842", + "warehouseId": "2085990937969868802", + "deleted": true + }, + "expressCompany": { + "id": "2085990940289318913", + "code": "EX808072610456", + "finalStatus": "INACTIVE" + }, + "partner": { + "id": "2085990940935241730", + "code": "PT808072610456", + "finalStatus": "INACTIVE" + } + }, + "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": "1a4f2a3f-1a71-4493-b8e8-f15b8509da1e, 68d9a2b2-e43d-4b69-9ce7-e626a69d780c", + "traceId": "2c327b7868f74689bce575c48a73d53e", + "evidence": "", + "checkedAt": "2026-08-08T07:26:10.826Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询平台仓库列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "77706c3c-693b-403e-91b7-a5833799a667, 7b4ec3c1-868c-4d71-92cb-450f19afe57d", + "traceId": "b4f8305e864f44bb9608d25ea5713ed1", + "evidence": "", + "checkedAt": "2026-08-08T07:26:10.881Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库列表分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "77706c3c-693b-403e-91b7-a5833799a667, 7b4ec3c1-868c-4d71-92cb-450f19afe57d", + "traceId": "b4f8305e864f44bb9608d25ea5713ed1", + "evidence": "total=283", + "checkedAt": "2026-08-08T07:26:10.881Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建平台公共仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8984d762-c5d4-4cf4-bf1e-62d6e099426a, 7453118d-2b58-47aa-940c-4131998b892e", + "traceId": "f7faa080b6fa4a0c99973297d63ebcbe", + "evidence": "", + "checkedAt": "2026-08-08T07:26:10.923Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库创建返回字符串兼容 ID", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8984d762-c5d4-4cf4-bf1e-62d6e099426a, 7453118d-2b58-47aa-940c-4131998b892e", + "traceId": "f7faa080b6fa4a0c99973297d63ebcbe", + "evidence": "warehouseId=2085990937969868802", + "checkedAt": "2026-08-08T07:26:10.923Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询平台仓库详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085990937969868802?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1eb994f2-cbdf-454e-8fa6-4deed7642cfa, e58370aa-0377-4f9e-a09e-781cac1a59b2", + "traceId": "5aca645a5a0b49a1bfec0a3b34c8e53e", + "evidence": "", + "checkedAt": "2026-08-08T07:26:10.961Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库详情、地址和能力正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085990937969868802?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1eb994f2-cbdf-454e-8fa6-4deed7642cfa, e58370aa-0377-4f9e-a09e-781cac1a59b2", + "traceId": "5aca645a5a0b49a1bfec0a3b34c8e53e", + "evidence": "addresses=1, capabilities=1", + "checkedAt": "2026-08-08T07:26:10.961Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑平台仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/warehouse-admin/2085990937969868802?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fd25e32d-308c-4712-a99e-7df1faa751f5, b30ebb39-c0bd-489a-953e-e729a0941a90", + "traceId": "684cca958dff4394aa6f84779e38395e", + "evidence": "", + "checkedAt": "2026-08-08T07:26:10.999Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的平台仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085990937969868802?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "33e68a29-0629-4ee6-8712-c52812852f30, fb208d29-378e-4d95-915c-9a33224ce6ab", + "traceId": "fc67aa2aa75a4e03bafb4c54ff20f8d7", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.035Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085990937969868802?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "33e68a29-0629-4ee6-8712-c52812852f30, fb208d29-378e-4d95-915c-9a33224ce6ab", + "traceId": "fc67aa2aa75a4e03bafb4c54ff20f8d7", + "evidence": "warehouseId=2085990937969868802", + "checkedAt": "2026-08-08T07:26:11.035Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建仓库库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/locations?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "602277e7-2c67-46d4-9946-5260b847beca, 7674f0f5-f965-4b75-b659-5ab3dc1116cc", + "traceId": "ee0c880cd43547c8b101084f18781230", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.074Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询库位详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085990938619985921?tenantId=0&warehouseId=2085990937969868802" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bbbb6763-77f6-462b-82f7-4f62b93ba0a5, f935d720-d012-4a39-bd8b-d57e6bbd4156", + "traceId": "cf10d52049814b55b3644a1325a4310e", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.113Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "库位详情关联正确仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085990938619985921?tenantId=0&warehouseId=2085990937969868802" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bbbb6763-77f6-462b-82f7-4f62b93ba0a5, f935d720-d012-4a39-bd8b-d57e6bbd4156", + "traceId": "cf10d52049814b55b3644a1325a4310e", + "evidence": "locationId=2085990938619985921", + "checkedAt": "2026-08-08T07:26:11.113Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085990938619985921?tenantId=0&warehouseId=2085990937969868802" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5da3f5b7-f813-4813-bb18-e8c7482e1585, fbbf3a3d-5e11-4abd-b87e-cc1cc1a332a2", + "traceId": "5aa3e7c715f643288e16be6fe0b5d6ae", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.152Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085990938619985921?tenantId=0&warehouseId=2085990937969868802" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "12750c92-ce28-4f11-8111-63e88cba754e, 3a6fa104-c3f3-4adc-9542-e1e2a86f538d", + "traceId": "1bc51b67157f438ab1917d2a03614e26", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.189Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "库位编辑与版本递增正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085990938619985921?tenantId=0&warehouseId=2085990937969868802" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "12750c92-ce28-4f11-8111-63e88cba754e, 3a6fa104-c3f3-4adc-9542-e1e2a86f538d", + "traceId": "1bc51b67157f438ab1917d2a03614e26", + "evidence": "version=1", + "checkedAt": "2026-08-08T07:26:11.189Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/locations/2085990938619985921/status?tenantId=0&warehouseId=2085990937969868802" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "57a6e3c0-5f71-482b-9b41-c65ad4a4f712, 13da2874-1122-4949-bde4-794d8060e05b", + "traceId": "ce7fcf365a2d4e4fb512d4e5dd1aa62f", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.220Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "删除未占用测试库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/locations/2085990938619985921?tenantId=0&warehouseId=2085990937969868802&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5ecc7f10-6383-4254-812c-e7006c0310d1, 8d68bae4-1050-4747-b234-71529d9bbff0", + "traceId": "26de7af01f3d42c0a6d0533592018527", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.259Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建仓库托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/pallets?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c9ebc5e9-095b-4393-8ab5-5c2af88fb67b, 34cc79e5-ed06-4476-89d5-e1230da65f3b", + "traceId": "61df7cabef234e5daed4a9d75830eb5c", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.303Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询托盘详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085990939584675842?tenantId=0&warehouseId=2085990937969868802" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0984f392-095c-40f4-98f4-70b3c0db18bb, 65c650d2-2ac6-470d-b5e2-2778884ee276", + "traceId": "7fe36fec3c2146bcb7f28d22b8e29514", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.327Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "托盘详情关联正确仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085990939584675842?tenantId=0&warehouseId=2085990937969868802" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0984f392-095c-40f4-98f4-70b3c0db18bb, 65c650d2-2ac6-470d-b5e2-2778884ee276", + "traceId": "7fe36fec3c2146bcb7f28d22b8e29514", + "evidence": "palletId=2085990939584675842", + "checkedAt": "2026-08-08T07:26:11.327Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/pallets/2085990939584675842?tenantId=0&warehouseId=2085990937969868802" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "83ff379f-6349-4375-87a8-81a5d12c4f98, abb3f010-2b1f-436c-a8b9-d4fcc9bfeed9", + "traceId": "95f86fc29e8a42b88bfcb7117e8036cd", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.367Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085990939584675842?tenantId=0&warehouseId=2085990937969868802" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e7be369b-3bc4-4932-a282-662fd8badb2c, 63a97d64-e7d5-493f-a089-c3f52ec85168", + "traceId": "9b21499234b84fd7a197713a68694e19", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.405Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "托盘编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085990939584675842?tenantId=0&warehouseId=2085990937969868802" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e7be369b-3bc4-4932-a282-662fd8badb2c, 63a97d64-e7d5-493f-a089-c3f52ec85168", + "traceId": "9b21499234b84fd7a197713a68694e19", + "evidence": "palletId=2085990939584675842", + "checkedAt": "2026-08-08T07:26:11.405Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "删除未使用测试托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/pallets/2085990939584675842?tenantId=0&warehouseId=2085990937969868802" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "69d37c4a-ad7e-44a5-9558-288aac2aa147, 5d2f051b-edb1-496a-abd6-245f9c9c763b", + "traceId": "ba8449a4bf0e4ea1a5782c5dec8a5741", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.439Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "63ac2818-ceb6-460c-9291-7c58bb38e4e0, 58d1d814-91b5-4981-9bbf-9dce28e809a7", + "traceId": "a802cbd1b4934d42ad21ad8fd7a58fec", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.470Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询快递公司详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/2085990940289318913?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8bb1f0fb-e6e6-40fb-83a1-aa3b6b036717, e7f31f19-25e5-4d5e-9427-42cea2707409", + "traceId": "2b8b852b607e48ba9afeb440cad347f3", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.496Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司详情正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/2085990940289318913?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8bb1f0fb-e6e6-40fb-83a1-aa3b6b036717, e7f31f19-25e5-4d5e-9427-42cea2707409", + "traceId": "2b8b852b607e48ba9afeb440cad347f3", + "evidence": "expressId=2085990940289318913", + "checkedAt": "2026-08-08T07:26:11.496Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/express-companies/2085990940289318913?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7f845661-3eef-41e6-8d65-fbc2c0ec705b, 9d457a5e-8133-406c-a9da-386c0d23fe5c", + "traceId": "ac8d92d4e6a84974a1f80bf78bf23b1c", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.534Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/express-companies/2085990940289318913/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "84005ced-a540-4656-9766-110ac39dbfb9, f32ecbf5-4f25-4b59-8000-4df6a3f73101", + "traceId": "fe8bd8b406184a40b84f1a9a872ad3fa", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.565Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "筛选快递公司列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=EX808072610456" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f13ea374-9a67-428f-9588-0e9cca47726e, fe024403-7d42-476a-a668-f139ad02c34c", + "traceId": "a2f06d9f23f1493081e59f2f72850a18", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.591Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司列表回显停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=EX808072610456" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f13ea374-9a67-428f-9588-0e9cca47726e, fe024403-7d42-476a-a668-f139ad02c34c", + "traceId": "a2f06d9f23f1493081e59f2f72850a18", + "evidence": "records=1", + "checkedAt": "2026-08-08T07:26:11.591Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "574951b6-408a-40b8-bef8-af6a5f4f35e7, 9e09fd66-94da-4cbe-9091-db88fe66f64d", + "traceId": "6adf76b5de0e48c182ad5a2605b82769", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.625Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询往来单位详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/2085990940935241730?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "602b8869-f67f-408d-8b17-ec368b26b547, 0af452c5-17e6-4841-a53e-1b24267a0f15", + "traceId": "0dabb8f6e5f2436597ec6ff51fa0d52c", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.652Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位详情正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/2085990940935241730?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "602b8869-f67f-408d-8b17-ec368b26b547, 0af452c5-17e6-4841-a53e-1b24267a0f15", + "traceId": "0dabb8f6e5f2436597ec6ff51fa0d52c", + "evidence": "partnerId=2085990940935241730", + "checkedAt": "2026-08-08T07:26:11.652Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/partners/2085990940935241730?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2abfcc4c-44f9-4de1-beaa-07d7c21ca7bc, 250d72fd-0836-4cf5-b487-7e710e1da8be", + "traceId": "0e2c7299da4a4748b09fed38089b61c4", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.682Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/partners/2085990940935241730/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c22eeb60-c7fb-4dc5-91a8-183d8c8747bf, 3529afa4-c60e-4f44-8af7-8931941d4cb1", + "traceId": "6f54fdad2236402898e78ff102bacd83", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.722Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "筛选往来单位列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=PT808072610456" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "457dbe4a-f30b-4d10-909f-6ed345c82465, 2c336e52-c772-400a-aa53-d96c2c84f692", + "traceId": "7e68575c822b43eb96629d6cf85e8cb7", + "evidence": "", + "checkedAt": "2026-08-08T07:26:11.760Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位列表回显编辑与停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=PT808072610456" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "457dbe4a-f30b-4d10-909f-6ed345c82465, 2c336e52-c772-400a-aa53-d96c2c84f692", + "traceId": "7e68575c822b43eb96629d6cf85e8cb7", + "evidence": "records=1", + "checkedAt": "2026-08-08T07:26:11.760Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载仓库导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/import-template" + }, + "http": 200, + "code": null, + "message": "3852 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "1f344f06-3b6a-402d-93a4-88f0b09717ab, 373be8ae-c2b2-4ee3-b14e-6eead157719e", + "traceId": "06650af377784a56850abc33de3e1bf2", + "evidence": "bytes=3852, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:26:11.807Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库合法模板 dryRun 导入契约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "931eaec8-df69-4330-8e50-67dbc584bc42, c4c46c9e-6e4f-4c5b-9e28-b8fc4d1ffef0", + "traceId": "4a6835b06d8449febbb659a8510bdd83", + "evidence": "HTTP=200, code=200, rows=0, parserSuccess=false", + "checkedAt": "2026-08-08T07:26:11.897Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库合法模板重复 dryRun 幂等结果稳定", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8ff003c2-b7d5-4fc7-85b5-7f5c2397fe43, 20e47626-0f4a-4dc6-8198-822b27e263e7", + "traceId": "50ef13a75d6f45829aacf2e15d3ff79d", + "evidence": "firstRows=0, replayRows=0", + "checkedAt": "2026-08-08T07:26:11.953Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载快递公司导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/import-template" + }, + "http": 200, + "code": null, + "message": "3691 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "98d2e10e-74d5-4b6a-8056-b64807186dc3, e026522f-be0a-421b-842b-06dae718cb72", + "traceId": "b271f837c499492ea0efdfcfe7382712", + "evidence": "bytes=3691, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:26:11.995Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司合法模板 dryRun 导入契约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "03a4cea3-26c5-48d5-a0d6-273f1399a566, 871274e8-19c4-452c-ae76-cf03c002ff00", + "traceId": "f6e48060b1004c3382e0a4ddd809d65a", + "evidence": "HTTP=200, code=200, rows=0, parserSuccess=false", + "checkedAt": "2026-08-08T07:26:12.045Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司合法模板重复 dryRun 幂等结果稳定", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d7ad35c1-3531-47ab-9601-0774047427d4, f2ede011-5b7f-460c-9796-29361f167e28", + "traceId": "f54428cb7be347579165fd487e108c65", + "evidence": "firstRows=0, replayRows=0", + "checkedAt": "2026-08-08T07:26:12.086Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载往来单位导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/import-template" + }, + "http": 200, + "code": null, + "message": "3829 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "27658862-8d59-4b28-8a1f-8bdb66c9ade7, 894e25c5-ad40-452d-9fba-c03300aa673c", + "traceId": "01631fdaa6224b638686b246ed222f04", + "evidence": "bytes=3829, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:26:12.135Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位合法模板 dryRun 导入契约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "53e72442-7ec1-4142-b94c-4221ec9867d0, 5374c7c9-8b77-4af9-bb26-65191b3a4e86", + "traceId": "74b03bd5218d4d7d9df9798fe058eb87", + "evidence": "HTTP=200, code=200, rows=0, parserSuccess=false", + "checkedAt": "2026-08-08T07:26:12.178Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位合法模板重复 dryRun 幂等结果稳定", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3a4ef4b0-dbdc-4ca3-b5a1-c2b4d0e1124a, aab05079-ad3d-473a-a19a-905e8cfc659f", + "traceId": "eb15538ccf5849e3896451f389d2e468", + "evidence": "firstRows=0, replayRows=0", + "checkedAt": "2026-08-08T07:26:12.223Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用测试仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/warehouse-admin/2085990937969868802/status?tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e904a873-1fff-439d-94cd-4c9034f0352d, 03a0af29-9fbd-42f6-b466-fe400a7ddb9d", + "traceId": "768b16c5700f47debf3dd4f7234ed02d", + "evidence": "", + "checkedAt": "2026-08-08T07:26:12.267Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "创建边界验收隔离仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "35a62ca4-848f-42ce-82c8-08519560977b, afd958ad-bf40-4f27-a98d-f96ad2e21bc4", + "traceId": "a99ddb2cb42e4ac4a77a6c988f2c147e", + "evidence": "", + "checkedAt": "2026-08-08T07:26:12.299Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "创建边界验收隔离库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/locations?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3123e8cd-244f-451f-8a84-80bd85899947, a4ad4077-6b38-4182-984a-7695b67084da", + "traceId": "218ffebc137d467580deb4949dc82a55", + "evidence": "", + "checkedAt": "2026-08-08T07:26:12.326Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "读取隔离库位版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085990943879643138?tenantId=0&warehouseId=2085990943745425410" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4ec13b3d-0361-4833-8940-1af69887e955, 68e410e4-0c99-4d3d-9ae0-44a5606f0961", + "traceId": "250e477f4f89482dbc92713fbfbbdd4d", + "evidence": "", + "checkedAt": "2026-08-08T07:26:12.353Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "更新隔离库位以推进版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085990943879643138?tenantId=0&warehouseId=2085990943745425410" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ffd5c55f-27f5-411d-bdb5-9b15961acf59, 60f817b1-74ed-46c8-9f96-9e1ea4fd2089", + "traceId": "aec8497d95534d2089187179b27f7692", + "evidence": "version=0", + "checkedAt": "2026-08-08T07:26:12.393Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "库位旧 version PUT 返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085990943879643138?tenantId=0&warehouseId=2085990943745425410" + }, + "http": 200, + "code": "A0409", + "message": "库位已被其他操作修改,请刷新后重试", + "requestId": "da71df91-71bd-4ebc-8347-49871e8cc084", + "traceId": "4a52bb769abf44429c6e73f4516b8b23", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:26:12.420Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "冲突后回查库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085990943879643138?tenantId=0&warehouseId=2085990943745425410" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dfb8e906-f1ed-4e0b-ae29-03435f081c13, 04fe2c7b-f9b2-4086-8088-db3fc7f1ac6a", + "traceId": "1820ab3656904163a1ece70cf98b5103", + "evidence": "", + "checkedAt": "2026-08-08T07:26:12.448Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "库位冲突未造成部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085990943879643138?tenantId=0&warehouseId=2085990943745425410" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dfb8e906-f1ed-4e0b-ae29-03435f081c13, 04fe2c7b-f9b2-4086-8088-db3fc7f1ac6a", + "traceId": "1820ab3656904163a1ece70cf98b5103", + "evidence": "name=边界库位-编辑", + "checkedAt": "2026-08-08T07:26:12.448Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "仓库空文件安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "55fbf529-54e3-460a-b7cd-5c4340bd9ea5, c1e0514d-7000-4d6e-acdd-597d47b57382", + "traceId": "3deeb6e1c119424e86219304df57f669", + "evidence": "HTTP=200, code=200, bytes=0", + "checkedAt": "2026-08-08T07:26:12.477Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "仓库缺列伪 XLSX安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9af880a4-9ab6-46fc-88bf-8fa493e5e123, 2651d3e3-9640-4c9e-b164-75723a566107", + "traceId": "f8b5d38d85a6425a93e66f05da82a60c", + "evidence": "HTTP=200, code=200, bytes=6", + "checkedAt": "2026-08-08T07:26:12.508Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "快递公司错误扩展名安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5b42b027-29bd-4034-92b3-cd7a3fa410b6, b1086804-7a77-4739-96c5-0bdf0af44273", + "traceId": "94bf04547ec245f4b94b4f1090bfa844", + "evidence": "HTTP=200, code=200, bytes=27", + "checkedAt": "2026-08-08T07:26:12.529Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "往来单位非 XLSX安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "18636790-f9f1-4ef7-b5eb-e0bd81cdd6e1, 7f1c0069-f3b0-401b-ae5c-aeb7a3f7d099", + "traceId": "ad466390ec474bf4beedaff669dc36f7", + "evidence": "HTTP=200, code=200, bytes=27", + "checkedAt": "2026-08-08T07:26:12.550Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "错误客户海外仓费用 ID 安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/999999999999999999/overseas-storage-fees" + }, + "http": 200, + "code": "A0404", + "message": "海外仓费用不存在", + "requestId": "bc90eef1-919f-4564-bc8b-e0255121a348", + "traceId": "f9d0dc05455349d08bd1b4b3ee6a3fc6", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:26:12.573Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "库位列表未授权边界响应正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=1&tenantId=0" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "f3b1a38d-657", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:26:12.596Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "下载中心非法页码边界响应正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=0&size=1" + }, + "http": 200, + "code": "A0422", + "message": "page.page: must be greater than or equal to 1", + "requestId": "b31456c9-7721-4a86-9cf0-4d9ffab75424", + "traceId": "9b74265ddd1643d8b2c60326fa5428da", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:12.619Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "船期价格非法状态边界响应正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=INVALID" + }, + "http": 200, + "code": "A0400", + "message": "Bad request", + "requestId": "023623bb-dacc-479f-bae0-6b0fdeb190ad", + "traceId": "a927cf778f4a4bc285dc1b6a61e04c3e", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:26:12.648Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "停用隔离库位以便清理", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/locations/2085990943879643138/status?tenantId=0&warehouseId=2085990943745425410" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cb14fd70-d06e-4a10-bdf3-299b70f2d26d, 20b131aa-7820-46ef-bea8-7d6ed5ed94a9", + "traceId": "a451ba6149864e1e9c987ce777f29fce", + "evidence": "", + "checkedAt": "2026-08-08T07:26:12.689Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "删除隔离库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/locations/2085990943879643138?tenantId=0&warehouseId=2085990943745425410&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b2a307dc-ef20-4ab1-bb80-37b45b671b6d, d2b979d3-6bea-401d-943e-6f494ea22d27", + "traceId": "1a844d237ab64adda51e4c3e208970c7", + "evidence": "", + "checkedAt": "2026-08-08T07:26:12.717Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "停用隔离仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/warehouse-admin/2085990943745425410/status?tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0a654493-c358-4c03-9b94-a508c2fb6d09, 3f4fd263-d8ac-4ef8-9c61-acd442d112a2", + "traceId": "55c1c54013e8478c82ba8dd50ddac75d", + "evidence": "", + "checkedAt": "2026-08-08T07:26:12.748Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "跨服务链路前置订舱终态可用", + "passed": false, + "deploymentBlocker": true, + "request": null, + "http": null, + "code": null, + "message": null, + "requestId": null, + "traceId": null, + "evidence": "本轮海运订舱模块未返回 RELEASED 隔离记录,未伪造关联拖车预约", + "checkedAt": "2026-08-08T07:26:12.749Z" + } + ] +} diff --git a/reports/admin-master-data-valid-import-20260808.json b/reports/admin-master-data-valid-import-20260808.json new file mode 100644 index 000000000..f57cca609 --- /dev/null +++ b/reports/admin-master-data-valid-import-20260808.json @@ -0,0 +1,1120 @@ +{ + "reportName": "后台管理测试环境 HTTP API 验收", + "marker": "ADMIN-API-20260808075516259", + "gateway": "http://8.163.30.128:9000", + "generatedAt": "2026-08-08T07:55:18.689Z", + "startedAt": "2026-08-08T07:55:16.259Z", + "success": false, + "fatal": null, + "summary": { + "total": 58, + "passed": 56, + "failed": 2 + }, + "modules": [ + { + "name": "master-data", + "startedAt": "2026-08-08T07:55:16.635Z", + "finishedAt": "2026-08-08T07:55:18.689Z", + "success": false, + "passed": 55, + "failed": 2, + "fatal": null + } + ], + "scenarios": [], + "deploymentBlockers": [], + "coverageGaps": [ + { + "module": "master-data", + "scenario": "optimistic-lock", + "name": "仓库/托盘/快递/往来单位旧 version 冲突", + "reason": "真实 DTO 未声明 version/expectedVersion 字段,不能伪造并发冲突断言;库位版本已由 supplemental-boundaries 覆盖", + "category": "contract-gap" + } + ], + "createdResources": { + "warehouse": { + "id": "2085998260398374913", + "code": "AW808075516259", + "finalStatus": "INACTIVE" + }, + "location": { + "id": "2085998260981383170", + "warehouseId": "2085998260398374913", + "deleted": false + }, + "pallet": { + "id": "2085998261769912321", + "warehouseId": "2085998260398374913", + "deleted": true + }, + "expressCompany": { + "id": "2085998262365503490", + "code": "EX808075516259", + "finalStatus": "INACTIVE" + }, + "partner": { + "id": "2085998262969483265", + "code": "PT808075516259", + "finalStatus": "INACTIVE" + } + }, + "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": "1cc9a4fa-8f59-453c-b4ac-f826fc4e41d4, f1e1a900-398f-45ab-95cd-509bd1f825ca", + "traceId": "b155792fdf5d4522829714ad499e7c49", + "evidence": "", + "checkedAt": "2026-08-08T07:55:16.633Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询平台仓库列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "260ada5b-3076-40d9-8761-076bfbf090b8, 9033a4f0-7a82-4b79-bb7f-21c8983ca7bc", + "traceId": "1a57e8fae5214beea60e2962985e0939", + "evidence": "", + "checkedAt": "2026-08-08T07:55:16.692Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库列表分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "260ada5b-3076-40d9-8761-076bfbf090b8, 9033a4f0-7a82-4b79-bb7f-21c8983ca7bc", + "traceId": "1a57e8fae5214beea60e2962985e0939", + "evidence": "total=289", + "checkedAt": "2026-08-08T07:55:16.692Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建平台公共仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ddb77eb2-c0d5-4852-bcfa-c946d2e64733, a37dc400-6b77-4260-9702-a4873bf6d038", + "traceId": "a976cc6be0094d14a89f10610b52334e", + "evidence": "", + "checkedAt": "2026-08-08T07:55:16.732Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库创建返回字符串兼容 ID", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ddb77eb2-c0d5-4852-bcfa-c946d2e64733, a37dc400-6b77-4260-9702-a4873bf6d038", + "traceId": "a976cc6be0094d14a89f10610b52334e", + "evidence": "warehouseId=2085998260398374913", + "checkedAt": "2026-08-08T07:55:16.732Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询平台仓库详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085998260398374913?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e1928a14-8a5c-4ff9-8bf4-e3f9688e31b1, f0e7f4f2-ecba-44d7-93b3-60713023d6f4", + "traceId": "17b72fe276bf472694b6dd6052d83fde", + "evidence": "", + "checkedAt": "2026-08-08T07:55:16.754Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库详情、地址和能力正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085998260398374913?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e1928a14-8a5c-4ff9-8bf4-e3f9688e31b1, f0e7f4f2-ecba-44d7-93b3-60713023d6f4", + "traceId": "17b72fe276bf472694b6dd6052d83fde", + "evidence": "addresses=1, capabilities=1", + "checkedAt": "2026-08-08T07:55:16.754Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑平台仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/warehouse-admin/2085998260398374913?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5cd66a7d-3576-4260-8f6d-a1f396071fc0, 2a3405a7-f15f-4a24-af28-928a2f727a0e", + "traceId": "03492aaf8d82423cbb6e2b99bc869f2d", + "evidence": "", + "checkedAt": "2026-08-08T07:55:16.794Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的平台仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085998260398374913?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "da2d52d7-b2db-4121-9d25-73e973e8dd5d, aa7c3f0d-7523-4e47-a2e2-4c22e0ac6cf2", + "traceId": "a20d5c5165df46c395cce9ae3b0c43e4", + "evidence": "", + "checkedAt": "2026-08-08T07:55:16.831Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085998260398374913?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "da2d52d7-b2db-4121-9d25-73e973e8dd5d, aa7c3f0d-7523-4e47-a2e2-4c22e0ac6cf2", + "traceId": "a20d5c5165df46c395cce9ae3b0c43e4", + "evidence": "warehouseId=2085998260398374913", + "checkedAt": "2026-08-08T07:55:16.831Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建仓库库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/locations?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a936fa06-1ced-41c6-aaee-ebb7a08dceaf, 9be80fa0-1885-40c8-a9a3-e3bc6e116e95", + "traceId": "b660ed8b296949e8b8aee96903622c52", + "evidence": "", + "checkedAt": "2026-08-08T07:55:16.867Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询库位详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998260981383170?tenantId=0&warehouseId=2085998260398374913" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "63723933-bdae-4a5f-8487-a70b80703313, ae2a91a3-06be-42c7-9758-cecd8e425d6f", + "traceId": "cbe2ac7d00dd4bac9eac2588a32ec533", + "evidence": "", + "checkedAt": "2026-08-08T07:55:16.896Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "库位详情关联正确仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998260981383170?tenantId=0&warehouseId=2085998260398374913" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "63723933-bdae-4a5f-8487-a70b80703313, ae2a91a3-06be-42c7-9758-cecd8e425d6f", + "traceId": "cbe2ac7d00dd4bac9eac2588a32ec533", + "evidence": "locationId=2085998260981383170", + "checkedAt": "2026-08-08T07:55:16.896Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085998260981383170?tenantId=0&warehouseId=2085998260398374913" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1093dec4-f2e1-4634-a122-aafc052695e6, f1b79a8a-6168-4c6e-8f64-73097dd97079", + "traceId": "2c33113cd49840cba45d35e1a316e819", + "evidence": "", + "checkedAt": "2026-08-08T07:55:16.934Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998260981383170?tenantId=0&warehouseId=2085998260398374913" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8e5cb1e1-0288-4c36-acc6-f46ae2821c65, 35d0d0e7-aea2-4c55-8a4a-550703c708c4", + "traceId": "d91a5b34a4eb44ed83f02761575c56ab", + "evidence": "", + "checkedAt": "2026-08-08T07:55:16.969Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "库位编辑与版本递增正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998260981383170?tenantId=0&warehouseId=2085998260398374913" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8e5cb1e1-0288-4c36-acc6-f46ae2821c65, 35d0d0e7-aea2-4c55-8a4a-550703c708c4", + "traceId": "d91a5b34a4eb44ed83f02761575c56ab", + "evidence": "version=1", + "checkedAt": "2026-08-08T07:55:16.969Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/locations/2085998260981383170/status?tenantId=0&warehouseId=2085998260398374913" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "07d5fead-59cc-4687-a8cb-f52945cae672, bd116f2c-2671-44e4-9b92-4da8d7860ec9", + "traceId": "e92c59fb999b41ceb51b8fe3e5372568", + "evidence": "", + "checkedAt": "2026-08-08T07:55:16.995Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "删除未占用测试库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/locations/2085998260981383170?tenantId=0&warehouseId=2085998260398374913&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8fc7fc66-7b2e-4c87-8058-0a1482a89ac2, 4f4df429-319d-42ff-bf9b-7d9eba05bd78", + "traceId": "9e270c5c49d14fc789ceb148eee91f80", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.022Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建仓库托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/pallets?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0f57ea00-d6be-442f-8c5d-bba3d645347f, 1bbcd062-9de6-4c02-8798-4b66c0179eb0", + "traceId": "9bba06d95e1e4cea93ce68aaa352ba59", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.054Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询托盘详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085998261769912321?tenantId=0&warehouseId=2085998260398374913" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "07a0b590-f739-49a8-8971-9e8782500636, c8054f07-93e1-4e76-b77c-dad0d9dd6e4a", + "traceId": "0c4ad399655f49838dba3aa7ccb89d28", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.071Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "托盘详情关联正确仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085998261769912321?tenantId=0&warehouseId=2085998260398374913" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "07a0b590-f739-49a8-8971-9e8782500636, c8054f07-93e1-4e76-b77c-dad0d9dd6e4a", + "traceId": "0c4ad399655f49838dba3aa7ccb89d28", + "evidence": "palletId=2085998261769912321", + "checkedAt": "2026-08-08T07:55:17.071Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/pallets/2085998261769912321?tenantId=0&warehouseId=2085998260398374913" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9e000069-af5a-46d1-be01-a9018809322f, eba3ae34-8a88-4367-aff9-5c31c2505c51", + "traceId": "634f4e68614d4d1784a6955458529b3b", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.102Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085998261769912321?tenantId=0&warehouseId=2085998260398374913" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9145a141-514b-4f18-8c4d-29704dfaff52, 00a8329c-10de-4302-986f-edf8422473c3", + "traceId": "27e15c7ac6084dc886d26227757b078f", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.127Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "托盘编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085998261769912321?tenantId=0&warehouseId=2085998260398374913" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9145a141-514b-4f18-8c4d-29704dfaff52, 00a8329c-10de-4302-986f-edf8422473c3", + "traceId": "27e15c7ac6084dc886d26227757b078f", + "evidence": "palletId=2085998261769912321", + "checkedAt": "2026-08-08T07:55:17.127Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "删除未使用测试托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/pallets/2085998261769912321?tenantId=0&warehouseId=2085998260398374913" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f28bb6f7-2193-4530-980a-0aaf68c7eb1f, 649dc1c2-b9fb-433b-81d0-f076a4bc5f9c", + "traceId": "d64431b871a34392b1230ebb5e5009f4", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.164Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "08bbe1cc-8a41-41ba-a81d-bf5c5892f1b7, f46901ca-ba99-46d6-99f0-bc188c896a33", + "traceId": "f50d3566543144d2a7ba49dc6036413a", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.196Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询快递公司详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/2085998262365503490?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "72438dcc-14b5-4348-960e-a7ffbe2b7eca, d32e99a3-3b43-410c-a433-7ac92035f02f", + "traceId": "53c97b37701248408941802638f0b44e", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.220Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司详情正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/2085998262365503490?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "72438dcc-14b5-4348-960e-a7ffbe2b7eca, d32e99a3-3b43-410c-a433-7ac92035f02f", + "traceId": "53c97b37701248408941802638f0b44e", + "evidence": "expressId=2085998262365503490", + "checkedAt": "2026-08-08T07:55:17.221Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/express-companies/2085998262365503490?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1749284b-f9f0-454a-986d-38d045b86b7d, 3e6913db-eb62-4f7a-9378-d2d547147440", + "traceId": "c608544c5f014d63b3a3572cd2ede47d", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.259Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/express-companies/2085998262365503490/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "65118115-8011-4309-af2e-022f81b5ed0c, 69d4944d-7216-4f77-b795-f0dac4c633cb", + "traceId": "61995b3c0a404c698d5f4528908b193a", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.288Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "筛选快递公司列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=EX808075516259" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "42ccc213-eee3-4a69-8e1f-d8c3de53c19b, 1af54852-28b0-4795-927b-790fe313bf68", + "traceId": "2c4cfd3c4e994109a0ef317db4c5cb7c", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.316Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司列表回显停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=EX808075516259" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "42ccc213-eee3-4a69-8e1f-d8c3de53c19b, 1af54852-28b0-4795-927b-790fe313bf68", + "traceId": "2c4cfd3c4e994109a0ef317db4c5cb7c", + "evidence": "records=1", + "checkedAt": "2026-08-08T07:55:17.316Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "afd9d761-61c9-4ec1-aec8-dbb7aa3dfb29, b9a7c53b-a1f0-435a-a858-30c0f8550faa", + "traceId": "096da4e3214b406596ead047faf4b730", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.341Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询往来单位详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/2085998262969483265?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3d6a15c5-826d-4538-bb85-824582114bea, d05ebe46-2a1e-497f-aa5e-baafcd1a4eb3", + "traceId": "7dbe006b85924a389898ed5f2bd3bd14", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.362Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位详情正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/2085998262969483265?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3d6a15c5-826d-4538-bb85-824582114bea, d05ebe46-2a1e-497f-aa5e-baafcd1a4eb3", + "traceId": "7dbe006b85924a389898ed5f2bd3bd14", + "evidence": "partnerId=2085998262969483265", + "checkedAt": "2026-08-08T07:55:17.362Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/partners/2085998262969483265?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "02260194-54cf-4d88-af9b-edf9ea585516, 2289bd88-20b2-4ee0-870a-4e26d374ba5f", + "traceId": "ecf11e482012485c9c3cc67b55bf81f1", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.392Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/partners/2085998262969483265/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2a20a737-76e0-4df4-8205-20a3853606b3, c7a6b53e-4d6c-47f0-b16e-0fb70becc931", + "traceId": "bf9de96e453544c7870f8f6e38884068", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.431Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "筛选往来单位列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=PT808075516259" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ed50ddb7-5c11-47a4-97e7-8464ce3b1f5e, 86d0feca-606e-40c8-82dd-e5b76c830b1f", + "traceId": "d0bf2c8c77f449a396f850539a9c05ee", + "evidence": "", + "checkedAt": "2026-08-08T07:55:17.456Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位列表回显编辑与停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=PT808075516259" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ed50ddb7-5c11-47a4-97e7-8464ce3b1f5e, 86d0feca-606e-40c8-82dd-e5b76c830b1f", + "traceId": "d0bf2c8c77f449a396f850539a9c05ee", + "evidence": "records=1", + "checkedAt": "2026-08-08T07:55:17.456Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载仓库导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/import-template" + }, + "http": 200, + "code": null, + "message": "3853 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "83e82381-e1a5-46e8-880a-49dcdf412d02, b7ccb199-0ee7-4416-9b53-34f747a5c9d3", + "traceId": "f44c1c06a93344f69841710b14f0e676", + "evidence": "bytes=3853, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:55:17.498Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库合法 XLSX 带数据行导入", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d86b4655-4fa9-4590-8d5f-faf2062a3d03, 7bc5fc6e-5170-44ab-94f7-72cd6ce1ce73", + "traceId": "1950f9749c354f308f617b25956b14d9", + "evidence": "HTTP=200, code=200, importedRows=n/a", + "checkedAt": "2026-08-08T07:55:17.555Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库重复导入返回明确冲突", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c79a5122-1882-4cc1-8311-82b8fef8851e, 367c32b7-2b02-4d23-9b6d-30e2463e7443", + "traceId": "241091eb27844299abd5a59ab59a1459", + "evidence": "firstImported=n/a, replayImported=n/a, errors=0", + "checkedAt": "2026-08-08T07:55:17.587Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库导入列表回查", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20&keyword=IMW808075516259" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7532ab39-397b-473c-beef-707880eb988c, db67f21b-1300-42c2-b27e-5093a3438675", + "traceId": "02b0821baa8c4d6a8031a70c6ec11a68", + "evidence": "keyword=IMW808075516259", + "checkedAt": "2026-08-08T07:55:17.618Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库导入资源回查 marker", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20&keyword=IMW808075516259" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7532ab39-397b-473c-beef-707880eb988c, db67f21b-1300-42c2-b27e-5093a3438675", + "traceId": "02b0821baa8c4d6a8031a70c6ec11a68", + "evidence": "found=true, id=2085998263841898497", + "checkedAt": "2026-08-08T07:55:17.619Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库导入资源停用清理", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/warehouse-admin/2085998263841898497/status?tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f5ecc8a6-e385-4351-9ad4-4dc39c76591b, 75db62d5-a2f6-449d-a5e7-03f12d7acb57", + "traceId": "16c34c1144234fa4b926ab8cfa13fc4f", + "evidence": "id=2085998263841898497", + "checkedAt": "2026-08-08T07:55:17.646Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载快递公司导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/import-template" + }, + "http": 200, + "code": null, + "message": "3692 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "5dd5d118-c26f-46c2-8ace-eecdc8a9b3ff, dfce3505-1d07-4f7b-8a33-f390ca2806d8", + "traceId": "021f7dcfa9604942b829b897d3220cdc", + "evidence": "bytes=3692, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:55:17.716Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司合法 XLSX 带数据行导入", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "623ef517-bb12-4894-b3d8-f7c39b37e043, 6f8d99f2-83c4-44a9-aee0-7f00ad9ff0d2", + "traceId": "f1a2ab3fdaf642f38366e0324310630c", + "evidence": "HTTP=200, code=200, importedRows=1", + "checkedAt": "2026-08-08T07:55:17.766Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司重复导入返回明确冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "914125e6-07ed-4177-98cc-3befb920c603, e2dfa5e2-1931-4919-b609-ff21e9a42c46", + "traceId": "7327b70d15f9412ab6687e8a72df1711", + "evidence": "firstImported=1, replayImported=0, errors=2", + "checkedAt": "2026-08-08T07:55:18.343Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司导入列表回查", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=IME808075516259" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "34cc814b-72be-4a0a-a560-f9ef4d0e2c54, 0513a91e-9335-4b3b-b8dd-860c0bd376fa", + "traceId": "261f58b6e2e14589bbb20ab4ff4cd259", + "evidence": "keyword=IME808075516259", + "checkedAt": "2026-08-08T07:55:18.374Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司导入资源回查 marker", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=IME808075516259" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "34cc814b-72be-4a0a-a560-f9ef4d0e2c54, 0513a91e-9335-4b3b-b8dd-860c0bd376fa", + "traceId": "261f58b6e2e14589bbb20ab4ff4cd259", + "evidence": "found=true, id=2085998264743673858", + "checkedAt": "2026-08-08T07:55:18.374Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司导入资源停用清理", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/express-companies/2085998264743673858/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "485d5335-d79d-48d5-b870-a6c42a77fa6a, 1b8897cc-aee0-4488-8ffc-266ec388a777", + "traceId": "cc933ab8f15940d9bdd5c0a38dba9ed1", + "evidence": "id=2085998264743673858", + "checkedAt": "2026-08-08T07:55:18.476Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载往来单位导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/import-template" + }, + "http": 200, + "code": null, + "message": "3830 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "bbdbb674-eaf1-4f49-974a-60be16bdcbf3, f94ef329-3480-4e0b-bca2-05f2fd1454f6", + "traceId": "6380df7f06b646339b33d6d285e1ca89", + "evidence": "bytes=3830, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:55:18.509Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位合法 XLSX 带数据行导入", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "37706f3e-bf42-4e67-8ed3-d68f6002a4e0, 7178ff4b-3a6a-48ee-9d21-36b2f03f84e9", + "traceId": "6f1c2c3db0e84185bdd9c60bcce374a7", + "evidence": "HTTP=200, code=200, importedRows=1", + "checkedAt": "2026-08-08T07:55:18.565Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位重复导入返回明确冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "993461b3-214e-4b69-bee2-c21d1494bc6e, 6334d7ba-7962-4f81-acdd-435d57a960e4", + "traceId": "96aeec59887b47d1b8a1924e2154c77e", + "evidence": "firstImported=1, replayImported=0, errors=1", + "checkedAt": "2026-08-08T07:55:18.598Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位导入列表回查", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=IMP808075516259" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "de979b52-82f5-41be-8123-76a1165fd1db, 10c35db6-ffd0-4210-a0fa-ec6ff4c03db6", + "traceId": "1a49707d0f7647abb4b6580b6cfa012c", + "evidence": "keyword=IMP808075516259", + "checkedAt": "2026-08-08T07:55:18.623Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位导入资源回查 marker", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=IMP808075516259" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "de979b52-82f5-41be-8123-76a1165fd1db, 10c35db6-ffd0-4210-a0fa-ec6ff4c03db6", + "traceId": "1a49707d0f7647abb4b6580b6cfa012c", + "evidence": "found=true, id=2085998268094922754", + "checkedAt": "2026-08-08T07:55:18.623Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位导入资源停用清理", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/partners/2085998268094922754/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d9a24743-754b-460b-b71d-55113f7d68ff, 0f0fae22-16e5-483c-9d4f-75255667f539", + "traceId": "d4796798cf494590b4ed97a28ceb15f1", + "evidence": "id=2085998268094922754", + "checkedAt": "2026-08-08T07:55:18.661Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用测试仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/warehouse-admin/2085998260398374913/status?tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "38519521-edb8-4377-b877-82daaca0091a, 1266a205-0885-4b89-ba73-d31652884e7e", + "traceId": "ca49bea4b70741dc9a684cb6b02e3652", + "evidence": "", + "checkedAt": "2026-08-08T07:55:18.689Z" + } + ] +} diff --git a/reports/admin-master-data-valid-import-final-20260808.json b/reports/admin-master-data-valid-import-final-20260808.json new file mode 100644 index 000000000..e7bd76994 --- /dev/null +++ b/reports/admin-master-data-valid-import-final-20260808.json @@ -0,0 +1,1120 @@ +{ + "reportName": "后台管理测试环境 HTTP API 验收", + "marker": "ADMIN-API-20260808075559246", + "gateway": "http://8.163.30.128:9000", + "generatedAt": "2026-08-08T07:56:00.961Z", + "startedAt": "2026-08-08T07:55:59.246Z", + "success": true, + "fatal": null, + "summary": { + "total": 58, + "passed": 58, + "failed": 0 + }, + "modules": [ + { + "name": "master-data", + "startedAt": "2026-08-08T07:55:59.615Z", + "finishedAt": "2026-08-08T07:56:00.961Z", + "success": true, + "passed": 57, + "failed": 0, + "fatal": null + } + ], + "scenarios": [], + "deploymentBlockers": [], + "coverageGaps": [ + { + "module": "master-data", + "scenario": "optimistic-lock", + "name": "仓库/托盘/快递/往来单位旧 version 冲突", + "reason": "真实 DTO 未声明 version/expectedVersion 字段,不能伪造并发冲突断言;库位版本已由 supplemental-boundaries 覆盖", + "category": "contract-gap" + } + ], + "createdResources": { + "warehouse": { + "id": "2085998440631812098", + "code": "AW808075559246", + "finalStatus": "INACTIVE" + }, + "location": { + "id": "2085998441151905794", + "warehouseId": "2085998440631812098", + "deleted": false + }, + "pallet": { + "id": "2085998441869131777", + "warehouseId": "2085998440631812098", + "deleted": true + }, + "expressCompany": { + "id": "2085998442519248897", + "code": "EX808075559246", + "finalStatus": "INACTIVE" + }, + "partner": { + "id": "2085998443114840066", + "code": "PT808075559246", + "finalStatus": "INACTIVE" + } + }, + "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": "f47cd58b-833d-45c7-be05-d2d174eb874b, 1a417dc3-011d-40e6-93e0-24d08164fb5c", + "traceId": "674e23117aad4f7bb9e7655afda41cd1", + "evidence": "", + "checkedAt": "2026-08-08T07:55:59.614Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询平台仓库列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0ec6e977-08b0-4743-96b4-731420e81b29, 80418ee7-ef3b-4cb1-aa48-182026d898c2", + "traceId": "eccbdfb74a4b4a4f9300a278ae3a8c8e", + "evidence": "", + "checkedAt": "2026-08-08T07:55:59.669Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库列表分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0ec6e977-08b0-4743-96b4-731420e81b29, 80418ee7-ef3b-4cb1-aa48-182026d898c2", + "traceId": "eccbdfb74a4b4a4f9300a278ae3a8c8e", + "evidence": "total=291", + "checkedAt": "2026-08-08T07:55:59.669Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建平台公共仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e1a9dd9b-6811-4d26-bade-a9857c58fb11, 4a8b912e-df5f-43d9-ae72-5ef87d51feaf", + "traceId": "15c7560257014018afa50289e5b1f408", + "evidence": "", + "checkedAt": "2026-08-08T07:55:59.704Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库创建返回字符串兼容 ID", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e1a9dd9b-6811-4d26-bade-a9857c58fb11, 4a8b912e-df5f-43d9-ae72-5ef87d51feaf", + "traceId": "15c7560257014018afa50289e5b1f408", + "evidence": "warehouseId=2085998440631812098", + "checkedAt": "2026-08-08T07:55:59.704Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询平台仓库详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085998440631812098?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dee40f53-9d30-4851-8e0c-056f436c444e, d3048848-790c-48b4-a2ac-e4af0575a93a", + "traceId": "8a6dacd67a274516ac8362a7d8ef9688", + "evidence": "", + "checkedAt": "2026-08-08T07:55:59.740Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库详情、地址和能力正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085998440631812098?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dee40f53-9d30-4851-8e0c-056f436c444e, d3048848-790c-48b4-a2ac-e4af0575a93a", + "traceId": "8a6dacd67a274516ac8362a7d8ef9688", + "evidence": "addresses=1, capabilities=1", + "checkedAt": "2026-08-08T07:55:59.740Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑平台仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/warehouse-admin/2085998440631812098?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d8e4fc68-2e4e-40ef-a394-f0c5c66a6b41, a0b950ab-0c26-4511-b35b-ed1db70b199a", + "traceId": "cde4c1a5e2df47eba98c5056628d8d88", + "evidence": "", + "checkedAt": "2026-08-08T07:55:59.774Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的平台仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085998440631812098?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b2b25baa-ab2a-4ef6-b5a6-d728691a1f13, c7ecd088-5b87-4729-bf1c-6a041040cd49", + "traceId": "aa0155e323be4f89b1b1a284cb0d80fa", + "evidence": "", + "checkedAt": "2026-08-08T07:55:59.792Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085998440631812098?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b2b25baa-ab2a-4ef6-b5a6-d728691a1f13, c7ecd088-5b87-4729-bf1c-6a041040cd49", + "traceId": "aa0155e323be4f89b1b1a284cb0d80fa", + "evidence": "warehouseId=2085998440631812098", + "checkedAt": "2026-08-08T07:55:59.793Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建仓库库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/locations?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2d0b080f-acd6-41e0-8bfe-31b8bcc984d4, 6d4324ae-ba90-4d32-9b66-5a9c9aa90c80", + "traceId": "6d6e26bf2b424a3b9fa7002e450d67db", + "evidence": "", + "checkedAt": "2026-08-08T07:55:59.823Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询库位详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998441151905794?tenantId=0&warehouseId=2085998440631812098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "52691355-b78c-4cc6-9145-75baf3da2389, d9a0ee3b-d251-40c4-a8cb-5f5e68e6f07b", + "traceId": "5359802a6d7b42e582cfaab070aeaeb8", + "evidence": "", + "checkedAt": "2026-08-08T07:55:59.847Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "库位详情关联正确仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998441151905794?tenantId=0&warehouseId=2085998440631812098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "52691355-b78c-4cc6-9145-75baf3da2389, d9a0ee3b-d251-40c4-a8cb-5f5e68e6f07b", + "traceId": "5359802a6d7b42e582cfaab070aeaeb8", + "evidence": "locationId=2085998441151905794", + "checkedAt": "2026-08-08T07:55:59.847Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085998441151905794?tenantId=0&warehouseId=2085998440631812098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "36cac960-44ff-49ab-a090-132af1a83346, 8e4c2dc6-1865-4680-8aa1-99ac3e936632", + "traceId": "0c8ff658d68d48759e9f7027b3e9c1cb", + "evidence": "", + "checkedAt": "2026-08-08T07:55:59.886Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998441151905794?tenantId=0&warehouseId=2085998440631812098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b07d6fb2-c4aa-4ba6-9d25-cdb49a19fb35, 0f5ff33d-b0a7-41ad-9464-25924a7282d6", + "traceId": "60cc4879db984ce4b6d40a696749b7ac", + "evidence": "", + "checkedAt": "2026-08-08T07:55:59.909Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "库位编辑与版本递增正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998441151905794?tenantId=0&warehouseId=2085998440631812098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b07d6fb2-c4aa-4ba6-9d25-cdb49a19fb35, 0f5ff33d-b0a7-41ad-9464-25924a7282d6", + "traceId": "60cc4879db984ce4b6d40a696749b7ac", + "evidence": "version=1", + "checkedAt": "2026-08-08T07:55:59.909Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/locations/2085998441151905794/status?tenantId=0&warehouseId=2085998440631812098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3917651d-1dc9-4d1a-947a-c8299f23e56d, c7ace61d-0a70-4e89-ab3d-5999d4b00a51", + "traceId": "62d5f73672714efe99e5266faddd326a", + "evidence": "", + "checkedAt": "2026-08-08T07:55:59.934Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "删除未占用测试库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/locations/2085998441151905794?tenantId=0&warehouseId=2085998440631812098&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4ab8a809-8be6-4e47-8426-f95e718a60d9, 49eaf40b-5d90-4139-ab03-9538b5765ada", + "traceId": "04b685a5dc75455ca0e69e5f119510a4", + "evidence": "", + "checkedAt": "2026-08-08T07:55:59.957Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建仓库托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/pallets?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3ac81cfa-c5cd-4da4-a6a1-4088a75e0b82, 33293c7f-3de6-4f04-a625-d42fe6222cb3", + "traceId": "bb42e4bf112f473187e9c32a5ffdbe2c", + "evidence": "", + "checkedAt": "2026-08-08T07:55:59.995Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询托盘详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085998441869131777?tenantId=0&warehouseId=2085998440631812098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "73546fe1-e771-4a02-9d2b-c519b0b251d0, 6c8b13ee-23d9-4b11-9c4f-424ebc927009", + "traceId": "54af7790ad83488c86d88917c90e7464", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.018Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "托盘详情关联正确仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085998441869131777?tenantId=0&warehouseId=2085998440631812098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "73546fe1-e771-4a02-9d2b-c519b0b251d0, 6c8b13ee-23d9-4b11-9c4f-424ebc927009", + "traceId": "54af7790ad83488c86d88917c90e7464", + "evidence": "palletId=2085998441869131777", + "checkedAt": "2026-08-08T07:56:00.018Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/pallets/2085998441869131777?tenantId=0&warehouseId=2085998440631812098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "26257998-ca1d-46c4-b582-151da0040108, 341a0881-c1bd-481d-ba29-8ffdf0966cec", + "traceId": "6eb50c51e37c4ac187ccf0edf356178b", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.059Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085998441869131777?tenantId=0&warehouseId=2085998440631812098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "52f4fa8d-3e8f-4df1-8a1a-ade410517a03, 12d8a6a2-c30b-45ae-ab26-4fbc85975574", + "traceId": "4e86c3d3e36c4abb918c501ec46da83e", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.077Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "托盘编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085998441869131777?tenantId=0&warehouseId=2085998440631812098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "52f4fa8d-3e8f-4df1-8a1a-ade410517a03, 12d8a6a2-c30b-45ae-ab26-4fbc85975574", + "traceId": "4e86c3d3e36c4abb918c501ec46da83e", + "evidence": "palletId=2085998441869131777", + "checkedAt": "2026-08-08T07:56:00.077Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "删除未使用测试托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/pallets/2085998441869131777?tenantId=0&warehouseId=2085998440631812098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6ca01f38-8b38-489a-a87e-96d9d7562f38, d1f8cd29-c9f3-4924-ab1f-b43efec577e5", + "traceId": "1eb0adfb683c45e9b8374fd9c25d245e", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.118Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1f5d7a4b-8c06-4a9d-b770-98540678abf3, 7b02ac91-1191-4b38-8bf3-fe1f6bfb85ab", + "traceId": "89480d3ce4b84aa48c7d85e560679062", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.149Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询快递公司详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/2085998442519248897?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "961b2d99-ce6e-436f-a4d8-e575f62ddaa9, f77e28be-10ff-4011-9369-94d6e634575f", + "traceId": "bc52941c79ca4621816b014f1ffcfe71", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.176Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司详情正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/2085998442519248897?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "961b2d99-ce6e-436f-a4d8-e575f62ddaa9, f77e28be-10ff-4011-9369-94d6e634575f", + "traceId": "bc52941c79ca4621816b014f1ffcfe71", + "evidence": "expressId=2085998442519248897", + "checkedAt": "2026-08-08T07:56:00.177Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/express-companies/2085998442519248897?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a536e588-f94d-42a5-af04-07014e93b595, c37a182c-f91f-4bd9-9dec-80d9947503a5", + "traceId": "630952e952af4b8ab5787c06cd3b255b", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.213Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/express-companies/2085998442519248897/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8238576b-1bf5-4705-9b53-5c583f597ee9, 9d6ad86f-0e18-4ab5-850d-f08e58f34502", + "traceId": "184392eedd5744f28825a032c25d64b9", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.244Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "筛选快递公司列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=EX808075559246" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2966e4d2-4d4d-499f-bd20-051825c3bb17, 53cfabc3-929c-4833-8669-ffbbd15ba9a3", + "traceId": "2f68ed82b00c4661ac2331330529c6ee", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.265Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司列表回显停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=EX808075559246" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2966e4d2-4d4d-499f-bd20-051825c3bb17, 53cfabc3-929c-4833-8669-ffbbd15ba9a3", + "traceId": "2f68ed82b00c4661ac2331330529c6ee", + "evidence": "records=1", + "checkedAt": "2026-08-08T07:56:00.265Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8eff7c84-9343-4a8a-9562-bb385f5d42e8, 22919440-0b16-4acb-a553-9f602a8581c8", + "traceId": "c76f58a8d7a64d6fb3444053d408c3f9", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.292Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询往来单位详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/2085998443114840066?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "849b79ee-c645-48fc-8f0d-41bd7ad25de1, b9dbf9fc-e10f-4091-ba40-529fc97a7586", + "traceId": "2ddde28160794816a189c31132e9b238", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.314Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位详情正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/2085998443114840066?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "849b79ee-c645-48fc-8f0d-41bd7ad25de1, b9dbf9fc-e10f-4091-ba40-529fc97a7586", + "traceId": "2ddde28160794816a189c31132e9b238", + "evidence": "partnerId=2085998443114840066", + "checkedAt": "2026-08-08T07:56:00.314Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/partners/2085998443114840066?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "070b4a28-d661-41d8-bfd4-52afdc8bca3b, 4c725655-4f33-4fe9-af91-e500f27b9905", + "traceId": "0789c685f71c4d7e9cdb6dc12d2ea15d", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.359Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/partners/2085998443114840066/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "028de4c1-3adf-445c-bcaa-e0526218f00a, f818a3e8-1870-405c-9cd9-941cf19a9087", + "traceId": "8b83ec49d90d463095ea723c92f57721", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.389Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "筛选往来单位列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=PT808075559246" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d7d60e7a-0703-441c-b1d9-28c88971f95f, f56e25e5-e9fa-41ef-b5b5-418a146afb86", + "traceId": "c4a13a93f84944808c735cd5f51b7136", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.414Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位列表回显编辑与停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=PT808075559246" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d7d60e7a-0703-441c-b1d9-28c88971f95f, f56e25e5-e9fa-41ef-b5b5-418a146afb86", + "traceId": "c4a13a93f84944808c735cd5f51b7136", + "evidence": "records=1", + "checkedAt": "2026-08-08T07:56:00.414Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载仓库导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/import-template" + }, + "http": 200, + "code": null, + "message": "3853 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "33d571ac-9f78-4148-be6c-0330d397d56b, 94d32110-6b88-4b3d-87c0-fe9c7baab237", + "traceId": "a0f6447bf4484815bffee06259aeb151", + "evidence": "bytes=3853, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:56:00.441Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库合法 XLSX 带数据行导入", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "84a55166-3ac6-42b4-89fa-2e97c795147d, 56267113-e508-4177-8995-5aed3ab538a6", + "traceId": "f1218792b352424886ed23a45a4179bc", + "evidence": "HTTP=200, code=200, importedRows=1", + "checkedAt": "2026-08-08T07:56:00.491Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库重复导入返回明确冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ea1c825a-1b6d-44e3-9275-9b766b760eba, 6a353ef0-6722-4e65-b03e-18df3ee24fc8", + "traceId": "7af395c36e36485c9365ab2800b52071", + "evidence": "firstImported=1, replayImported=0, errors=0", + "checkedAt": "2026-08-08T07:56:00.528Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库导入列表回查", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20&keyword=IMW808075559246" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "43ea45d6-a525-4cf8-8880-ef550ad68565, b5e0a36f-b08d-4314-a3cc-0abe334857ad", + "traceId": "f16e0bd6a6a9428bba185bfa6480eac1", + "evidence": "keyword=IMW808075559246", + "checkedAt": "2026-08-08T07:56:00.557Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库导入资源回查 marker", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20&keyword=IMW808075559246" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "43ea45d6-a525-4cf8-8880-ef550ad68565, b5e0a36f-b08d-4314-a3cc-0abe334857ad", + "traceId": "f16e0bd6a6a9428bba185bfa6480eac1", + "evidence": "found=true, id=2085998443932729345", + "checkedAt": "2026-08-08T07:56:00.557Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库导入资源停用清理", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/warehouse-admin/2085998443932729345/status?tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "761539bd-3899-4347-afb4-51fb1af7a5a0, ae215f4f-86ae-4e3a-899f-5ed24746469a", + "traceId": "be0f3d6d21ba40d49138b477dec23859", + "evidence": "id=2085998443932729345", + "checkedAt": "2026-08-08T07:56:00.584Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载快递公司导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/import-template" + }, + "http": 200, + "code": null, + "message": "3692 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "0e4819fb-389e-4850-ac86-b4ad3786258f, c1fd3ce4-23c6-41e0-84f1-d2295ddc7f82", + "traceId": "dd2e602e92ae41c0bf98e89b27983ed1", + "evidence": "bytes=3692, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:56:00.624Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司合法 XLSX 带数据行导入", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5e6e83fb-4d26-4640-8acd-d334c11a0517, 69307968-d8da-41a1-87c4-89bad87441cc", + "traceId": "a9b55d35655f493ea5fd071d886292e4", + "evidence": "HTTP=200, code=200, importedRows=1", + "checkedAt": "2026-08-08T07:56:00.671Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司重复导入返回明确冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "badb3173-9850-48ae-891d-e98c4725ddca, fd03c71f-4ff9-44e5-b53c-de975f973e11", + "traceId": "f2f7f2a266004581af30d77d969e7e18", + "evidence": "firstImported=1, replayImported=0, errors=2", + "checkedAt": "2026-08-08T07:56:00.697Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司导入列表回查", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=IME808075559246" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "37cfef28-464d-4958-a87b-b74ac7bb5d71, 6843de3f-59e9-4efb-9400-8e170baba2ff", + "traceId": "b0ee1f5ff7004db3b150ac30dd23ba11", + "evidence": "keyword=IME808075559246", + "checkedAt": "2026-08-08T07:56:00.722Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司导入资源回查 marker", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=IME808075559246" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "37cfef28-464d-4958-a87b-b74ac7bb5d71, 6843de3f-59e9-4efb-9400-8e170baba2ff", + "traceId": "b0ee1f5ff7004db3b150ac30dd23ba11", + "evidence": "found=true, id=2085998444704481282", + "checkedAt": "2026-08-08T07:56:00.722Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司导入资源停用清理", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/express-companies/2085998444704481282/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6bc18c7a-a076-4355-bf23-b2dd08a5ac09, 91b468e6-d542-47f7-bb33-1eff21e6c60a", + "traceId": "529aee72e13446f88091c1cd6dda7835", + "evidence": "id=2085998444704481282", + "checkedAt": "2026-08-08T07:56:00.757Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载往来单位导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/import-template" + }, + "http": 200, + "code": null, + "message": "3830 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "1ea46fe1-cc18-42b7-9ed9-f90326f83088, 30d2fee7-0817-438e-8372-def76c669bf2", + "traceId": "b00e3f36bff24f42a0250a5da552bf49", + "evidence": "bytes=3830, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:56:00.795Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位合法 XLSX 带数据行导入", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "608e6c42-000b-47a1-8252-e50f19ab9310, 96a72e38-38c2-492a-a984-0791e8fbceff", + "traceId": "d6dc597377a64294a6bd3f943fbaf94c", + "evidence": "HTTP=200, code=200, importedRows=1", + "checkedAt": "2026-08-08T07:56:00.829Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位重复导入返回明确冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "92992066-1962-4d1e-b3de-9414c1aaf0b0, 5fa58658-b731-4d4d-8784-3ff0ceffff56", + "traceId": "3aa080d69cbc4227a45c051a82834715", + "evidence": "firstImported=1, replayImported=0, errors=1", + "checkedAt": "2026-08-08T07:56:00.867Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位导入列表回查", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=IMP808075559246" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e7acfd68-42de-46eb-b000-9c4a9428af55, c16c469f-8711-4174-a8d5-012a5e81993c", + "traceId": "0ead8f4516a744108f81f27dbeb98205", + "evidence": "keyword=IMP808075559246", + "checkedAt": "2026-08-08T07:56:00.897Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位导入资源回查 marker", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=IMP808075559246" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e7acfd68-42de-46eb-b000-9c4a9428af55, c16c469f-8711-4174-a8d5-012a5e81993c", + "traceId": "0ead8f4516a744108f81f27dbeb98205", + "evidence": "found=true, id=2085998445367181314", + "checkedAt": "2026-08-08T07:56:00.897Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位导入资源停用清理", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/partners/2085998445367181314/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f8475c4a-1a2d-49f0-9037-b0289ea2046e, f54459cb-d286-44a0-9174-0d15fb31ea88", + "traceId": "e58b795aaf92447e9270a0c7f1250763", + "evidence": "id=2085998445367181314", + "checkedAt": "2026-08-08T07:56:00.934Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用测试仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/warehouse-admin/2085998440631812098/status?tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ffb58977-faac-4446-8963-0e64ce531d28, 9d5b3ef7-9e27-416f-b69a-e2657e7feac5", + "traceId": "a5f261f2ba0d413c96db75f0e8254c59", + "evidence": "", + "checkedAt": "2026-08-08T07:56:00.961Z" + } + ] +} diff --git a/reports/admin-service-center-flow-20260808.json b/reports/admin-service-center-flow-20260808.json new file mode 100644 index 000000000..3db3772f5 --- /dev/null +++ b/reports/admin-service-center-flow-20260808.json @@ -0,0 +1,1244 @@ +{ + "reportName": "后台管理测试环境 HTTP API 验收", + "marker": "ADMIN-API-20260808072926820", + "gateway": "http://8.163.30.128:9000", + "generatedAt": "2026-08-08T07:29:28.726Z", + "startedAt": "2026-08-08T07:29:26.820Z", + "success": true, + "fatal": null, + "summary": { + "total": 64, + "passed": 64, + "failed": 0 + }, + "modules": [ + { + "name": "ocean-bookings", + "startedAt": "2026-08-08T07:29:27.191Z", + "finishedAt": "2026-08-08T07:29:27.874Z", + "success": true, + "passed": 23, + "failed": 0, + "fatal": null + }, + { + "name": "truck-appointments", + "startedAt": "2026-08-08T07:29:27.875Z", + "finishedAt": "2026-08-08T07:29:28.630Z", + "success": true, + "passed": 35, + "failed": 0, + "fatal": null + }, + { + "name": "service-center-flow", + "startedAt": "2026-08-08T07:29:28.631Z", + "finishedAt": "2026-08-08T07:29:28.726Z", + "success": true, + "passed": 5, + "failed": 0, + "fatal": null + } + ], + "scenarios": [], + "deploymentBlockers": [], + "coverageGaps": [ + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "附件引用安全边界", + "reason": "当前 Controller 无附件上传/引用 API,未伪造附件成功", + "category": "no-public-fixture-api" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "拖车预约状态历史独立查询", + "reason": "当前拖车预约 Controller 仅提供详情实体,没有公开 histories 查询字段/端点;已验证详情中的关联 ID、版本和审计时间字段", + "category": "no-public-history-api" + } + ], + "createdResources": { + "oceanBooking": { + "id": "2085991762311557123", + "marker": "ADMIN-API-20260808072926820", + "finalStatus": "RELEASED" + }, + "truckAppointment": { + "id": "2085991765767663618", + "marker": "ADMIN-API-20260808072926820", + "finalStatus": "CANCELLED" + }, + "serviceCenterFlow": { + "appointmentId": "2085991767386664962", + "oceanBookingId": "2085991762311557123", + "marker": "ADMIN-API-20260808072926820", + "finalStatus": "CANCELLED" + } + }, + "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": "8d5b9913-085b-4970-b0cf-abc28ef1cbde, e98197dc-8126-40f4-a606-efc7acf02e7f", + "traceId": "551e386d7d9a4bb7bcdba7d9d18918a9", + "evidence": "", + "checkedAt": "2026-08-08T07:29:27.189Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱列表分页与 keyword 查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&keyword=ADMIN-API-20260808072926820" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2fbe2351-2901-4416-a011-45e2b4e226a9, 5e656587-fe6c-4dac-833d-40c6a2ea05f7", + "traceId": "cdfeb4707b0247ca8bc6c7d862811aea", + "evidence": "", + "checkedAt": "2026-08-08T07:29:27.232Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱列表分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&keyword=ADMIN-API-20260808072926820" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2fbe2351-2901-4416-a011-45e2b4e226a9, 5e656587-fe6c-4dac-833d-40c6a2ea05f7", + "traceId": "cdfeb4707b0247ca8bc6c7d862811aea", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:29:27.232Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 DRAFT 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=DRAFT" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "91a1c53f-76ac-4fd0-817f-2a3c75d6b1e2, 56fd9a5d-313e-4f8f-b66d-9dc65335fc89", + "traceId": "8033ab02a14542eb9e3d187d5c576716", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:27.263Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 SUBMITTED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=SUBMITTED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9ffe97d1-d23a-4e6f-955a-93015fdd6279, 4eb1f099-e6b9-4a5b-a0a9-3361c0906d1d", + "traceId": "d0756fc28b4542ae82b2c8d2b3fed6af", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:27.296Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 CONFIRMED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=CONFIRMED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cc56589b-ed31-4a1f-b05c-676089d4d7d0, 1f922e65-6295-42e2-8d11-2de20168377e", + "traceId": "202af373303748e3ac0b42d366b945f1", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:27.325Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 RELEASED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=RELEASED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3a0b8dea-cb0c-428e-b200-53cf7ded692d, c8360cc5-65a6-4645-b97e-4ef71ed5a846", + "traceId": "38e1b7345b004861bbd489dd0912b7cd", + "evidence": "HTTP=200, code=200, records=3", + "checkedAt": "2026-08-08T07:29:27.361Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 FAILED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=FAILED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "61bf3ed9-0d36-4d4b-9e47-15357efc8b31, 452e5fd2-121d-4c8e-9096-b42ba7727932", + "traceId": "587ee0cfcea2446cb2948966e3220a80", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:27.388Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 CANCELLED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=CANCELLED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cc319444-8667-401f-903c-8f78841fd17f, 3074d10d-1f7e-4cfd-8c1a-b7e5b669db28", + "traceId": "49c482772e0e4ec0bc9a82035e96d0de", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:27.421Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "创建隔离海运订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "80089297-6714-41ae-a275-fea42e686c6c, e71e6bb1-5851-4900-aa88-d70fef17bc5d", + "traceId": "bd9a90b2b6c543edb5c3111865e1733d", + "evidence": "key=ADMIN-API-20260808072926820-ocean-create", + "checkedAt": "2026-08-08T07:29:27.462Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 DTO 字段、DRAFT 和9类关联字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "80089297-6714-41ae-a275-fea42e686c6c, e71e6bb1-5851-4900-aa88-d70fef17bc5d", + "traceId": "bd9a90b2b6c543edb5c3111865e1733d", + "evidence": "bookingId=2085991762311557123, parties=3, requirements=1", + "checkedAt": "2026-08-08T07:29:27.462Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "创建 Idempotency-Key 重放返回同一订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "350dc55e-16aa-4a78-bdb1-98a900649cec, 7bc9d03f-ce8e-4c48-aa06-6bd13c0c296f", + "traceId": "c7f327e6c5af4c2498120d0bea0f2d00", + "evidence": "first=2085991762311557123, replay=2085991762311557123", + "checkedAt": "2026-08-08T07:29:27.497Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "编辑 DRAFT 订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/ocean-bookings/2085991762311557123" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b1fe46eb-991c-4f68-b0ac-1e318bf334e7, 2dd318de-e3a0-4358-8bf4-301c37a5fadd", + "traceId": "f154446cdb2144b9a6d92f6a71e64305", + "evidence": "version=0", + "checkedAt": "2026-08-08T07:29:27.539Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱旧版本编辑返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/ocean-bookings/2085991762311557123" + }, + "http": 200, + "code": "A0409", + "message": "数据已被其他人修改,请刷新后重试", + "requestId": "711b7eeb-b7a2-4519-ae59-f07f34be3d5b", + "traceId": "62cc762560cc4e7e89d7bdc4a1018d10", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:29:27.565Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "冲突后回查订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085991762311557123" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "29eff8f8-6c4c-405f-8b9b-f7b59ef548a5, ae2b2e7a-b420-4694-bb13-cf9b6198116b", + "traceId": "6d7d3243487a4337a34abed5b309dd3d", + "evidence": "", + "checkedAt": "2026-08-08T07:29:27.594Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱冲突未部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085991762311557123" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "29eff8f8-6c4c-405f-8b9b-f7b59ef548a5, ae2b2e7a-b420-4694-bb13-cf9b6198116b", + "traceId": "6d7d3243487a4337a34abed5b309dd3d", + "evidence": "vessel=编辑船-8072926820", + "checkedAt": "2026-08-08T07:29:27.594Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "提交订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991762311557123/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a978c1f7-b5df-44be-afcc-969d3f00e16d, 9ea21140-7cfd-48f0-9de2-9b553e5411e1", + "traceId": "cacf5a6af6b647f0a3709866f60c5e4f", + "evidence": "status=SUBMITTED", + "checkedAt": "2026-08-08T07:29:27.633Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "确认订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991762311557123/confirm" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dcb29261-c2aa-444f-b5c7-3212314834ac, fdf70999-3d59-447d-9d24-ed075cdb204e", + "traceId": "b8b4ca2cad374f1291a857fdeee49c94", + "evidence": "status=CONFIRMED", + "checkedAt": "2026-08-08T07:29:27.665Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "申请改船", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991762311557123/change-request" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "489795fe-9788-4b9b-bbf8-4fa8052154c2, 28d86efd-e62a-4603-a315-4c1774976508", + "traceId": "87fe5cf123234f05a417d66779689e52", + "evidence": "", + "checkedAt": "2026-08-08T07:29:27.713Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "确认改船", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991762311557123/change-confirm" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "18b7a026-2f29-4a6d-aee9-f209d88902a3, 32fece56-e69f-4170-8baf-f3a5d9dd4ba6", + "traceId": "5b66c589c1404cfb9558296ef852639a", + "evidence": "status=CONFIRMED", + "checkedAt": "2026-08-08T07:29:27.756Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "放舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991762311557123/release" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "78bd7644-e26f-448c-997c-a17d9377c27b, 828bb30a-a98b-40a2-a0dd-60a5c8cb22a3", + "traceId": "bd85e1082ab84f11b66550e108da9c70", + "evidence": "status=RELEASED", + "checkedAt": "2026-08-08T07:29:27.808Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "回查 RELEASED 订舱详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085991762311557123" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4bef203d-be53-4f76-81d8-841da1a569c3, 225ecb9c-7626-487a-af37-8023acdfce8e", + "traceId": "4af3132346eb4b23a3292c23a91b19d5", + "evidence": "", + "checkedAt": "2026-08-08T07:29:27.838Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱状态历史、审计操作者和终态完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085991762311557123" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4bef203d-be53-4f76-81d8-841da1a569c3, 225ecb9c-7626-487a-af37-8023acdfce8e", + "traceId": "4af3132346eb4b23a3292c23a91b19d5", + "evidence": "status=RELEASED, histories=6", + "checkedAt": "2026-08-08T07:29:27.838Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "不存在订舱详情安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/999999999999999999" + }, + "http": 200, + "code": "A0404", + "message": "订舱单不存在", + "requestId": "1d019856-f740-4ac3-bca0-8646eaeccde1", + "traceId": "c182bf38e3e0437a95500ce408532d6e", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:29:27.874Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约分页 keyword 查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&keyword=ADMIN-API-20260808072926820" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "02cc4326-58cd-4e3c-ac01-b5fc196dc1ba, c6efc909-fcc2-45db-8aff-0221c70d3458", + "traceId": "05550e441a874803b8a526a84f55b5f2", + "evidence": "", + "checkedAt": "2026-08-08T07:29:27.917Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&keyword=ADMIN-API-20260808072926820" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "02cc4326-58cd-4e3c-ac01-b5fc196dc1ba, c6efc909-fcc2-45db-8aff-0221c70d3458", + "traceId": "05550e441a874803b8a526a84f55b5f2", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:29:27.917Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 DRAFT 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=DRAFT" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6fc5dd56-2c90-40dd-a572-b022cce5ccbe, e9cf1680-054b-4c5c-ab05-5dfc0e93aa1b", + "traceId": "123eafd9f51d430a9a8bf10542e4ab91", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:27.953Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 PENDING_DISPATCH 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=PENDING_DISPATCH" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2914d905-5de6-40c8-a487-48f2598a3f49, 58d18faa-5d05-4951-8579-f899886e63bb", + "traceId": "23dd7c1b26af4693821a69123a507e6a", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:27.982Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 DISPATCHED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=DISPATCHED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3abbede8-89fb-43e5-95a0-11cafb532b0f, fd83a202-a3f0-4661-87cb-63ee0abead2f", + "traceId": "f6cb824075b142fd9e0814ae60c1c87a", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:28.011Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 PICKUP_IN_PROGRESS 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=PICKUP_IN_PROGRESS" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "28157d77-14ee-439e-9921-61f51c2c090f, 547bf72b-5df7-4c7d-9943-f8fa1d1e9445", + "traceId": "9345f17b0d6b4589aad3254011e74694", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:28.047Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 ARRIVED_WAREHOUSE 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=ARRIVED_WAREHOUSE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "528190d2-bea0-4dd0-8612-56e5a1d7fb76, 02fb3b2e-59aa-49ff-afaa-8e52c89bf076", + "traceId": "77472816cef24610a833b460b1d01247", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:28.076Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 LOADING 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=LOADING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "478c1ed0-407e-4cad-af77-94b008ad0f19, 46b6bf86-ec5e-4a2c-8e41-e5804960aa16", + "traceId": "665a372c505f4980ade305ee6721cede", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:28.104Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 DEPARTED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=DEPARTED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "03bc9904-0893-49cc-a423-3e33cbd57a29, 36cb17c8-82a5-4f43-82fc-4dd37f33901e", + "traceId": "8b131a6fd8a1495b839ee65a9cad1a95", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:28.126Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 COMPLETED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=COMPLETED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ced119bb-4166-4487-a485-f796ca1cbef9, 45c6a976-f941-4041-9c02-d0b768ee6a05", + "traceId": "ef9426ae25bc48ce9ef281e3ce74af82", + "evidence": "HTTP=200, code=200, records=3", + "checkedAt": "2026-08-08T07:29:28.147Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 RESCHEDULED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=RESCHEDULED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "526ed1d3-97e4-4d11-b8bf-c7e7b728f6ae, 10a34642-e0be-48e3-a77b-a14bd65b638c", + "traceId": "de5d2153259e48eeb73a0938393ccb01", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:28.184Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 EXCEPTION 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=EXCEPTION" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8ebde2ba-d201-4d53-8d5c-05194c8fba6f, 4ebd908f-8862-4db4-a091-2056f146d09b", + "traceId": "ba9ad094bd1b48edbb501b308dd5e501", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:29:28.213Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 CANCELLED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=CANCELLED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8357e5c1-f1d5-480f-83e5-eecdbd8f0f39, 6e127670-5bac-4197-a2e9-8be9dd1c9079", + "traceId": "23ec5cec9f9b47a1b1f7d3813eb7d6da", + "evidence": "HTTP=200, code=200, records=1", + "checkedAt": "2026-08-08T07:29:28.249Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "创建隔离拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fb546b22-7987-4452-8ec8-33b6d9ce5af2, 87ed6c89-6d95-4cf3-ab99-bd5e6757d7bd", + "traceId": "8236e5aa1fa74f21a440ca7dfc7f36da", + "evidence": "", + "checkedAt": "2026-08-08T07:29:28.281Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约费用、司机车辆和地址字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fb546b22-7987-4452-8ec8-33b6d9ce5af2, 87ed6c89-6d95-4cf3-ab99-bd5e6757d7bd", + "traceId": "8236e5aa1fa74f21a440ca7dfc7f36da", + "evidence": "id=2085991765767663618, status=DRAFT", + "checkedAt": "2026-08-08T07:29:28.281Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "编辑拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/truck-appointments/2085991765767663618" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "351a01ea-22b8-4695-be5a-9790f246b651, b7f49898-be92-4c9a-a2f8-29735b250cde", + "traceId": "503acc9907b54c1b9a17b7ef4e07c15d", + "evidence": "version=0", + "checkedAt": "2026-08-08T07:29:28.313Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约旧版本编辑返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/truck-appointments/2085991765767663618" + }, + "http": 200, + "code": "A0409", + "message": "版本已变化,请刷新后重试", + "requestId": "6958ae9a-5d2f-4429-b571-ff9192fab6f3", + "traceId": "9ac6e0cc36c84b6a9e0ef7ffea886efc", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:29:28.337Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "冲突后回查拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991765767663618" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1771d7ba-61ee-49f4-a32d-b1320f0ba009, 64d298e7-f8dd-4fb8-b5bb-c9b0ecaed2f8", + "traceId": "03d42db8f67e4dd2a495eb2d1caa31cf", + "evidence": "", + "checkedAt": "2026-08-08T07:29:28.368Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约冲突未部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991765767663618" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1771d7ba-61ee-49f4-a32d-b1320f0ba009, 64d298e7-f8dd-4fb8-b5bb-c9b0ecaed2f8", + "traceId": "03d42db8f67e4dd2a495eb2d1caa31cf", + "evidence": "vehicleNo=粤C-926820", + "checkedAt": "2026-08-08T07:29:28.368Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "提交预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3d8b3085-6d20-4474-9722-e4c5d76012cb, ed57667c-5651-4d73-b910-7d8c4b67250a", + "traceId": "157256b837154cac89f3ccd90854d87c", + "evidence": "", + "checkedAt": "2026-08-08T07:29:28.403Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "提交预约 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3d8b3085-6d20-4474-9722-e4c5d76012cb, ed57667c-5651-4d73-b910-7d8c4b67250a", + "traceId": "157256b837154cac89f3ccd90854d87c", + "evidence": "status=PENDING_DISPATCH", + "checkedAt": "2026-08-08T07:29:28.403Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "派车", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/dispatch" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c38bb3a3-31f3-405b-80f6-a52eec9568c6, 4ff62c9f-632b-46c1-93b6-a341e664d93b", + "traceId": "8598f3a10c214519a4964887b9f50dc4", + "evidence": "", + "checkedAt": "2026-08-08T07:29:28.437Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "派车 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/dispatch" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c38bb3a3-31f3-405b-80f6-a52eec9568c6, 4ff62c9f-632b-46c1-93b6-a341e664d93b", + "traceId": "8598f3a10c214519a4964887b9f50dc4", + "evidence": "status=DISPATCHED", + "checkedAt": "2026-08-08T07:29:28.437Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始提货", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/pickup" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "eab4d165-7b78-498c-a818-1c08eab5c92a, 350afb06-96ca-4ff4-9454-1523604933fc", + "traceId": "96092d1cc421450a827a3500a9392f8f", + "evidence": "", + "checkedAt": "2026-08-08T07:29:28.461Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始提货 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/pickup" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "eab4d165-7b78-498c-a818-1c08eab5c92a, 350afb06-96ca-4ff4-9454-1523604933fc", + "traceId": "96092d1cc421450a827a3500a9392f8f", + "evidence": "status=PICKUP_IN_PROGRESS", + "checkedAt": "2026-08-08T07:29:28.462Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "到仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/arrive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "be829416-6757-4ebf-976d-5a7422801fe5, 103cf649-b274-4497-80c5-25407f4783b6", + "traceId": "9cc983d0f13c4a1d97f2476fb1d76340", + "evidence": "", + "checkedAt": "2026-08-08T07:29:28.502Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "到仓 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/arrive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "be829416-6757-4ebf-976d-5a7422801fe5, 103cf649-b274-4497-80c5-25407f4783b6", + "traceId": "9cc983d0f13c4a1d97f2476fb1d76340", + "evidence": "status=ARRIVED_WAREHOUSE", + "checkedAt": "2026-08-08T07:29:28.502Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始装货", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/load" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5407dde1-5915-48d8-9176-24b1e0b9b2fd, f384e337-fd5c-4d8a-bb8e-59d7f0534b70", + "traceId": "10e9acc240134b8cafb8144d233948f0", + "evidence": "", + "checkedAt": "2026-08-08T07:29:28.543Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始装货 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/load" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5407dde1-5915-48d8-9176-24b1e0b9b2fd, f384e337-fd5c-4d8a-bb8e-59d7f0534b70", + "traceId": "10e9acc240134b8cafb8144d233948f0", + "evidence": "status=LOADING", + "checkedAt": "2026-08-08T07:29:28.543Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "离场", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/depart" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6e1f96c7-0da8-48f8-9d47-25249e3fb732, c7990906-ab8d-47d1-8ed9-a5e22c491589", + "traceId": "c7ac1881e7714116a642060997a62d8d", + "evidence": "", + "checkedAt": "2026-08-08T07:29:28.574Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "离场 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/depart" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6e1f96c7-0da8-48f8-9d47-25249e3fb732, c7990906-ab8d-47d1-8ed9-a5e22c491589", + "traceId": "c7ac1881e7714116a642060997a62d8d", + "evidence": "status=DEPARTED", + "checkedAt": "2026-08-08T07:29:28.574Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "完成", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/complete" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "92ef5fd3-e056-4f78-8d64-0fb69739cc3c, 93b782cd-0594-45e1-b9a6-d878c89c355a", + "traceId": "e99ea709e3bf497caba91ed885d59c52", + "evidence": "", + "checkedAt": "2026-08-08T07:29:28.605Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "完成 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991765767663618/complete" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "92ef5fd3-e056-4f78-8d64-0fb69739cc3c, 93b782cd-0594-45e1-b9a6-d878c89c355a", + "traceId": "e99ea709e3bf497caba91ed885d59c52", + "evidence": "status=COMPLETED", + "checkedAt": "2026-08-08T07:29:28.605Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "回查 COMPLETED 拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991765767663618" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b93e01b4-d0e9-4092-b060-c43d96746ef6, 23c48451-85fe-48d8-a17e-5455e338749d", + "traceId": "0b9d7cbcb0084e86add1f08d3caebabe", + "evidence": "", + "checkedAt": "2026-08-08T07:29:28.630Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约状态终态和费用快照正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991765767663618" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b93e01b4-d0e9-4092-b060-c43d96746ef6, 23c48451-85fe-48d8-a17e-5455e338749d", + "traceId": "0b9d7cbcb0084e86add1f08d3caebabe", + "evidence": "status=COMPLETED", + "checkedAt": "2026-08-08T07:29:28.630Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "创建关联海运订舱的拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "74c680ea-054e-4ce9-a107-21ba01756407, 01dd7156-9389-47c9-b923-fd1f15f09cbb", + "traceId": "9a8c899c92f9411797a229d99a7d0d27", + "evidence": "oceanBookingId=2085991762311557123", + "checkedAt": "2026-08-08T07:29:28.667Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "拖车预约关联订舱 ID、版本和审计字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "74c680ea-054e-4ce9-a107-21ba01756407, 01dd7156-9389-47c9-b923-fd1f15f09cbb", + "traceId": "9a8c899c92f9411797a229d99a7d0d27", + "evidence": "appointmentId=2085991767386664962, oceanBookingId=2085991762311557123, version=0", + "checkedAt": "2026-08-08T07:29:28.667Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "取消跨服务链路拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991767386664962/cancel" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9ed2027a-7619-4b90-818f-9bf59b358e57, 2a50ff4f-79b8-4d44-9fb9-291305cb0622", + "traceId": "40e597a83d6744a3856e9a7e12ca5710", + "evidence": "", + "checkedAt": "2026-08-08T07:29:28.700Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "跨服务链路安全终态为 CANCELLED", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991767386664962/cancel" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9ed2027a-7619-4b90-818f-9bf59b358e57, 2a50ff4f-79b8-4d44-9fb9-291305cb0622", + "traceId": "40e597a83d6744a3856e9a7e12ca5710", + "evidence": "status=CANCELLED", + "checkedAt": "2026-08-08T07:29:28.700Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "回查跨服务链路审计历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991767386664962" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2ea90a70-7ea0-4c76-ad85-3f49d6c58262, 25e61772-2675-464d-ad0f-9864bd8065dc", + "traceId": "e2eb08c82b034103bbcb0ced7fff707a", + "evidence": "", + "checkedAt": "2026-08-08T07:29:28.726Z" + } + ] +} diff --git a/reports/admin-test-env-acceptance-coverage-20260808.json b/reports/admin-test-env-acceptance-coverage-20260808.json new file mode 100644 index 000000000..4f104fd9e --- /dev/null +++ b/reports/admin-test-env-acceptance-coverage-20260808.json @@ -0,0 +1,9850 @@ +{ + "reportName": "后台管理测试环境 HTTP API 验收", + "marker": "ADMIN-API-20260808072627117", + "gateway": "http://8.163.30.128:9000", + "generatedAt": "2026-08-08T07:26:58.834Z", + "startedAt": "2026-08-08T07:26:27.117Z", + "success": false, + "fatal": null, + "summary": { + "total": 525, + "passed": 519, + "failed": 6 + }, + "modules": [ + { + "name": "customers", + "startedAt": "2026-08-08T07:26:27.488Z", + "finishedAt": "2026-08-08T07:26:28.456Z", + "success": true, + "passed": 38, + "failed": 0, + "fatal": null + }, + { + "name": "overseas-storage-fees", + "startedAt": "2026-08-08T07:26:28.457Z", + "finishedAt": "2026-08-08T07:26:29.551Z", + "success": true, + "passed": 29, + "failed": 0, + "fatal": null + }, + { + "name": "system", + "startedAt": "2026-08-08T07:26:29.552Z", + "finishedAt": "2026-08-08T07:26:32.044Z", + "success": true, + "passed": 41, + "failed": 0, + "fatal": null + }, + { + "name": "master-data", + "startedAt": "2026-08-08T07:26:32.046Z", + "finishedAt": "2026-08-08T07:26:33.321Z", + "success": true, + "passed": 48, + "failed": 0, + "fatal": null + }, + { + "name": "orders", + "startedAt": "2026-08-08T07:26:33.323Z", + "finishedAt": "2026-08-08T07:26:36.773Z", + "success": true, + "passed": 49, + "failed": 0, + "fatal": null + }, + { + "name": "pricing", + "startedAt": "2026-08-08T07:26:36.775Z", + "finishedAt": "2026-08-08T07:26:41.220Z", + "success": true, + "passed": 26, + "failed": 0, + "fatal": null + }, + { + "name": "downloads", + "startedAt": "2026-08-08T07:26:41.222Z", + "finishedAt": "2026-08-08T07:26:45.434Z", + "success": true, + "passed": 8, + "failed": 0, + "fatal": null + }, + { + "name": "inbound-weight-ocr", + "startedAt": "2026-08-08T07:26:45.436Z", + "finishedAt": "2026-08-08T07:26:50.888Z", + "success": true, + "passed": 52, + "failed": 0, + "fatal": null + }, + { + "name": "orders-inbound-measurement-fixture", + "startedAt": "2026-08-08T07:26:50.888Z", + "finishedAt": "2026-08-08T07:26:54.384Z", + "success": true, + "passed": 49, + "failed": 0, + "fatal": null + }, + { + "name": "inbound-measurement", + "startedAt": "2026-08-08T07:26:54.386Z", + "finishedAt": "2026-08-08T07:26:55.346Z", + "success": true, + "passed": 28, + "failed": 0, + "fatal": null + }, + { + "name": "supplemental", + "startedAt": "2026-08-08T07:26:55.348Z", + "finishedAt": "2026-08-08T07:26:56.809Z", + "success": true, + "passed": 74, + "failed": 0, + "fatal": null + }, + { + "name": "supplemental-boundaries", + "startedAt": "2026-08-08T07:26:56.811Z", + "finishedAt": "2026-08-08T07:26:57.319Z", + "success": false, + "passed": 14, + "failed": 4, + "fatal": null + }, + { + "name": "ocean-bookings", + "startedAt": "2026-08-08T07:26:57.321Z", + "finishedAt": "2026-08-08T07:26:57.994Z", + "success": true, + "passed": 23, + "failed": 0, + "fatal": null + }, + { + "name": "truck-appointments", + "startedAt": "2026-08-08T07:26:57.995Z", + "finishedAt": "2026-08-08T07:26:58.741Z", + "success": false, + "passed": 35, + "failed": 1, + "fatal": null + }, + { + "name": "service-center-flow", + "startedAt": "2026-08-08T07:26:58.742Z", + "finishedAt": "2026-08-08T07:26:58.834Z", + "success": false, + "passed": 4, + "failed": 1, + "fatal": null + } + ], + "scenarios": [ + { + "name": "customer-dimension-rules", + "module": "customers", + "success": true, + "deploymentBlocked": false, + "passed": 13, + "failed": 0 + }, + { + "name": "customer-overseas-storage-fee-lifecycle", + "module": "overseas-storage-fees", + "success": true, + "deploymentBlocked": false, + "passed": 29, + "failed": 0 + }, + { + "name": "price-book-lifecycle", + "module": "pricing", + "success": true, + "deploymentBlocked": false, + "passed": 26, + "failed": 0 + }, + { + "name": "weight-image-recognition-and-confirmation", + "module": "inbound-weight-ocr", + "success": true, + "deploymentBlocked": false, + "passed": 52, + "failed": 0 + }, + { + "name": "mojia-carton-measurement", + "module": "inbound-measurement", + "success": true, + "deploymentBlocked": false, + "passed": 28, + "failed": 0 + }, + { + "name": "admin-boundary-automation", + "module": "supplemental-boundaries", + "success": false, + "deploymentBlocked": false, + "passed": 14, + "failed": 4 + } + ], + "deploymentBlockers": [ + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "附件引用安全边界自动化缺口", + "evidence": "当前 Controller 无附件上传/引用 API,未伪造附件成功", + "code": null, + "requestId": null, + "traceId": null + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "拖车预约关联订舱 ID、版本和审计字段完整", + "evidence": "appointmentId=2085991138715021313, oceanBookingId=2085991133568610300, version=0", + "code": "200", + "requestId": "f462dd04-88f6-48ae-aa59-522c81b62a75, b2a9bb44-7a33-4962-acff-fb6d46e68469", + "traceId": "954cc878a1794d14a9c7ded20addb7f1" + } + ], + "coverageGaps": [ + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库带数据行的合法 XLSX 写入", + "reason": "当前验收运行时无 XLSX 写入依赖;仅上传真实服务模板做解析/重复结果稳定性验证,未伪造数据行或写入主数据", + "category": "runtime-dependency" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司带数据行的合法 XLSX 写入", + "reason": "当前验收运行时无 XLSX 写入依赖;仅上传真实服务模板做解析/重复结果稳定性验证,未伪造数据行或写入主数据", + "category": "runtime-dependency" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位带数据行的合法 XLSX 写入", + "reason": "当前验收运行时无 XLSX 写入依赖;仅上传真实服务模板做解析/重复结果稳定性验证,未伪造数据行或写入主数据", + "category": "runtime-dependency" + }, + { + "module": "master-data", + "scenario": "optimistic-lock", + "name": "仓库/托盘/快递/往来单位旧 version 冲突", + "reason": "真实 DTO 未声明 version/expectedVersion 字段,不能伪造并发冲突断言;库位版本已由 supplemental-boundaries 覆盖", + "category": "contract-gap" + }, + { + "module": "supplemental-boundaries", + "scenario": "resource-occupancy", + "name": "托盘/库位真实占用删除保护", + "reason": "当前公共验收 API 未提供可安全构造并释放占用关联的独立 fixture;未操作历史资源", + "category": "no-public-fixture-api" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "拖车预约状态历史独立查询", + "reason": "当前拖车预约 Controller 仅提供详情实体,没有公开 histories 查询字段/端点;已验证详情中的关联 ID、版本和审计时间字段", + "category": "no-public-history-api" + } + ], + "createdResources": { + "customer": { + "tenantId": "2085991007828692994", + "marker": "ADMIN-API-20260808072627117", + "contactPhone": "16173987488" + }, + "overseasStorageFeeCustomer": { + "tenantId": "2085991011792310274", + "marker": "ADMIN-API-20260808072627117", + "ownedByModule": true + }, + "systemPermission": { + "id": "2085991016481542146", + "code": "platform:acceptance:808072627117" + }, + "systemRole": { + "id": "2085991016993247233", + "code": "ADMIN_ACCEPT_808072627117", + "finalStatus": "DISABLED", + "retainedBecauseAssigned": true + }, + "systemUser": { + "membershipId": "2085991018335424515", + "username": "admin_accept_808072627117", + "finalStatus": "DISABLED" + }, + "warehouse": { + "id": "2085991026868142082", + "code": "AW808072627117", + "finalStatus": "INACTIVE" + }, + "location": { + "id": "2085991027425984514", + "warehouseId": "2085991026868142082", + "deleted": false + }, + "pallet": { + "id": "2085991028277428226", + "warehouseId": "2085991026868142082", + "deleted": true + }, + "expressCompany": { + "id": "2085991029007237121", + "code": "EX808072627117", + "finalStatus": "INACTIVE" + }, + "partner": { + "id": "2085991029657354242", + "code": "PT808072627117", + "finalStatus": "INACTIVE" + }, + "orders": { + "marker": "ADMIN-API-20260808072627117", + "tenantId": "10001", + "orderId": "2085991034748731394", + "productImageFileId": "2085991034312523777", + "boxTypes": [ + "SMALL", + "MEDIUM", + "LARGE", + "EXTRA_LARGE" + ], + "inboundId": "2085991042023731201", + "orderNo": "FL2085991034748731394", + "inboundCode": "RK-2085991034748731394", + "processStatus": "WAIT_MEASURE", + "taskId": "2085991042019536897" + }, + "ocrInbound": { + "tenantId": "10001", + "inboundId": "2085991042023731201", + "marker": "ADMIN-API-20260808072627117" + }, + "testInbound": { + "tenantId": "10001", + "inboundId": "2085991042023731201", + "marker": "ADMIN-API-20260808072627117" + }, + "priceBookVersion": { + "versionId": "2085991046780071937", + "marker": "ADMIN-API-20260808072627117", + "sourceSha256": "3170fd3aa8795cd816ca9600f87a6a2a06b15d0cf6042d4592f33d4b30c7b8ab" + }, + "exportTask": { + "id": "2085991065220349954" + }, + "inboundWeightOcr": { + "tenantId": "10001", + "inboundId": "2085991042023731201", + "resultIds": [ + "2085991094838407169", + "2085991103889715202" + ], + "cleaned": true + }, + "orchestrationFixtures": { + "inboundMeasurement": { + "marker": "ADMIN-API-20260808072627117-MOJIA", + "tenantId": "10001", + "orderId": "2085991108417486849", + "inboundId": "2085991117634449410" + } + }, + "inboundMeasurement": { + "marker": "ADMIN-API-20260808072627117-MOJIA", + "tenantId": "10001", + "inboundId": "2085991117634449410", + "measurementId": "2085991122537590785", + "boxCode": "RK-2085991108417486849#4-1", + "finalStatus": "APPROVED" + }, + "oceanBooking": { + "id": "2085991133568610307", + "marker": "ADMIN-API-20260808072627117", + "finalStatus": "RELEASED" + }, + "truckAppointment": { + "id": "2085991137154740226", + "marker": "ADMIN-API-20260808072627117", + "finalStatus": "CANCELLED" + }, + "serviceCenterFlow": { + "appointmentId": "2085991138715021313", + "oceanBookingId": "2085991133568610307", + "marker": "ADMIN-API-20260808072627117", + "finalStatus": "CANCELLED" + } + }, + "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": "775379a5-401d-4b55-9aa0-85fd58344885, 0cfcb6de-effd-48fa-8f32-96c6eee40681", + "traceId": "8fe49898d0b74abab9765782672b726e", + "evidence": "", + "checkedAt": "2026-08-08T07:26:27.488Z" + }, + { + "module": "customers", + "scenario": null, + "name": "检查测试联系电话可用性", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/contact-phone-availability?contactPhone=16173987488" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f37d758e-c8c7-41b9-a24f-7fe3949dacef, 177b19be-3d8f-43c1-bd9f-8e8f28988575", + "traceId": "7e2f6e081e61491481bbb79ed3a3537c", + "evidence": "attempt=1", + "checkedAt": "2026-08-08T07:26:27.536Z" + }, + { + "module": "customers", + "scenario": null, + "name": "创建客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "89167a63-0568-4fad-b3de-aae72b44170e, 5746d2fc-9594-44f9-b577-f4538655d114", + "traceId": "956179c12b864677b3da1569115c9df4", + "evidence": "", + "checkedAt": "2026-08-08T07:26:27.931Z" + }, + { + "module": "customers", + "scenario": null, + "name": "创建响应客户字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "89167a63-0568-4fad-b3de-aae72b44170e, 5746d2fc-9594-44f9-b577-f4538655d114", + "traceId": "956179c12b864677b3da1569115c9df4", + "evidence": "missing=none", + "checkedAt": "2026-08-08T07:26:27.931Z" + }, + { + "module": "customers", + "scenario": null, + "name": "新客户基础字段正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "89167a63-0568-4fad-b3de-aae72b44170e, 5746d2fc-9594-44f9-b577-f4538655d114", + "traceId": "956179c12b864677b3da1569115c9df4", + "evidence": "tenantId=2085991007828692994, status=PROFILE_REQUIRED", + "checkedAt": "2026-08-08T07:26:27.931Z" + }, + { + "module": "customers", + "scenario": "customer-owner-provisioning", + "name": "创建客户生成初始密码", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "89167a63-0568-4fad-b3de-aae72b44170e, 5746d2fc-9594-44f9-b577-f4538655d114", + "traceId": "956179c12b864677b3da1569115c9df4", + "evidence": "generated=true, length=16", + "checkedAt": "2026-08-08T07:26:27.931Z" + }, + { + "module": "customers", + "scenario": "customer-owner-provisioning", + "name": "管理员用户名默认使用联系电话", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "89167a63-0568-4fad-b3de-aae72b44170e, 5746d2fc-9594-44f9-b577-f4538655d114", + "traceId": "956179c12b864677b3da1569115c9df4", + "evidence": "matches=true", + "checkedAt": "2026-08-08T07:26:27.931Z" + }, + { + "module": "customers", + "scenario": null, + "name": "待完善客户的审核字段保持为空", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "89167a63-0568-4fad-b3de-aae72b44170e, 5746d2fc-9594-44f9-b577-f4538655d114", + "traceId": "956179c12b864677b3da1569115c9df4", + "evidence": "creditCode=omitted, approvedAt=omitted", + "checkedAt": "2026-08-08T07:26:27.931Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "新客户尺寸规则可查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e56e8a5c-b05a-40eb-8465-df122c0e1caa, 2b93dd38-5c36-41fc-a10d-5218faaac318", + "traceId": "bb67cb44dcff4da68e2687fa9e1a1296", + "evidence": "tenantId=2085991007828692994", + "checkedAt": "2026-08-08T07:26:27.963Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "固定四箱规顺序完整且无重复", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e56e8a5c-b05a-40eb-8465-df122c0e1caa, 2b93dd38-5c36-41fc-a10d-5218faaac318", + "traceId": "bb67cb44dcff4da68e2687fa9e1a1296", + "evidence": "count=4, order=SMALL,MEDIUM,LARGE,EXTRA_LARGE", + "checkedAt": "2026-08-08T07:26:27.963Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "四箱规默认内径、加边和备注正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e56e8a5c-b05a-40eb-8465-df122c0e1caa, 2b93dd38-5c36-41fc-a10d-5218faaac318", + "traceId": "bb67cb44dcff4da68e2687fa9e1a1296", + "evidence": "defaults=matched", + "checkedAt": "2026-08-08T07:26:27.963Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "客户 ID、规则 ID 为字符串且初始版本为0", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e56e8a5c-b05a-40eb-8465-df122c0e1caa, 2b93dd38-5c36-41fc-a10d-5218faaac318", + "traceId": "bb67cb44dcff4da68e2687fa9e1a1296", + "evidence": "groupTenantIdType=string, rows=string/v0,string/v0,string/v0,string/v0", + "checkedAt": "2026-08-08T07:26:27.963Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "默认规则外径与 HALF_UP 三位 CBM 正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e56e8a5c-b05a-40eb-8465-df122c0e1caa, 2b93dd38-5c36-41fc-a10d-5218faaac318", + "traceId": "bb67cb44dcff4da68e2687fa9e1a1296", + "evidence": "derivedRows=4", + "checkedAt": "2026-08-08T07:26:27.963Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "PUT 每行只发送约定7字段并整组保存", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e56e8a5c-b05a-40eb-8465-df122c0e1caa, 2b93dd38-5c36-41fc-a10d-5218faaac318", + "traceId": "bb67cb44dcff4da68e2687fa9e1a1296", + "evidence": "fields=boxType,innerLengthCm,innerWidthCm,innerHeightCm,edgeAdditionCm,remark,version", + "checkedAt": "2026-08-08T07:26:27.963Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "一次 PUT 保存四条三位小数规则", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b356b354-77c4-4820-a40d-12a4ca1d1421, cf9cbbb6-fc07-4d59-a9ad-dd041ded93bb", + "traceId": "c9e5b6ab4f91493081a53bab87f099e0", + "evidence": "rows=4", + "checkedAt": "2026-08-08T07:26:28.000Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "修改后四行版本+1且派生外径/CBM正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b356b354-77c4-4820-a40d-12a4ca1d1421, cf9cbbb6-fc07-4d59-a9ad-dd041ded93bb", + "traceId": "c9e5b6ab4f91493081a53bab87f099e0", + "evidence": "versions=1,1,1,1", + "checkedAt": "2026-08-08T07:26:28.000Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "旧 version 重放 PUT 返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991007828692994" + }, + "http": 200, + "code": "A0409", + "message": "箱规尺寸配置已被修改,请刷新后重试", + "requestId": "e23d4725-a8aa-4e35-9030-b1cc3bf00d25", + "traceId": "f3188759772d48cda49bb680161f26e0", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:26:28.023Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "冲突后重新查询四条规则", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b89e08b5-2bb2-42f6-b9e0-c96d0ff885b9, bef0ba33-9fe1-4c49-a9ff-1df799ca72a5", + "traceId": "bc24ff87d6e14f6eb96a7d58e4f41552", + "evidence": "", + "checkedAt": "2026-08-08T07:26:28.048Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "冲突请求未造成四行部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b89e08b5-2bb2-42f6-b9e0-c96d0ff885b9, bef0ba33-9fe1-4c49-a9ff-1df799ca72a5", + "traceId": "bc24ff87d6e14f6eb96a7d58e4f41552", + "evidence": "unchangedRows=4", + "checkedAt": "2026-08-08T07:26:28.048Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "恢复本轮修改前的四箱规配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "139d4427-335a-4a30-89a9-1ce8eb0028c8, cfe4ffa8-a8d7-44b6-ab48-7b1df908f97b", + "traceId": "1230eadbe7ad4b99add09cb725a74f09", + "evidence": "restore=original-values", + "checkedAt": "2026-08-08T07:26:28.088Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "尺寸规则恢复后回显与初始值一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "139d4427-335a-4a30-89a9-1ce8eb0028c8, cfe4ffa8-a8d7-44b6-ab48-7b1df908f97b", + "traceId": "1230eadbe7ad4b99add09cb725a74f09", + "evidence": "restoredRows=4", + "checkedAt": "2026-08-08T07:26:28.088Z" + }, + { + "module": "customers", + "scenario": null, + "name": "查询客户列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants?page=1&size=20&keyword=%E5%90%8E%E5%8F%B0%E5%AE%A2%E6%88%B7%E9%AA%8C%E6%94%B6-808072627117" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f8fd0703-4f6d-4326-8c27-6913ceb7b329, 59cc9e04-55e1-4716-be44-b493600c3ec6", + "traceId": "c7d1bf1cf6e74b69a06382f1c91ae266", + "evidence": "", + "checkedAt": "2026-08-08T07:26:28.133Z" + }, + { + "module": "customers", + "scenario": null, + "name": "列表包含新客户且字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants?page=1&size=20&keyword=%E5%90%8E%E5%8F%B0%E5%AE%A2%E6%88%B7%E9%AA%8C%E6%94%B6-808072627117" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f8fd0703-4f6d-4326-8c27-6913ceb7b329, 59cc9e04-55e1-4716-be44-b493600c3ec6", + "traceId": "c7d1bf1cf6e74b69a06382f1c91ae266", + "evidence": "found=true, missing=none", + "checkedAt": "2026-08-08T07:26:28.133Z" + }, + { + "module": "customers", + "scenario": null, + "name": "查询客户详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "24b9d84f-6260-4a53-a0a9-34750c29528a, 1e5046fb-95bd-4942-ab6d-406c2810584b", + "traceId": "bdde7b3442bc4ae4b45c2b7ee3a1a400", + "evidence": "", + "checkedAt": "2026-08-08T07:26:28.157Z" + }, + { + "module": "customers", + "scenario": null, + "name": "客户详情基本信息正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "24b9d84f-6260-4a53-a0a9-34750c29528a, 1e5046fb-95bd-4942-ab6d-406c2810584b", + "traceId": "bdde7b3442bc4ae4b45c2b7ee3a1a400", + "evidence": "tenantId=2085991007828692994", + "checkedAt": "2026-08-08T07:26:28.157Z" + }, + { + "module": "customers", + "scenario": null, + "name": "编辑客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1e88b1e3-8b81-4676-b772-c9f9caa762f8, 1d8b366d-4610-4b26-ad03-2a48202f49ea", + "traceId": "22fa19212c454c8195d1aa5f6e738f6f", + "evidence": "", + "checkedAt": "2026-08-08T07:26:28.195Z" + }, + { + "module": "customers", + "scenario": null, + "name": "客户编辑正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1e88b1e3-8b81-4676-b772-c9f9caa762f8, 1d8b366d-4610-4b26-ad03-2a48202f49ea", + "traceId": "22fa19212c454c8195d1aa5f6e738f6f", + "evidence": "tenantId=2085991007828692994", + "checkedAt": "2026-08-08T07:26:28.195Z" + }, + { + "module": "customers", + "scenario": null, + "name": "回查客户编辑结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1f6bd284-0682-4054-864d-63574ab1a068, a8994393-40a2-4629-93aa-1c7eee3037e2", + "traceId": "613e319a68d840b3a8023ffbb31fb6aa", + "evidence": "", + "checkedAt": "2026-08-08T07:26:28.214Z" + }, + { + "module": "customers", + "scenario": null, + "name": "客户编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1f6bd284-0682-4054-864d-63574ab1a068, a8994393-40a2-4629-93aa-1c7eee3037e2", + "traceId": "613e319a68d840b3a8023ffbb31fb6aa", + "evidence": "tenantId=2085991007828692994", + "checkedAt": "2026-08-08T07:26:28.214Z" + }, + { + "module": "customers", + "scenario": null, + "name": "业务概况查询资质", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991007828692994/qualifications" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "aaf396d9-f62f-4b3a-addd-d85caa585896, 395dc56b-fd2a-432d-8b82-b7f7f8bbde7d", + "traceId": "22702057ae4f4a08be4839506e8911ce", + "evidence": "", + "checkedAt": "2026-08-08T07:26:28.249Z" + }, + { + "module": "customers", + "scenario": null, + "name": "资质概况结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991007828692994/qualifications" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "aaf396d9-f62f-4b3a-addd-d85caa585896, 395dc56b-fd2a-432d-8b82-b7f7f8bbde7d", + "traceId": "22702057ae4f4a08be4839506e8911ce", + "evidence": "count=0", + "checkedAt": "2026-08-08T07:26:28.249Z" + }, + { + "module": "customers", + "scenario": null, + "name": "业务概况查询成员", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991007828692994/members" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7b76cf6f-cd00-4c77-b312-ef3faa48fc91, d405f7df-3bb2-408a-ad37-0ef1d288c949", + "traceId": "00d143be3a194c32b7fa84dfb0e15e4d", + "evidence": "", + "checkedAt": "2026-08-08T07:26:28.285Z" + }, + { + "module": "customers", + "scenario": "customer-owner-provisioning", + "name": "联系电话账号是企业管理员", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991007828692994/members" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7b76cf6f-cd00-4c77-b312-ef3faa48fc91, d405f7df-3bb2-408a-ad37-0ef1d288c949", + "traceId": "00d143be3a194c32b7fa84dfb0e15e4d", + "evidence": "ownerFound=true, matches=true", + "checkedAt": "2026-08-08T07:26:28.285Z" + }, + { + "module": "customers", + "scenario": null, + "name": "业务概况查询运单数量", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/tenant-counts?tenantIds=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6910eede-ffad-4a33-9710-923b53691dff, cf6d6870-07dd-46bb-817e-1e7498462aba", + "traceId": "305a179f56bc420fbe65ce067287b71c", + "evidence": "", + "checkedAt": "2026-08-08T07:26:28.311Z" + }, + { + "module": "customers", + "scenario": null, + "name": "业务概况返回当前客户运单数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/tenant-counts?tenantIds=2085991007828692994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6910eede-ffad-4a33-9710-923b53691dff, cf6d6870-07dd-46bb-817e-1e7498462aba", + "traceId": "305a179f56bc420fbe65ce067287b71c", + "evidence": "orderCount=0", + "checkedAt": "2026-08-08T07:26:28.311Z" + }, + { + "module": "customers", + "scenario": null, + "name": "查询客户运单记录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=2085991007828692994&page=1&size=10" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "306aa732-b718-4dd9-859c-0c8fb96f102f, 5f58da22-0077-486e-b6a3-723b59e76ea5", + "traceId": "bfcce4dbe8d14ea6a34ffb86b550d6f3", + "evidence": "", + "checkedAt": "2026-08-08T07:26:28.343Z" + }, + { + "module": "customers", + "scenario": null, + "name": "运单记录分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=2085991007828692994&page=1&size=10" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "306aa732-b718-4dd9-859c-0c8fb96f102f, 5f58da22-0077-486e-b6a3-723b59e76ea5", + "traceId": "bfcce4dbe8d14ea6a34ffb86b550d6f3", + "evidence": "records=0, total=0", + "checkedAt": "2026-08-08T07:26:28.344Z" + }, + { + "module": "customers", + "scenario": "customer-draft-archive", + "name": "归档测试客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants/2085991007828692994/archive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8d80498e-b57a-48e7-9cc5-964a1a5f30e2, b2613791-03cf-4d24-a058-7594fec365db", + "traceId": "973363706300426ea829a5bcd3f8e33d", + "evidence": "tenantId=2085991007828692994", + "checkedAt": "2026-08-08T07:26:28.456Z" + }, + { + "module": "customers", + "scenario": "customer-draft-archive", + "name": "测试客户归档后处于停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants/2085991007828692994/archive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8d80498e-b57a-48e7-9cc5-964a1a5f30e2, b2613791-03cf-4d24-a058-7594fec365db", + "traceId": "973363706300426ea829a5bcd3f8e33d", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:26:28.456Z" + }, + { + "module": "overseas-storage-fees", + "scenario": null, + "name": "检查测试联系电话可用性", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/contact-phone-availability?contactPhone=16173988458" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7dcd1ce8-7789-4104-a4d4-e2f903a1cb0f, 59573e9f-6708-44de-9702-4aaa8fb0c2b1", + "traceId": "2bb15ebda8e04f3590d0b7b3ca9df844", + "evidence": "attempt=1", + "checkedAt": "2026-08-08T07:26:28.488Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "创建海外仓费用隔离客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "68f22cff-9048-444b-ba48-115749eb5e84, 7068ee78-c436-471e-9b3a-7b62ef356c61", + "traceId": "26070ec7936044008db6aaa07ffac20f", + "evidence": "", + "checkedAt": "2026-08-08T07:26:28.871Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "海外仓费用隔离客户创建并带 marker", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "68f22cff-9048-444b-ba48-115749eb5e84, 7068ee78-c436-471e-9b3a-7b62ef356c61", + "traceId": "26070ec7936044008db6aaa07ffac20f", + "evidence": "tenantId=2085991011792310274", + "checkedAt": "2026-08-08T07:26:28.871Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "查询客户海外仓费用配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2765d19f-39ea-4ff5-bb52-12f7bc80d54c, e174c9b0-aa03-4ee8-97bd-ae5b8e0f7196", + "traceId": "63293fe4e7454efcad543f4adbe3812f", + "evidence": "tenantId=2085991011792310274", + "checkedAt": "2026-08-08T07:26:28.903Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "客户费用配置身份、默认 USD 与9档结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2765d19f-39ea-4ff5-bb52-12f7bc80d54c, e174c9b0-aa03-4ee8-97bd-ae5b8e0f7196", + "traceId": "63293fe4e7454efcad543f4adbe3812f", + "evidence": "ruleId=2085991011877699585, customerId=2085991011792310274, currency=USD, tiers=9", + "checkedAt": "2026-08-08T07:26:28.904Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "按客户查询海外仓费用规则", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/overseas-storage-fees?page=1&size=10&customerId=2085991011792310274" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ab60b9cb-48e1-4237-b7b4-77c35f8e50b8, 0255ed4c-e3a6-4634-899f-abbddc55af6b", + "traceId": "127d0460b5ca45f9bcb363160d8adaa4", + "evidence": "tenantId=2085991011792310274", + "checkedAt": "2026-08-08T07:26:28.934Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "每个客户恰好一条规则且规则内恰好9档", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/overseas-storage-fees?page=1&size=10&customerId=2085991011792310274" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ab60b9cb-48e1-4237-b7b4-77c35f8e50b8, 0255ed4c-e3a6-4634-899f-abbddc55af6b", + "traceId": "127d0460b5ca45f9bcb363160d8adaa4", + "evidence": "total=1, records=1, tiers=9", + "checkedAt": "2026-08-08T07:26:28.934Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "请求体客户 ID 与路径不一致时安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "客户ID与路径不一致", + "requestId": "91d132bf-a2a8-4bfd-a31a-3cc9219dd5e2", + "traceId": "ac86d35f70f143d4ab4b1296ee649e43", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:28.962Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "非法费用类型安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "客户费用必须包含仓租5档和退货仓储费4档", + "requestId": "94d8de13-4834-4047-81f2-e0b1efb18437", + "traceId": "90e9ca37e6504ae1a2fd28991af33cce", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:28.993Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "费用类型与计费单位不匹配安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "费用类型和计费单位不匹配", + "requestId": "460c48cd-53e9-4f98-804e-3a1d855e9988", + "traceId": "87f4c4f9f3e44090b1b4a9b1815bfc6d", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:29.031Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "阶梯区间重叠安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "阶梯必须从第1天开始且连续", + "requestId": "8a09e071-e906-4764-8832-233327a05968", + "traceId": "6f120debdd2f444eb1b81ed58740db02", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:29.059Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "阶梯区间断档安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "阶梯必须从第1天开始且连续", + "requestId": "1299a54f-2bd0-4b51-b524-d2ba39473e71", + "traceId": "ed95b3a3bedc4d4fbbe7b18714c7b4a2", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:29.085Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "非9档整组提交安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "客户费用必须包含仓租5档和退货仓储费4档", + "requestId": "31a112a7-1c74-4c42-9b0a-b9a86b9e110b", + "traceId": "8d2a53e7a0b549f395c21a468d0ff609", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:29.128Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "负向请求后回查客户费用配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a3e6a67e-e6e6-4b0a-80fe-74a572281721, 7bbb1775-ea4a-4899-a5a1-209f7128a9c6", + "traceId": "3ce0566a46504e839e960e662e5260bd", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.166Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "所有非法整组请求均未造成部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a3e6a67e-e6e6-4b0a-80fe-74a572281721, 7bbb1775-ea4a-4899-a5a1-209f7128a9c6", + "traceId": "3ce0566a46504e839e960e662e5260bd", + "evidence": "version=0, tiers=9", + "checkedAt": "2026-08-08T07:26:29.166Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "整组修改客户海外仓费用", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0f354c77-45b7-43e5-95f7-3c2e76c31d50, ec154ee3-64d3-4053-bc9e-be4e16bb8ee0", + "traceId": "898989efab214c58b349492253485744", + "evidence": "tenantId=2085991011792310274, tiers=9", + "checkedAt": "2026-08-08T07:26:29.213Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "回查整组修改后的客户费用", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8adac86b-f862-4462-a254-89fb85879347, 8f6ff64c-2872-476c-8967-70362ed0a5df", + "traceId": "3f49b79968204c56b434de8e321e402d", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.241Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "修改后币种、价格、9档及版本整体回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8adac86b-f862-4462-a254-89fb85879347, 8f6ff64c-2872-476c-8967-70362ed0a5df", + "traceId": "3f49b79968204c56b434de8e321e402d", + "evidence": "currency=EUR, version=1, tiers=9", + "checkedAt": "2026-08-08T07:26:29.242Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "编辑后再次按客户查询唯一规则", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/overseas-storage-fees?page=1&size=10&customerId=2085991011792310274" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9a4a92ee-029a-46ab-b7fd-e9317034f1db, 173fed15-9be4-46a4-a973-e26c3ec9a299", + "traceId": "d5040069a23542909e7662ac1d0378f2", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.273Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "重复初始化结果保持幂等且编辑值未被覆盖", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/overseas-storage-fees?page=1&size=10&customerId=2085991011792310274" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9a4a92ee-029a-46ab-b7fd-e9317034f1db, 173fed15-9be4-46a4-a973-e26c3ec9a299", + "traceId": "d5040069a23542909e7662ac1d0378f2", + "evidence": "total=1, ruleId=2085991011877699585, version=1", + "checkedAt": "2026-08-08T07:26:29.274Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "旧 version 整组保存返回并发冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "A0409", + "message": "费用配置已被修改,请刷新后重试", + "requestId": "fce3197e-2afa-4a2e-8592-0f4b2ffc3d3c", + "traceId": "47c166a88e02414a9704238690c3ef23", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:26:29.307Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "冲突后回查费用配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "582b98ee-3dab-4c69-bc54-c662e9f81582, 3449bc08-2173-4ecc-8789-fd6a3641247b", + "traceId": "1afab16279a04dbfaee0fab4c64ae92f", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.337Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "冲突未造成部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "582b98ee-3dab-4c69-bc54-c662e9f81582, 3449bc08-2173-4ecc-8789-fd6a3641247b", + "traceId": "1afab16279a04dbfaee0fab4c64ae92f", + "evidence": "version=1, unchanged=true", + "checkedAt": "2026-08-08T07:26:29.337Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "恢复本轮客户费用原始配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "45b4a447-599b-491a-9127-27607cc54d51, 8f3c5da4-5309-4393-897d-0b6401206bf9", + "traceId": "1c40ca4edbd54f8f9f4fc22ed38661d3", + "evidence": "restore=initial", + "checkedAt": "2026-08-08T07:26:29.383Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "回查恢复后的客户费用", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "09003e94-14e8-4cf6-9039-afffd8e4f71c, b41a23e1-d2cb-4472-802a-385f759b6b6a", + "traceId": "bb959c6663ca4a6b905ce14d881412f3", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.415Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "恢复后9档、USD、免费档和无上限档一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "09003e94-14e8-4cf6-9039-afffd8e4f71c, b41a23e1-d2cb-4472-802a-385f759b6b6a", + "traceId": "bb959c6663ca4a6b905ce14d881412f3", + "evidence": "currency=USD, version=2, tiers=9", + "checkedAt": "2026-08-08T07:26:29.415Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "错误客户 ID 查询安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/999999999999999999/overseas-storage-fees" + }, + "http": 200, + "code": "A0404", + "message": "海外仓费用不存在", + "requestId": "df50d380-f077-4fb3-b2a6-ace4fa693585", + "traceId": "29d5838ad20349d8a58bf7b8a5815eb9", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:26:29.444Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "清理费用隔离客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/archive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c0d67461-c317-4916-8b95-2397c5d1c16c, b7c8d0a4-18cf-4073-9a03-3b22eef45982", + "traceId": "8e28097bd8954916b42fb2741ab16c96", + "evidence": "tenantId=2085991011792310274", + "checkedAt": "2026-08-08T07:26:29.551Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "费用隔离客户清理后停用", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants/2085991011792310274/archive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c0d67461-c317-4916-8b95-2397c5d1c16c, b7c8d0a4-18cf-4073-9a03-3b22eef45982", + "traceId": "8e28097bd8954916b42fb2741ab16c96", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:26:29.551Z" + }, + { + "module": "system", + "scenario": null, + "name": "查询菜单权限资源", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "00ae3b3c-ad6a-4c94-88b4-f9400f00419d, 5cc28479-421f-464b-9052-e558d9230224", + "traceId": "d0d97b511e9642d88b01664baf91b248", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.606Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限资源返回数组", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "00ae3b3c-ad6a-4c94-88b4-f9400f00419d, 5cc28479-421f-464b-9052-e558d9230224", + "traceId": "d0d97b511e9642d88b01664baf91b248", + "evidence": "count=151", + "checkedAt": "2026-08-08T07:26:29.606Z" + }, + { + "module": "system", + "scenario": null, + "name": "创建自定义权限资源", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4f472853-d85c-4e10-8e1a-b8fb28f94c26, 05415d20-02c1-4ea0-b24a-b31e30a71851", + "traceId": "0a1f1336974c46c5ac09b3c03e68f095", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.636Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限创建字段正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4f472853-d85c-4e10-8e1a-b8fb28f94c26, 05415d20-02c1-4ea0-b24a-b31e30a71851", + "traceId": "0a1f1336974c46c5ac09b3c03e68f095", + "evidence": "permissionId=2085991016481542146", + "checkedAt": "2026-08-08T07:26:29.636Z" + }, + { + "module": "system", + "scenario": null, + "name": "编辑自定义权限资源", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085991016481542146" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c5eb9b3c-4268-4954-b551-3764c0e240c2, ea067dfb-45dc-4ab0-b68d-e3a1e6dcba99", + "traceId": "42a55ccd06044c0794cc6c733df7bda0", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.665Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限编辑正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085991016481542146" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c5eb9b3c-4268-4954-b551-3764c0e240c2, ea067dfb-45dc-4ab0-b68d-e3a1e6dcba99", + "traceId": "42a55ccd06044c0794cc6c733df7bda0", + "evidence": "permissionId=2085991016481542146", + "checkedAt": "2026-08-08T07:26:29.665Z" + }, + { + "module": "system", + "scenario": null, + "name": "停用自定义权限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085991016481542146/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9300d2c5-e179-4310-b2f2-730e87bf186e, 7faa932a-2965-4625-b1c7-a34b6c098bf3", + "traceId": "51063d5f2bc140649471cae7965a453a", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.697Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限状态回显 DISABLED", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085991016481542146/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9300d2c5-e179-4310-b2f2-730e87bf186e, 7faa932a-2965-4625-b1c7-a34b6c098bf3", + "traceId": "51063d5f2bc140649471cae7965a453a", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:26:29.697Z" + }, + { + "module": "system", + "scenario": null, + "name": "启用自定义权限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085991016481542146/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d0d94fde-7dfb-4ab3-88de-ac6aed4acda4, 523bcfae-8330-4bcd-b486-d36bfe0d7cd8", + "traceId": "57c5822b49bc4476a9cf93faf0e2f24e", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.727Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限状态回显 ACTIVE", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085991016481542146/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d0d94fde-7dfb-4ab3-88de-ac6aed4acda4, 523bcfae-8330-4bcd-b486-d36bfe0d7cd8", + "traceId": "57c5822b49bc4476a9cf93faf0e2f24e", + "evidence": "status=ACTIVE", + "checkedAt": "2026-08-08T07:26:29.727Z" + }, + { + "module": "system", + "scenario": null, + "name": "创建平台自定义角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "09990c6a-80b2-4ab3-b5e3-5b5532b1c744, 11c0f7f1-ab80-493d-9068-be697e2b9490", + "traceId": "86b3bef39a0841d3a09006d35adddb5e", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.762Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色创建字段正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "09990c6a-80b2-4ab3-b5e3-5b5532b1c744, 11c0f7f1-ab80-493d-9068-be697e2b9490", + "traceId": "86b3bef39a0841d3a09006d35adddb5e", + "evidence": "roleId=2085991016993247233", + "checkedAt": "2026-08-08T07:26:29.762Z" + }, + { + "module": "system", + "scenario": null, + "name": "编辑平台自定义角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991016993247233" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9efbd7ad-2b38-46ba-96f6-8d6442388cfc, a2d36b64-7dc6-4a7b-9d32-36b7297d2ed4", + "traceId": "a31236f7c0444748aed4f64279d97e3f", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.807Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色编辑正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991016993247233" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9efbd7ad-2b38-46ba-96f6-8d6442388cfc, a2d36b64-7dc6-4a7b-9d32-36b7297d2ed4", + "traceId": "a31236f7c0444748aed4f64279d97e3f", + "evidence": "roleId=2085991016993247233", + "checkedAt": "2026-08-08T07:26:29.808Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色全量保存权限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8ebbae97-85a8-4e7e-bc9c-e77812d17e30, af6eda2c-4cc1-4806-af44-cb346b6b8c7b", + "traceId": "5aa0494190044320aea64b918673e2ba", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.839Z" + }, + { + "module": "system", + "scenario": null, + "name": "回查平台角色列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ff3a020a-e89e-4223-bd8e-d8f79865786a, 821c1e75-2816-4043-b30c-45e8930118d5", + "traceId": "9f179207e25940639ea36be8ba0d7efa", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.893Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色权限 ID 正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ff3a020a-e89e-4223-bd8e-d8f79865786a, 821c1e75-2816-4043-b30c-45e8930118d5", + "traceId": "9f179207e25940639ea36be8ba0d7efa", + "evidence": "permissionIds=2085991016481542146", + "checkedAt": "2026-08-08T07:26:29.893Z" + }, + { + "module": "system", + "scenario": null, + "name": "停用自定义角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991016993247233/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "001c10d8-8322-4b41-9a58-c2a8109ed6e6, d3829f97-5899-4ec2-8022-189205343d63", + "traceId": "0f777cf8dfe945caa622ca159fc6ffb1", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.931Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色状态回显 DISABLED", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991016993247233/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "001c10d8-8322-4b41-9a58-c2a8109ed6e6, d3829f97-5899-4ec2-8022-189205343d63", + "traceId": "0f777cf8dfe945caa622ca159fc6ffb1", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:26:29.931Z" + }, + { + "module": "system", + "scenario": null, + "name": "启用自定义角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991016993247233/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6dec8d58-2c9b-41bd-bdc5-bfac1aec63a9, 9aea8bae-d263-4392-8570-b7149b0fdf9e", + "traceId": "18ab22d1d60d42268a3ce7b1db18ecea", + "evidence": "", + "checkedAt": "2026-08-08T07:26:29.978Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色状态回显 ACTIVE", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991016993247233/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6dec8d58-2c9b-41bd-bdc5-bfac1aec63a9, 9aea8bae-d263-4392-8570-b7149b0fdf9e", + "traceId": "18ab22d1d60d42268a3ce7b1db18ecea", + "evidence": "status=ACTIVE", + "checkedAt": "2026-08-08T07:26:29.978Z" + }, + { + "module": "system", + "scenario": null, + "name": "查询内部用户可选平台角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users/options" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "653d4655-e69f-4603-be39-69b8412fe8f4, db36e5b5-8d9b-4499-911b-f247268599f1", + "traceId": "c937d40717914c35aa8dbb21822a87ab", + "evidence": "", + "checkedAt": "2026-08-08T07:26:30.017Z" + }, + { + "module": "system", + "scenario": null, + "name": "用户选项包含平台与测试角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users/options" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "653d4655-e69f-4603-be39-69b8412fe8f4, db36e5b5-8d9b-4499-911b-f247268599f1", + "traceId": "c937d40717914c35aa8dbb21822a87ab", + "evidence": "tenants=1, roles=19", + "checkedAt": "2026-08-08T07:26:30.017Z" + }, + { + "module": "system", + "scenario": null, + "name": "检查测试联系电话可用性", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/contact-phone-availability?contactPhone=16173990017" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f76acafa-3e31-49b7-893f-7daf5ee33008, 6999dbcf-277e-4601-8472-fdd37439e8c9", + "traceId": "1609ca08ff714d099cb5ecee77004086", + "evidence": "attempt=1", + "checkedAt": "2026-08-08T07:26:30.051Z" + }, + { + "module": "system", + "scenario": null, + "name": "创建平台内部用户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/users" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7372ac99-c483-4014-b654-f39450b4c346, c72fa6d2-95e5-4757-a41f-770de8b3345a", + "traceId": "a9af6b3458464844bd6fd470a6db57f5", + "evidence": "", + "checkedAt": "2026-08-08T07:26:30.400Z" + }, + { + "module": "system", + "scenario": null, + "name": "内部用户账号、平台范围和角色正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/users" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7372ac99-c483-4014-b654-f39450b4c346, c72fa6d2-95e5-4757-a41f-770de8b3345a", + "traceId": "a9af6b3458464844bd6fd470a6db57f5", + "evidence": "membershipId=2085991018335424515", + "checkedAt": "2026-08-08T07:26:30.400Z" + }, + { + "module": "system", + "scenario": null, + "name": "按账号查询平台内部用户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users?page=1&size=20&keyword=admin_accept_808072627117" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b4210767-6b14-4839-b3dd-7c77b84d8602, 7c389dc2-30f7-49c3-9b27-3eeebc499f84", + "traceId": "0680f0784f5f4a0aa1cbd4b87cd7a9d0", + "evidence": "", + "checkedAt": "2026-08-08T07:26:30.435Z" + }, + { + "module": "system", + "scenario": null, + "name": "用户列表包含新账号且字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users?page=1&size=20&keyword=admin_accept_808072627117" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b4210767-6b14-4839-b3dd-7c77b84d8602, 7c389dc2-30f7-49c3-9b27-3eeebc499f84", + "traceId": "0680f0784f5f4a0aa1cbd4b87cd7a9d0", + "evidence": "records=1, missing=none, lastLoginAt=omitted", + "checkedAt": "2026-08-08T07:26:30.436Z" + }, + { + "module": "system", + "scenario": null, + "name": "编辑平台内部用户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085991018335424515" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "da90b6d2-dd45-46cf-b232-b25ed2a016c6, ca785fdf-aa54-41e6-aecc-7f516b85828f", + "traceId": "5fa30c5a861c4e9f84ae9fa60c2ff30f", + "evidence": "", + "checkedAt": "2026-08-08T07:26:30.550Z" + }, + { + "module": "system", + "scenario": null, + "name": "用户编辑正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085991018335424515" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "da90b6d2-dd45-46cf-b232-b25ed2a016c6, ca785fdf-aa54-41e6-aecc-7f516b85828f", + "traceId": "5fa30c5a861c4e9f84ae9fa60c2ff30f", + "evidence": "membershipId=2085991018335424515", + "checkedAt": "2026-08-08T07:26:30.550Z" + }, + { + "module": "system", + "scenario": null, + "name": "新建内部用户可使用初始密码登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7f28b5f5-f118-487a-af11-39f4c7f3d55f, de682c73-35ab-41ae-8f40-fb7ef1691af0", + "traceId": "bfc590bed04b40ea81284ad212cd253f", + "evidence": "username=admin_accept_808072627117", + "checkedAt": "2026-08-08T07:26:30.891Z" + }, + { + "module": "system", + "scenario": null, + "name": "重置平台内部用户密码", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085991018335424515/password" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3da76c6e-989f-4026-87b9-5d12035f7907, 09af8d83-15e7-44a3-9ea3-7435b21e4b9a", + "traceId": "4e8e9788a31b4beea74ddf04307779f5", + "evidence": "", + "checkedAt": "2026-08-08T07:26:31.285Z" + }, + { + "module": "system", + "scenario": null, + "name": "内部用户使用重置密码登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cc367052-dffc-4221-a8ce-684172db828e, e292ae14-8313-4f0e-82b9-b22ba9fcc43d", + "traceId": "2288a897e4d246aa945d6e9903f16f7d", + "evidence": "username=admin_accept_808072627117", + "checkedAt": "2026-08-08T07:26:31.620Z" + }, + { + "module": "system", + "scenario": null, + "name": "停用平台内部用户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085991018335424515/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e4553b4e-e527-4d66-acab-b7f3f627ecbd, d7d6adf9-d9c2-4af0-abed-538e073bbe8a", + "traceId": "da60164ed42948afb9e45a995038058f", + "evidence": "", + "checkedAt": "2026-08-08T07:26:31.731Z" + }, + { + "module": "system", + "scenario": null, + "name": "内部用户停用状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085991018335424515/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e4553b4e-e527-4d66-acab-b7f3f627ecbd, d7d6adf9-d9c2-4af0-abed-538e073bbe8a", + "traceId": "da60164ed42948afb9e45a995038058f", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:26:31.732Z" + }, + { + "module": "system", + "scenario": null, + "name": "停用用户禁止登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "A0403", + "message": "账号已禁用", + "requestId": "38e18f85-40e4-4c01-91d4-fb7804dfa9a3", + "traceId": "72833b7a06254e0ebf4e34a9f70f7fed", + "evidence": "HTTP=200, code=A0403", + "checkedAt": "2026-08-08T07:26:31.760Z" + }, + { + "module": "system", + "scenario": null, + "name": "清空测试角色权限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "321c239f-b979-4d82-b6db-e6dd66c7d5fb, 063fbdc2-d046-4bfa-b089-a2494338775d", + "traceId": "37a52d16bd0e44298df30ea2bcf29df0", + "evidence": "", + "checkedAt": "2026-08-08T07:26:31.867Z" + }, + { + "module": "system", + "scenario": "system-role-protection", + "name": "已分配成员的角色禁止删除", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/iam/roles/2085991016993247233" + }, + "http": 200, + "code": "A0409", + "message": "角色已分配给成员,不能删除", + "requestId": "eb3b8667-3669-4ddb-8672-7c9020f3e15d", + "traceId": "cf34c26a7c6c4e0787d66cca67f9f965", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:26:31.901Z" + }, + { + "module": "system", + "scenario": null, + "name": "清理时停用测试角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991016993247233/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8bd4242c-93fe-4de9-8f5a-0aa3f40e7344, 83b822f1-1dd3-4606-8dad-72cb2ca0858e", + "traceId": "bdd17ed7e5fb407597963165adf102e9", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.012Z" + }, + { + "module": "system", + "scenario": null, + "name": "保留测试角色处于停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991016993247233/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8bd4242c-93fe-4de9-8f5a-0aa3f40e7344, 83b822f1-1dd3-4606-8dad-72cb2ca0858e", + "traceId": "bdd17ed7e5fb407597963165adf102e9", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:26:32.012Z" + }, + { + "module": "system", + "scenario": null, + "name": "删除临时权限资源", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/iam/permissions/2085991016481542146" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "277eb737-4953-447a-92d8-49c4bf8b2a7a, 54ffa32e-621e-421b-b7d8-4be797cf9003", + "traceId": "735142a795414abcbe14e15ea77acd2e", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.044Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询平台仓库列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c4fbb5d3-73ae-4ca1-82c5-b2d6a0c9047b, b82b5391-306e-4b87-9ebe-ee32222de74c", + "traceId": "f2d8dffb086249129d7cc87b33837348", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.084Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库列表分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c4fbb5d3-73ae-4ca1-82c5-b2d6a0c9047b, b82b5391-306e-4b87-9ebe-ee32222de74c", + "traceId": "f2d8dffb086249129d7cc87b33837348", + "evidence": "total=285", + "checkedAt": "2026-08-08T07:26:32.085Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建平台公共仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ff3cfa29-1a87-47db-bc70-c35dafd9e01e, 93916f5f-47b1-499f-8f61-2a0be504d7a1", + "traceId": "611a0b09c55148369e4d6245972f9ff0", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.116Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库创建返回字符串兼容 ID", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ff3cfa29-1a87-47db-bc70-c35dafd9e01e, 93916f5f-47b1-499f-8f61-2a0be504d7a1", + "traceId": "611a0b09c55148369e4d6245972f9ff0", + "evidence": "warehouseId=2085991026868142082", + "checkedAt": "2026-08-08T07:26:32.116Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询平台仓库详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085991026868142082?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e68bb2b1-6bf3-488f-a625-aa7efd77159a, 933d8db4-d5f0-45b9-8a6f-fc36c146af74", + "traceId": "3d3b1cf8fec74c4b8e3118ec8a360d2e", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.147Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库详情、地址和能力正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085991026868142082?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e68bb2b1-6bf3-488f-a625-aa7efd77159a, 933d8db4-d5f0-45b9-8a6f-fc36c146af74", + "traceId": "3d3b1cf8fec74c4b8e3118ec8a360d2e", + "evidence": "addresses=1, capabilities=1", + "checkedAt": "2026-08-08T07:26:32.147Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑平台仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/warehouse-admin/2085991026868142082?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0f0ccd52-2b51-4bad-b769-91a961aad983, 85a441d7-8760-46b2-b546-33c8c3462703", + "traceId": "18afdb2a61614c6d995a8eb0f5eb0ee7", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.185Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的平台仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085991026868142082?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "025837c4-e6a1-4b0a-9fe6-9ab469887da5, 49fd24ec-f1e7-401d-8bf3-219bbcccfc18", + "traceId": "a94807e039834519b47bd8d5def1b7dd", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.211Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085991026868142082?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "025837c4-e6a1-4b0a-9fe6-9ab469887da5, 49fd24ec-f1e7-401d-8bf3-219bbcccfc18", + "traceId": "a94807e039834519b47bd8d5def1b7dd", + "evidence": "warehouseId=2085991026868142082", + "checkedAt": "2026-08-08T07:26:32.211Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建仓库库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/locations?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "150c301f-1f99-45bc-8954-e3906a705f5a, 6f51ab88-000d-4a0c-9cba-7b23407f939f", + "traceId": "4f6f99e9dbaa48dba40a8d5e4f3d9a6d", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.246Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询库位详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991027425984514?tenantId=0&warehouseId=2085991026868142082" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4764314c-4158-4664-b43a-139b964017b3, 627c494d-490a-43e9-ac6b-9f4f83c19c7f", + "traceId": "4aa790e9a94845eea82faa55e96b1370", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.268Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "库位详情关联正确仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991027425984514?tenantId=0&warehouseId=2085991026868142082" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4764314c-4158-4664-b43a-139b964017b3, 627c494d-490a-43e9-ac6b-9f4f83c19c7f", + "traceId": "4aa790e9a94845eea82faa55e96b1370", + "evidence": "locationId=2085991027425984514", + "checkedAt": "2026-08-08T07:26:32.268Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085991027425984514?tenantId=0&warehouseId=2085991026868142082" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "29748bd4-7311-469e-89fc-5caed319289f, 9495158d-080a-4513-bb03-618fcd6bd340", + "traceId": "a66902dde5de4c0e96f5290c6067c06b", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.310Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991027425984514?tenantId=0&warehouseId=2085991026868142082" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f9732590-6a70-44c7-a0d5-3b0ae9ea4d49, 4cfaecca-35e2-41b6-9e5f-c3dc8780dea3", + "traceId": "c5cbd4298e8942c98dd83f8b7ed17adb", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.334Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "库位编辑与版本递增正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991027425984514?tenantId=0&warehouseId=2085991026868142082" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f9732590-6a70-44c7-a0d5-3b0ae9ea4d49, 4cfaecca-35e2-41b6-9e5f-c3dc8780dea3", + "traceId": "c5cbd4298e8942c98dd83f8b7ed17adb", + "evidence": "version=1", + "checkedAt": "2026-08-08T07:26:32.334Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/locations/2085991027425984514/status?tenantId=0&warehouseId=2085991026868142082" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e02e38c3-49e3-4271-8053-4478e6dc7f47, a30a3821-512a-46cb-bef5-31c87006d963", + "traceId": "50d764bdce31401193b9f43f0200b710", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.373Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "删除未占用测试库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/locations/2085991027425984514?tenantId=0&warehouseId=2085991026868142082&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e89cbfad-6c08-4763-8c4f-174b56a4612d, 3b5c9423-dd04-4698-a957-be257269fcdc", + "traceId": "00b16fed16ee4824a9db1e647c2eef67", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.419Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建仓库托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/pallets?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7a01b543-2f1e-453e-b0c6-8ac2f4df065b, d9bde3ca-7766-4bd1-8323-5aab86ebc85a", + "traceId": "91a02bc97fdd4d079aede918c4609ced", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.450Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询托盘详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085991028277428226?tenantId=0&warehouseId=2085991026868142082" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1633fe38-d39f-4916-812d-4630983fc90e, 20d8b6ca-e412-4dea-a6a3-3c9d9cbbda40", + "traceId": "e468e8ae94334c428934dfbe4d23f9d8", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.471Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "托盘详情关联正确仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085991028277428226?tenantId=0&warehouseId=2085991026868142082" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1633fe38-d39f-4916-812d-4630983fc90e, 20d8b6ca-e412-4dea-a6a3-3c9d9cbbda40", + "traceId": "e468e8ae94334c428934dfbe4d23f9d8", + "evidence": "palletId=2085991028277428226", + "checkedAt": "2026-08-08T07:26:32.471Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/pallets/2085991028277428226?tenantId=0&warehouseId=2085991026868142082" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "89fe3dd5-02ef-4f95-8bf6-07266a94cd5a, b44853a1-a315-4221-a021-dd5b9ca713a9", + "traceId": "e0a403efd30743a0a3cfd1aa9972b24a", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.514Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085991028277428226?tenantId=0&warehouseId=2085991026868142082" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "eb2ca622-b03f-4e8f-98b1-c1edf10a3bda, 69b98856-f09b-41b6-9d8f-7412ac0f52f2", + "traceId": "487c932fceb4485883001aaa6dfeb135", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.552Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "托盘编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085991028277428226?tenantId=0&warehouseId=2085991026868142082" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "eb2ca622-b03f-4e8f-98b1-c1edf10a3bda, 69b98856-f09b-41b6-9d8f-7412ac0f52f2", + "traceId": "487c932fceb4485883001aaa6dfeb135", + "evidence": "palletId=2085991028277428226", + "checkedAt": "2026-08-08T07:26:32.552Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "删除未使用测试托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/pallets/2085991028277428226?tenantId=0&warehouseId=2085991026868142082" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1464ccdd-d618-4676-b0b9-8e045e88baef, e588bc64-182c-4830-b6bd-75ca35e6d24c", + "traceId": "05976960300145a5bab5dbd2810b0e9f", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.589Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f6c3a631-bf09-4fe4-98d0-4456753319d1, 93c16a17-c697-4718-93da-829f6af40d1f", + "traceId": "4b61b78b1b6446e68833581da0154098", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.622Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询快递公司详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/2085991029007237121?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2218a2a9-ed8e-4d64-8ceb-62e14267adf2, 4e640b79-d990-4390-8d63-66815f504be4", + "traceId": "e69af6342d2c45d5837603d4503c0b35", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.646Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司详情正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/2085991029007237121?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2218a2a9-ed8e-4d64-8ceb-62e14267adf2, 4e640b79-d990-4390-8d63-66815f504be4", + "traceId": "e69af6342d2c45d5837603d4503c0b35", + "evidence": "expressId=2085991029007237121", + "checkedAt": "2026-08-08T07:26:32.646Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/express-companies/2085991029007237121?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "755cd36a-0be9-4e2a-9cb9-7226a1225d32, d9b05340-0014-4ef5-abaa-8a4b9c732a10", + "traceId": "cca425b142fa4ef1be819bc15f5b17f0", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.685Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/express-companies/2085991029007237121/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "95e2433f-2244-4af4-9797-a5e403c83b2e, 60620a1b-25a6-4581-9ee5-f87dfa102bec", + "traceId": "1f0c6ede04e34ec89f8b44f6cd1dc755", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.716Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "筛选快递公司列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=EX808072627117" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c10812ab-51c4-4e03-87ce-27a6a5a98c8a, 1d191ee2-4c1c-4a69-bcda-d9f6b6db1869", + "traceId": "d7a77830482549609ba7749aac0d63f8", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.743Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司列表回显停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=EX808072627117" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c10812ab-51c4-4e03-87ce-27a6a5a98c8a, 1d191ee2-4c1c-4a69-bcda-d9f6b6db1869", + "traceId": "d7a77830482549609ba7749aac0d63f8", + "evidence": "records=1", + "checkedAt": "2026-08-08T07:26:32.743Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9716d241-8902-487d-990c-aa11a8cbe83b, 568f7697-356f-4433-a08d-ddf2767e84a3", + "traceId": "e4bc50c7b7224552b7852831bcfc64d0", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.777Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询往来单位详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/2085991029657354242?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "97c5e06c-a615-4f58-9b78-353f002f4654, a6d10cac-9369-44da-95cb-aa67a74d5866", + "traceId": "d25607bf4b394b38ba809643aa8edb1d", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.803Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位详情正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/2085991029657354242?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "97c5e06c-a615-4f58-9b78-353f002f4654, a6d10cac-9369-44da-95cb-aa67a74d5866", + "traceId": "d25607bf4b394b38ba809643aa8edb1d", + "evidence": "partnerId=2085991029657354242", + "checkedAt": "2026-08-08T07:26:32.803Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/partners/2085991029657354242?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c28be439-1622-4992-a309-1f79600ba049, c10016dd-03b6-4ff4-9b50-6ac2be12d873", + "traceId": "dda9dc862c5b44daa44b50c9a83f9fdc", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.833Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/partners/2085991029657354242/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b57b3046-e3b1-4358-a945-cae28ecf4a02, 625610d3-96c0-48c3-adae-f9dbc0e8f789", + "traceId": "2d9f86ee559344f4aa1c376fae6bd8fb", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.873Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "筛选往来单位列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=PT808072627117" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "565cc00c-b5ad-41cb-9efe-44992dd58901, 28517f49-cb5b-4864-91b7-e70902706c18", + "traceId": "fffb39a4f5cf476c9c11643c833182e8", + "evidence": "", + "checkedAt": "2026-08-08T07:26:32.902Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位列表回显编辑与停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=PT808072627117" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "565cc00c-b5ad-41cb-9efe-44992dd58901, 28517f49-cb5b-4864-91b7-e70902706c18", + "traceId": "fffb39a4f5cf476c9c11643c833182e8", + "evidence": "records=1", + "checkedAt": "2026-08-08T07:26:32.902Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载仓库导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/import-template" + }, + "http": 200, + "code": null, + "message": "3852 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "e2499d15-c79d-42c2-b9d0-2da54baed068, 3fba3214-92ba-452a-be0e-4953be02820d", + "traceId": "c3293afcbb9b43a8904618399abbdd48", + "evidence": "bytes=3852, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:26:32.943Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库合法模板 dryRun 导入契约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2b5e6ea5-7dbc-47dd-86b6-d2ddf403346d, bcf3db99-7c12-4707-bb0b-648bb3a7f9ee", + "traceId": "b7e8fb6dd54b4ffa93b33e8c94bb8d18", + "evidence": "HTTP=200, code=200, rows=0, parserSuccess=false", + "checkedAt": "2026-08-08T07:26:32.989Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库合法模板重复 dryRun 幂等结果稳定", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "daf0e847-6627-423c-b3d9-fd2a7ebd2ecb, 3f9498d8-e770-40fb-ae52-3cf1b162589b", + "traceId": "d246a412deeb4b29ba8161a00719633b", + "evidence": "firstRows=0, replayRows=0", + "checkedAt": "2026-08-08T07:26:33.024Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载快递公司导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/import-template" + }, + "http": 200, + "code": null, + "message": "3691 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "16d4dd70-5499-4037-b8a8-421f9dbfab1c, afb2e134-e952-4ce4-b857-d17f99c53f2b", + "traceId": "ac316355219840068a2dc27c0b92c5d5", + "evidence": "bytes=3691, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:26:33.075Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司合法模板 dryRun 导入契约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b411b834-28d0-4547-9ab0-9987ee198231, 982bd5c5-dfeb-4436-8efb-4bc8538aa247", + "traceId": "b9bf6ba7a8ed4d2bb3ce44884c038434", + "evidence": "HTTP=200, code=200, rows=0, parserSuccess=false", + "checkedAt": "2026-08-08T07:26:33.112Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司合法模板重复 dryRun 幂等结果稳定", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "13801e14-8af3-4321-adee-f1ec3949451c, ecdca736-7050-4308-838b-18b3af1cf8d0", + "traceId": "ed75f326c50e4813b116c1e0d486d1ad", + "evidence": "firstRows=0, replayRows=0", + "checkedAt": "2026-08-08T07:26:33.157Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载往来单位导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/import-template" + }, + "http": 200, + "code": null, + "message": "3829 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "97d3482f-b712-4126-9532-800f1a503473, 07aa51c3-ac9e-4535-8ef9-db4fbae3ed69", + "traceId": "decc7c4138174764be6cad2c8cb3cd7c", + "evidence": "bytes=3829, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:26:33.203Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位合法模板 dryRun 导入契约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bb666572-83a7-425a-8a72-9300cc916081, cbad1c3d-bf11-42da-aab3-e6bcb224fd62", + "traceId": "cbfaa3c9545244d9a4d9d400f56b62e5", + "evidence": "HTTP=200, code=200, rows=0, parserSuccess=false", + "checkedAt": "2026-08-08T07:26:33.249Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位合法模板重复 dryRun 幂等结果稳定", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8622b77e-ec72-438f-a4e5-062c6123300c, fe7e8873-49f0-4a75-8129-cbdcff94302d", + "traceId": "3d8470bb2d9444679232771a7653b44f", + "evidence": "firstRows=0, replayRows=0", + "checkedAt": "2026-08-08T07:26:33.282Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用测试仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/warehouse-admin/2085991026868142082/status?tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "89d7bdc1-0665-4ca0-8cc2-38480209115d, 88cc9934-f6cd-4f4a-a2c2-b8ee9df0b124", + "traceId": "b9b19c3491d342deaf9c85fca2134290", + "evidence": "", + "checkedAt": "2026-08-08T07:26:33.321Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 测试账号登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "26ab9347-159b-43e4-90e9-f34682cf6f35, 3719def4-c57f-49d4-a2fe-1dfee2bc58ef", + "traceId": "c7c4eb883f9a4daabc2fd52655a95b57", + "evidence": "username=merchant_admin", + "checkedAt": "2026-08-08T07:26:33.652Z" + }, + { + "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": "6d31541c-d7f9-472b-ba13-6dbb00bf729f, 439ce75d-3a89-4eae-995d-e162048b4e71", + "traceId": "f29db371202f489ebd0c1abb81f07522", + "evidence": "", + "checkedAt": "2026-08-08T07:26:33.687Z" + }, + { + "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": "6d31541c-d7f9-472b-ba13-6dbb00bf729f, 439ce75d-3a89-4eae-995d-e162048b4e71", + "traceId": "f29db371202f489ebd0c1abb81f07522", + "evidence": "tenantId=10001, status=ACTIVE", + "checkedAt": "2026-08-08T07:26:33.687Z" + }, + { + "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": "cb8db32e-5f90-490a-a4a4-c1073aea3261, 5ab5b2ae-5249-46e5-9caa-9af895c1b9cb", + "traceId": "8e08b224763d46e88abcd18c60e691d1", + "evidence": "tenantId=10001", + "checkedAt": "2026-08-08T07:26:33.710Z" + }, + { + "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": "cb8db32e-5f90-490a-a4a4-c1073aea3261, 5ab5b2ae-5249-46e5-9caa-9af895c1b9cb", + "traceId": "8e08b224763d46e88abcd18c60e691d1", + "evidence": "types=SMALL,MEDIUM,LARGE,EXTRA_LARGE", + "checkedAt": "2026-08-08T07:26:33.710Z" + }, + { + "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": "9653ed78-fbdb-4a5d-bb58-129d92d2303a, c8888acb-6959-4bf2-ba8e-04f5ad5f80fd", + "traceId": "b6a9e29d122e44a7aaee90fa27367208", + "evidence": "", + "checkedAt": "2026-08-08T07:26:33.737Z" + }, + { + "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": "9653ed78-fbdb-4a5d-bb58-129d92d2303a, c8888acb-6959-4bf2-ba8e-04f5ad5f80fd", + "traceId": "b6a9e29d122e44a7aaee90fa27367208", + "evidence": "count=2", + "checkedAt": "2026-08-08T07:26:33.737Z" + }, + { + "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": "7a497bcb-6621-489b-b2a2-47e04a911531, 3353ee8d-1a69-404a-bc22-eeecd808c105", + "traceId": "de4fffdb67024d50b361f790200376d8", + "evidence": "", + "checkedAt": "2026-08-08T07:26:33.793Z" + }, + { + "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": "7a497bcb-6621-489b-b2a2-47e04a911531, 3353ee8d-1a69-404a-bc22-eeecd808c105", + "traceId": "de4fffdb67024d50b361f790200376d8", + "evidence": "count=200", + "checkedAt": "2026-08-08T07:26:33.793Z" + }, + { + "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": "c7498a5a-ed51-4a45-bcc0-c8dd58aa91e3, 738e2ea3-f11a-4ada-8ae5-a8dead96ac30", + "traceId": "0764f7382ea84b569f1d08e039f98b8d", + "evidence": "", + "checkedAt": "2026-08-08T07:26:33.835Z" + }, + { + "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": "c7498a5a-ed51-4a45-bcc0-c8dd58aa91e3, 738e2ea3-f11a-4ada-8ae5-a8dead96ac30", + "traceId": "0764f7382ea84b569f1d08e039f98b8d", + "evidence": "count=15", + "checkedAt": "2026-08-08T07:26:33.835Z" + }, + { + "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": "c3c4143a-9641-4665-8bc2-9018df802c17, 76bb0c02-d779-4855-8fdb-bf50cdca37bc", + "traceId": "a9a13ae9ea104022a5519803537af8cb", + "evidence": "", + "checkedAt": "2026-08-08T07:26:33.860Z" + }, + { + "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": "b14a2c7d-46da-450b-a874-03a6af4e2f0a, 0033546c-1f3c-4c32-8193-1d78bf9b6483", + "traceId": "3487e99a794642768ed2084c64b40432", + "evidence": "contentType=image/png", + "checkedAt": "2026-08-08T07:26:33.887Z" + }, + { + "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": "b14a2c7d-46da-450b-a874-03a6af4e2f0a, 0033546c-1f3c-4c32-8193-1d78bf9b6483", + "traceId": "3487e99a794642768ed2084c64b40432", + "evidence": "fileIdType=string, contentType=image/png", + "checkedAt": "2026-08-08T07:26:33.887Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Client 可下载本轮产品图片", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/files/product-images/2085991034312523777" + }, + "http": 200, + "code": null, + "message": null, + "requestId": "1bb445ed-0721-49b5-804f-c09b63546092, f6262044-6732-4dff-ae25-8fb859203710", + "traceId": "e928403866824c1ab2be2330777a44c3", + "evidence": "bytes=68, contentType=image/png", + "checkedAt": "2026-08-08T07:26:33.920Z" + }, + { + "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": "c393a219-6b50-47f7-a7ca-4b14fa45d046, 401b085b-b248-49fc-84f5-7b58da2aba21", + "traceId": "c785818ee37b431d86aecbbb4e03f403", + "evidence": "marker=ADMIN-API-20260808072627117", + "checkedAt": "2026-08-08T07:26:33.999Z" + }, + { + "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": "41472855-7a28-4dff-bbb5-1f03da79f38b, c0756fe2-c381-4e81-a0e1-75f2b9e2e34e", + "traceId": "9f2800f04bcd4442a5b7a7e3df990897", + "evidence": "", + "checkedAt": "2026-08-08T07:26:34.027Z" + }, + { + "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": "41472855-7a28-4dff-bbb5-1f03da79f38b, c0756fe2-c381-4e81-a0e1-75f2b9e2e34e", + "traceId": "9f2800f04bcd4442a5b7a7e3df990897", + "evidence": "orderId=2085991034748731394, replayedId=2085991034748731394", + "checkedAt": "2026-08-08T07:26:34.027Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 查询隔离订单草稿", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991034748731394" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "89fc2279-9bd6-4d89-85ee-20193a068502, fc5e51ee-544d-446e-94a3-30253b8a3e81", + "traceId": "e5869b1a894c4b6fb4a2970f5a2b2f4c", + "evidence": "", + "checkedAt": "2026-08-08T07:26:34.065Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 草稿身份、marker 和状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991034748731394" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "89fc2279-9bd6-4d89-85ee-20193a068502, fc5e51ee-544d-446e-94a3-30253b8a3e81", + "traceId": "e5869b1a894c4b6fb4a2970f5a2b2f4c", + "evidence": "orderNo=FL2085991034748731394, status=DRAFT", + "checkedAt": "2026-08-08T07:26:34.065Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991034748731394" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "89fc2279-9bd6-4d89-85ee-20193a068502, fc5e51ee-544d-446e-94a3-30253b8a3e81", + "traceId": "e5869b1a894c4b6fb4a2970f5a2b2f4c", + "evidence": "cargoes=4, imageFileId=2085991034312523777", + "checkedAt": "2026-08-08T07:26:34.066Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 提交隔离订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/merchant/v1/orders/first-leg/2085991034748731394/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4c7598ce-e9d8-4799-8802-0a175102bb7a, a15f9394-1742-4ff7-9321-7cb450bb06c9", + "traceId": "2ee49e9eccde48f8af1ea16b1d045d20", + "evidence": "orderId=2085991034748731394", + "checkedAt": "2026-08-08T07:26:34.131Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 回查已提交订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991034748731394" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7483f892-7a5e-4c38-9f3b-b2c91394a2c9, 8bf8cf78-7a91-47c1-9d78-eb9b85d09e1c", + "traceId": "cf964b017f5541e9a18daf3b05d37df7", + "evidence": "", + "checkedAt": "2026-08-08T07:26:34.158Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 订单已进入待审核状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991034748731394" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7483f892-7a5e-4c38-9f3b-b2c91394a2c9, 8bf8cf78-7a91-47c1-9d78-eb9b85d09e1c", + "traceId": "cf964b017f5541e9a18daf3b05d37df7", + "evidence": "status=SUBMITTED", + "checkedAt": "2026-08-08T07:26:34.158Z" + }, + { + "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=FL2085991034748731394" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c5d4f8d0-82b8-42c7-87f9-d9d1e838390f, 3d7cb7eb-80f8-4078-b59c-11be90d7d854", + "traceId": "de26d44f6a5f4cca885b193d40e1a03d", + "evidence": "", + "checkedAt": "2026-08-08T07:26:34.193Z" + }, + { + "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=FL2085991034748731394" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c5d4f8d0-82b8-42c7-87f9-d9d1e838390f, 3d7cb7eb-80f8-4078-b59c-11be90d7d854", + "traceId": "de26d44f6a5f4cca885b193d40e1a03d", + "evidence": "orderId=2085991034748731394, found=true", + "checkedAt": "2026-08-08T07:26:34.194Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询统一订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085991034748731394?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1b0c66b4-642c-4f48-a720-76a3251c16c2, 26648039-ed70-4f1b-b6ec-8c362ad8e32c", + "traceId": "dbd086b646a440afa4964859462e39e9", + "evidence": "", + "checkedAt": "2026-08-08T07:26:34.225Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 统一订单详情身份与待审核状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085991034748731394?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1b0c66b4-642c-4f48-a720-76a3251c16c2, 26648039-ed70-4f1b-b6ec-8c362ad8e32c", + "traceId": "dbd086b646a440afa4964859462e39e9", + "evidence": "mainStatus=PENDING_REVIEW, timeline=2", + "checkedAt": "2026-08-08T07:26:34.225Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085991034748731394&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "209581ee-51be-424a-9f7b-b7c3a2967456, d44fcee5-64f5-42d2-b83d-a0d5a61d6464", + "traceId": "4efe5884abe34f4aade6080b3a00b7aa", + "evidence": "", + "checkedAt": "2026-08-08T07:26:34.258Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单列表只核对本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085991034748731394&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "209581ee-51be-424a-9f7b-b7c3a2967456, d44fcee5-64f5-42d2-b83d-a0d5a61d6464", + "traceId": "4efe5884abe34f4aade6080b3a00b7aa", + "evidence": "orderId=2085991034748731394, found=true", + "checkedAt": "2026-08-08T07:26:34.258Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991034748731394?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6bb2c9ce-891c-4393-8383-1005c9f55e74, f5670fd2-fb29-4106-bd8c-0a1983426812", + "traceId": "a6f88a62da854a33b94db38b587a833a", + "evidence": "", + "checkedAt": "2026-08-08T07:26:34.302Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单详情聚合结构完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991034748731394?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6bb2c9ce-891c-4393-8383-1005c9f55e74, f5670fd2-fb29-4106-bd8c-0a1983426812", + "traceId": "a6f88a62da854a33b94db38b587a833a", + "evidence": "cargoes=4, history=2", + "checkedAt": "2026-08-08T07:26:34.302Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991034748731394?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6bb2c9ce-891c-4393-8383-1005c9f55e74, f5670fd2-fb29-4106-bd8c-0a1983426812", + "traceId": "a6f88a62da854a33b94db38b587a833a", + "evidence": "cargoes=4, imageFileId=2085991034312523777", + "checkedAt": "2026-08-08T07:26:34.302Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 为本轮订单添加内部备注", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991034748731394/internal-notes?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c1c061b5-3d22-4221-8631-cc76ee123aaf, 17d19977-7a79-4c38-b795-da41bd50bcd8", + "traceId": "e79662c1fef8405e9f7546c444647b4c", + "evidence": "", + "checkedAt": "2026-08-08T07:26:34.338Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 审核通过本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991034748731394/approve?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ec89570b-30d7-4af9-a3be-b2902bfb5fad, 09481e31-b25a-4cb5-8d3f-ffd445ca7d3c", + "traceId": "a51c6d51864e4847bf9d3be5519945fc", + "evidence": "orderId=2085991034748731394", + "checkedAt": "2026-08-08T07:26:34.383Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "审核后生成隔离入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085991034748731394?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d60946f7-bb45-4c69-92f7-ac7969275ee6, 51736e0e-4ec7-463f-833c-cc6ab81eaca6", + "traceId": "30f4d1ef958c4274a63af00c1a0ee032", + "evidence": "inboundId=2085991042023731201", + "checkedAt": "2026-08-08T07:26:36.551Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮入库单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991042023731201?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d76355fd-1480-4cc1-90b2-376e05222a59, 55ea9888-9334-4f8b-8621-1845a1cd8327", + "traceId": "09c40983ca4048fcab79c6719a0862d0", + "evidence": "inboundId=2085991042023731201", + "checkedAt": "2026-08-08T07:26:36.586Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "隔离入库单 marker 来源与可测量状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991042023731201?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d76355fd-1480-4cc1-90b2-376e05222a59, 55ea9888-9334-4f8b-8621-1845a1cd8327", + "traceId": "09c40983ca4048fcab79c6719a0862d0", + "evidence": "markerFound=true, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T07:26:36.586Z" + }, + { + "module": "orders", + "scenario": null, + "name": "入库单详情包含托盘库位、文件、备注和状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991042023731201?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d76355fd-1480-4cc1-90b2-376e05222a59, 55ea9888-9334-4f8b-8621-1845a1cd8327", + "traceId": "09c40983ca4048fcab79c6719a0862d0", + "evidence": "inboundId=2085991042023731201, history=1", + "checkedAt": "2026-08-08T07:26:36.586Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询入库单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085991034748731394&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d9ede4bb-cd64-4f56-8891-9d33b1b11ea2, fad4e336-458b-45ad-9b9e-e9aaa882d4c2", + "traceId": "674525b4a1d046d9a04b73e76934e5a7", + "evidence": "", + "checkedAt": "2026-08-08T07:26:36.620Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 入库单列表只核对本轮入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085991034748731394&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d9ede4bb-cd64-4f56-8891-9d33b1b11ea2, fad4e336-458b-45ad-9b9e-e9aaa882d4c2", + "traceId": "674525b4a1d046d9a04b73e76934e5a7", + "evidence": "inboundId=2085991042023731201, total=1", + "checkedAt": "2026-08-08T07:26:36.620Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮订单履约任务", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085991034748731394?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "38f72957-afff-40de-a465-ef11d2f78603, 16c1c43f-29f1-479a-ba3f-957de2f44e8c", + "traceId": "f4e2335832b8457689ac9531243ad314", + "evidence": "新订单应生成可查询的履约任务", + "checkedAt": "2026-08-08T07:26:36.644Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "履约任务与本轮订单和客户一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085991034748731394?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "38f72957-afff-40de-a465-ef11d2f78603, 16c1c43f-29f1-479a-ba3f-957de2f44e8c", + "traceId": "f4e2335832b8457689ac9531243ad314", + "evidence": "taskId=2085991042019536897, status=PENDING_ASSIGNMENT", + "checkedAt": "2026-08-08T07:26:36.644Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询本轮履约任务分配历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085991042019536897/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "318a2c66-d185-420a-8842-13a9a6d7287c, a430fa9b-e566-476b-8a0c-70ab2792b4ae", + "traceId": "d797c104f4f343da8d96ca8b22045be1", + "evidence": "", + "checkedAt": "2026-08-08T07:26:36.678Z" + }, + { + "module": "orders", + "scenario": null, + "name": "履约分配历史分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085991042019536897/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "318a2c66-d185-420a-8842-13a9a6d7287c, a430fa9b-e566-476b-8a0c-70ab2792b4ae", + "traceId": "d797c104f4f343da8d96ca8b22045be1", + "evidence": "taskId=2085991042019536897, total=0", + "checkedAt": "2026-08-08T07:26:36.678Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 受理本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991034748731394/accept?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "200ed966-1b30-4e3a-907e-80d279369895, 50107ed3-6de5-414c-8964-741b4248418c", + "traceId": "997d95a617b44031b3b900eeb967a6a1", + "evidence": "", + "checkedAt": "2026-08-08T07:26:36.706Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 启动本轮订单履约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991034748731394/start?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2cb31e7f-ce04-40f7-a7b4-8e54bc945721, cf976339-8b82-4b02-897c-2f6320a939d4", + "traceId": "1166803212ba4608ad813deff73cbf38", + "evidence": "", + "checkedAt": "2026-08-08T07:26:36.746Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 回查本轮订单履约状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991034748731394?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "70915ba3-ee9f-4cea-b119-370a49cc4b34, 0a6303d7-7899-441a-84cf-7e2eb793f731", + "traceId": "52a5cb5586dc428dbeea466def90be50", + "evidence": "", + "checkedAt": "2026-08-08T07:26:36.773Z" + }, + { + "module": "orders", + "scenario": null, + "name": "本轮订单已进入处理中且保留状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991034748731394?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "70915ba3-ee9f-4cea-b119-370a49cc4b34, 0a6303d7-7899-441a-84cf-7e2eb793f731", + "traceId": "52a5cb5586dc428dbeea466def90be50", + "evidence": "status=PROCESSING, history=5", + "checkedAt": "2026-08-08T07:26:36.773Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询发布前船期价格版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "37682aec-0dc4-4587-913c-bd2a5c3f915f, 87e9778b-6777-4492-a76d-8bf393dbe3c6", + "traceId": "5ee300041b6e4052953ecd1189cb8cd3", + "evidence": "", + "checkedAt": "2026-08-08T07:26:36.799Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "发布前最多一份生效版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "37682aec-0dc4-4587-913c-bd2a5c3f915f, 87e9778b-6777-4492-a76d-8bf393dbe3c6", + "traceId": "5ee300041b6e4052953ecd1189cb8cd3", + "evidence": "versions=16, active=1", + "checkedAt": "2026-08-08T07:26:36.800Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "船期价格测试文件已隔离", + "passed": true, + "deploymentBlocker": false, + "request": null, + "http": null, + "code": null, + "message": null, + "requestId": null, + "traceId": null, + "evidence": "fileName=ADMIN-API-20260808072627117-2026.08.03柏悦价格表 船期2026.08.12.xlsx, bytes=1343413, sha256=3170fd3aa8795cd816ca9600f87a6a2a06b15d0cf6042d4592f33d4b30c7b8ab", + "checkedAt": "2026-08-08T07:26:36.803Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上传并解析船期价格表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8861117e-25f7-4de6-9943-fd10ef1125c6, 72696372-8770-486a-b91a-3bf017ba7ad8", + "traceId": "32308afc90db456fba698e123ccbfc6f", + "evidence": "fileName=ADMIN-API-20260808072627117-2026.08.03柏悦价格表 船期2026.08.12.xlsx, bytes=1343413, sha256=3170fd3aa8795cd816ca9600f87a6a2a06b15d0cf6042d4592f33d4b30c7b8ab", + "checkedAt": "2026-08-08T07:26:38.942Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上传返回隔离的待确认版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8861117e-25f7-4de6-9943-fd10ef1125c6, 72696372-8770-486a-b91a-3bf017ba7ad8", + "traceId": "32308afc90db456fba698e123ccbfc6f", + "evidence": "versionId=2085991046780071937, status=PENDING_CONFIRMATION, fileName=ADMIN-API-20260808072627117-2026.08.03柏悦价格表 船期2026.08.12.xlsx, shaMatched=true", + "checkedAt": "2026-08-08T07:26:38.942Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "解析出15个固定渠道且编码唯一", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8861117e-25f7-4de6-9943-fd10ef1125c6, 72696372-8770-486a-b91a-3bf017ba7ad8", + "traceId": "32308afc90db456fba698e123ccbfc6f", + "evidence": "channelCount=15, unique=15, missing=none", + "checkedAt": "2026-08-08T07:26:38.942Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "解析价格行完整且可追溯到 Excel", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8861117e-25f7-4de6-9943-fd10ef1125c6, 72696372-8770-486a-b91a-3bf017ba7ad8", + "traceId": "32308afc90db456fba698e123ccbfc6f", + "evidence": "rateCount=2157, declared=2157, valid=true", + "checkedAt": "2026-08-08T07:26:38.943Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "解析阻断仅包含可确认的仓库映射问题", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8861117e-25f7-4de6-9943-fd10ef1125c6, 72696372-8770-486a-b91a-3bf017ba7ad8", + "traceId": "32308afc90db456fba698e123ccbfc6f", + "evidence": "blocking=0, unexpected=none, infrastructure=none", + "checkedAt": "2026-08-08T07:26:38.943Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上传后回查价格版本列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d42bf804-e681-4a41-bf80-05d1aa8386f2, c4ec725f-c14f-48b5-9b15-2ca545ca1fb1", + "traceId": "21f6debcdae54d1a8a8540b63220b6d8", + "evidence": "", + "checkedAt": "2026-08-08T07:26:38.989Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上传只生成待确认版本且不替换当前生效版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d42bf804-e681-4a41-bf80-05d1aa8386f2, c4ec725f-c14f-48b5-9b15-2ca545ca1fb1", + "traceId": "21f6debcdae54d1a8a8540b63220b6d8", + "evidence": "pending=PENDING_CONFIRMATION, activeBefore=2085987473472139265, activeAfterUpload=2085987473472139265", + "checkedAt": "2026-08-08T07:26:38.989Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询待确认版本渠道和价格预览", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991046780071937" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "116abf21-9d75-46dc-95a1-d7d2c61e653d, d4da79fd-dd6e-468b-b209-ad82822b5cad", + "traceId": "6286203e7527455eb54b66c6ac04c89d", + "evidence": "", + "checkedAt": "2026-08-08T07:26:39.084Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "详情与上传解析结果一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991046780071937" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "116abf21-9d75-46dc-95a1-d7d2c61e653d, d4da79fd-dd6e-468b-b209-ad82822b5cad", + "traceId": "6286203e7527455eb54b66c6ac04c89d", + "evidence": "versionId=2085991046780071937, channels=15, rates=2157, issues=2", + "checkedAt": "2026-08-08T07:26:39.084Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "下载原始 XLSX 且内容散列一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991046780071937/source" + }, + "http": 200, + "code": null, + "message": "1343413 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "e7eeecdb-696c-4e57-a025-a420b1df4950, eec52fdf-253f-4577-9665-68023e7c56ee, 4b62d331-fe57-4c78-a2d7-f76b4a6b5042", + "traceId": "29fe43f8ba2042018fd841a527250b0c, 90f2ca5be95f4caf92aa5c4e537faf41", + "evidence": "bytes=1343413, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, zipMagic=true, sha256=3170fd3aa8795cd816ca9600f87a6a2a06b15d0cf6042d4592f33d4b30c7b8ab", + "checkedAt": "2026-08-08T07:26:39.171Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询启用的平台公共国内仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=200&status=ACTIVE&warehouseType=DOMESTIC" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9327770a-c0f1-4bb7-bf0d-c67e1f9258c3, 2f0f1b1e-907a-4b74-bc28-208ae4b8126f", + "traceId": "7dc16987df314cdcb7c1d1e925f56245", + "evidence": "", + "checkedAt": "2026-08-08T07:26:39.205Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询启用的平台公共海外仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=200&status=ACTIVE&warehouseType=OVERSEAS" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c53ea031-610b-4fc6-a528-3577a7274d57, bae72b8f-0b69-4add-a871-f10eabcc19b8", + "traceId": "58b5bac6553e4a05a2d76542688c1e48", + "evidence": "", + "checkedAt": "2026-08-08T07:26:39.235Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "国内起运仓和目的海外仓均精确映射", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=200&status=ACTIVE&warehouseType=OVERSEAS" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c53ea031-610b-4fc6-a528-3577a7274d57, bae72b8f-0b69-4add-a871-f10eabcc19b8", + "traceId": "58b5bac6553e4a05a2d76542688c1e48", + "evidence": "origins=CN-DONGGUAN-01->193000000000200002,CN-YIWU-01->193000000000200001, overseas=纽约仓->193000000000200004,洛杉矶仓->193000000000200003, missing=none", + "checkedAt": "2026-08-08T07:26:39.236Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "确认仓库映射并立即生效", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991046780071937/publish" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5c12abf6-1af4-4ea3-8c66-02925ecbeb1a, 555de40a-09a6-47a2-b9de-d6974208182c", + "traceId": "2c0f540a00344583a40a54b436bbbbb8", + "evidence": "versionId=2085991046780071937, originMappings=2, overseasMappings=2", + "checkedAt": "2026-08-08T07:26:41.043Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "发布后价格版本为 ACTIVE 且无阻断", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991046780071937/publish" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5c12abf6-1af4-4ea3-8c66-02925ecbeb1a, 555de40a-09a6-47a2-b9de-d6974208182c", + "traceId": "2c0f540a00344583a40a54b436bbbbb8", + "evidence": "status=ACTIVE, blocking=0, publishedAt=2026-08-08T15:26:39.86, channels=15, rates=2157", + "checkedAt": "2026-08-08T07:26:41.043Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "发布后回查当前生效和历史版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "27c36145-14ae-4371-b866-0df17adb476a, 1611c207-0f03-4e55-b7f2-a2c5f8608055", + "traceId": "a8287f8c4c184d9eb7b4a871e623b815", + "evidence": "", + "checkedAt": "2026-08-08T07:26:41.077Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "始终只有一份当前生效版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "27c36145-14ae-4371-b866-0df17adb476a, 1611c207-0f03-4e55-b7f2-a2c5f8608055", + "traceId": "a8287f8c4c184d9eb7b4a871e623b815", + "evidence": "active=2085991046780071937", + "checkedAt": "2026-08-08T07:26:41.077Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上一生效版本已保留为历史版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "27c36145-14ae-4371-b866-0df17adb476a, 1611c207-0f03-4e55-b7f2-a2c5f8608055", + "traceId": "a8287f8c4c184d9eb7b4a871e623b815", + "evidence": "previous=2085987473472139265, superseded=true", + "checkedAt": "2026-08-08T07:26:41.077Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询当前生效价格版本详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991046780071937" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "601c6d31-03e9-42dc-bac5-83aa3d3671b7, cb5c3fb9-50d9-4d5b-a478-bf5687d90c8a", + "traceId": "49218f1edb0141fe9db22e4d20593b18", + "evidence": "", + "checkedAt": "2026-08-08T07:26:41.170Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "当前生效版本预览数据完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991046780071937" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "601c6d31-03e9-42dc-bac5-83aa3d3671b7, cb5c3fb9-50d9-4d5b-a478-bf5687d90c8a", + "traceId": "49218f1edb0141fe9db22e4d20593b18", + "evidence": "status=ACTIVE, channels=15, rates=2157", + "checkedAt": "2026-08-08T07:26:41.171Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "已生效版本禁止重复发布", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991046780071937/publish" + }, + "http": 200, + "code": "A0409", + "message": "只有待确认上传记录可以确认并生效", + "requestId": "0c8b8003-a160-4a92-a38b-d6ddb59293af", + "traceId": "6a678bafe1f441da9fe1e59eda3a36e5", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:26:41.197Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "重复发布被拒绝后回查版本状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7063e111-e69c-460d-9de5-8cd727999b66, a8144df7-d90a-436c-846d-0d17edef5271", + "traceId": "7729b96cd71c49ffaf9ccaca65ea5ef4", + "evidence": "", + "checkedAt": "2026-08-08T07:26:41.220Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "重复发布未改变唯一生效版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7063e111-e69c-460d-9de5-8cd727999b66, a8144df7-d90a-436c-846d-0d17edef5271", + "traceId": "7729b96cd71c49ffaf9ccaca65ea5ef4", + "evidence": "active=2085991046780071937", + "checkedAt": "2026-08-08T07:26:41.220Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "创建客户列表导出任务", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/export-tasks" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f391597c-fc25-4fae-9116-7747318f9104, 164f2ef2-4572-4b15-8d32-59dc6a9203d1", + "traceId": "3b70fe8b763641ea88f0435fdac652ae", + "evidence": "", + "checkedAt": "2026-08-08T07:26:41.262Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "导出任务创建字段正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/export-tasks" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f391597c-fc25-4fae-9116-7747318f9104, 164f2ef2-4572-4b15-8d32-59dc6a9203d1", + "traceId": "3b70fe8b763641ea88f0435fdac652ae", + "evidence": "taskId=2085991065220349954, status=PENDING", + "checkedAt": "2026-08-08T07:26:41.262Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "查询下载中心任务列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=20&exportType=CUSTOMER_LIST" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "522c13af-8f4f-4567-8376-dbe5682c44f3, 0224d169-6b4a-4fc0-836e-4634a02f69b9", + "traceId": "9d352d03152349a8ae460fd0927197c1", + "evidence": "", + "checkedAt": "2026-08-08T07:26:41.287Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "下载中心列表包含新任务", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=20&exportType=CUSTOMER_LIST" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "522c13af-8f4f-4567-8376-dbe5682c44f3, 0224d169-6b4a-4fc0-836e-4634a02f69b9", + "traceId": "9d352d03152349a8ae460fd0927197c1", + "evidence": "records=15", + "checkedAt": "2026-08-08T07:26:41.287Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "轮询导出任务直到终态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/2085991065220349954" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d4ecd190-522e-4158-a6bb-9fa4b99ba41a, bac184be-9879-4b01-afbb-b295c940ea88", + "traceId": "4dc83b74453e4fd98034612b17a79712", + "evidence": "status=SUCCEEDED, processedRows=0", + "checkedAt": "2026-08-08T07:26:45.367Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "查询导出任务详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/2085991065220349954" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2e5af30b-bee4-4b65-98fa-7b0945a4533f, 1d6cad51-d4a8-4f73-927b-7b3996cf3076", + "traceId": "e549a3d0717e4a1a9e4458b2504f2d00", + "evidence": "", + "checkedAt": "2026-08-08T07:26:45.402Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "导出详情行数和文件元数据正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/2085991065220349954" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2e5af30b-bee4-4b65-98fa-7b0945a4533f, 1d6cad51-d4a8-4f73-927b-7b3996cf3076", + "traceId": "e549a3d0717e4a1a9e4458b2504f2d00", + "evidence": "processedRows=0, sizeBytes=4067", + "checkedAt": "2026-08-08T07:26:45.402Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "下载并校验客户列表 XLSX", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/2085991065220349954/download" + }, + "http": 200, + "code": null, + "message": "4067 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "aadae416-f3e7-4645-8039-c8434f8abbb4, fedfcbc8-f6ef-48dd-9c2e-93577aba458a", + "traceId": "398c0f5271024b918ca6fc26467155e8", + "evidence": "bytes=4067, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:26:45.434Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "仅选择带本轮测试标记的可编辑入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991042023731201?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f595adf8-9552-4fb4-83cb-61569a51ad7e, 1a426bf1-ada8-4401-93a1-4c96177da27a", + "traceId": "9b2e4f2a6bc74d4e93a1e2a339ba6db0", + "evidence": "tenantId=10001, inboundId=2085991042023731201, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T07:26:45.463Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f5093198-cd6d-499e-959b-f090606bc045, 13100486-6315-4ac4-846a-40d01656e077", + "traceId": "570a993e26264a5d8df1482e010cdd8f", + "evidence": "inboundId=2085991042023731201", + "checkedAt": "2026-08-08T07:26:45.493Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f5093198-cd6d-499e-959b-f090606bc045, 13100486-6315-4ac4-846a-40d01656e077", + "traceId": "570a993e26264a5d8df1482e010cdd8f", + "evidence": "existingResults=0, baselineWeight=null", + "checkedAt": "2026-08-08T07:26:45.494Z" + }, + { + "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/2085991042023731201" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "304305cb-812", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:26:45.515Z" + }, + { + "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/2085991042023731201" + }, + "http": 200, + "code": "A0400", + "message": "称重图片仅支持JPG、PNG、BMP", + "requestId": "e2dbd988-1c6b-4fdc-b4b8-144983f0ee39", + "traceId": "a3b47de8e3c143ff8cc104b224d54c51", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:26:45.537Z" + }, + { + "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/2085991042023731201" + }, + "http": 200, + "code": "A0400", + "message": "称重图片不能超过5MB", + "requestId": "aadfe90c-cb9b-4997-894c-449338e22e54", + "traceId": "8655ea7ca3cd424dad314b2f196735a2", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:26:45.788Z" + }, + { + "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/2085991042023731201" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "78704c44-4bb4-4ce1-b4a1-df450ac0c52b, 57992da4-362e-4e9f-a2c6-a14b98ebc4ab", + "traceId": "607db0271153471d8d77b1bcd74666ca", + "evidence": "file=orig_1cf27695-b2c3-44b3-98e3-c0be8b80f79a.JPG, size=3701469", + "checkedAt": "2026-08-08T07:26:47.375Z" + }, + { + "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/2085991042023731201" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "78704c44-4bb4-4ce1-b4a1-df450ac0c52b, 57992da4-362e-4e9f-a2c6-a14b98ebc4ab", + "traceId": "607db0271153471d8d77b1bcd74666ca", + "evidence": "fileIdType=string, status=RECOGNIZED", + "checkedAt": "2026-08-08T07:26:47.376Z" + }, + { + "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/2085991042023731201" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "78704c44-4bb4-4ce1-b4a1-df450ac0c52b, 57992da4-362e-4e9f-a2c6-a14b98ebc4ab", + "traceId": "607db0271153471d8d77b1bcd74666ca", + "evidence": "status=RECOGNIZED, hasWeight=true, confidence=0.50972", + "checkedAt": "2026-08-08T07:26:47.376Z" + }, + { + "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/2085991042023731201/2085991087303360513/recognize" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c1ed17ac-5e4d-458d-aef8-f6eee753e9ce, cd4836ae-b8f3-4ba3-a0d4-f92f3a4f2234", + "traceId": "ce4e0aae2eef499797eecc4c09c75638", + "evidence": "fileId=2085991087303360513", + "checkedAt": "2026-08-08T07:26:48.275Z" + }, + { + "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/2085991042023731201/2085991087303360513/recognize" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c1ed17ac-5e4d-458d-aef8-f6eee753e9ce, cd4836ae-b8f3-4ba3-a0d4-f92f3a4f2234", + "traceId": "ce4e0aae2eef499797eecc4c09c75638", + "evidence": "sameFile=true, status=RECOGNIZED", + "checkedAt": "2026-08-08T07:26:48.276Z" + }, + { + "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/2085991042023731201/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "59f91b1e-5e17-46f9-a688-c289d64c87e7, 180ad696-4a94-4099-8c5a-c33dadc88cb2", + "traceId": "2626621cbed841f6b217f2a7404f4915", + "evidence": "fileId=2085991087303360513", + "checkedAt": "2026-08-08T07:26:48.319Z" + }, + { + "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/2085991042023731201/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "59f91b1e-5e17-46f9-a688-c289d64c87e7, 180ad696-4a94-4099-8c5a-c33dadc88cb2", + "traceId": "2626621cbed841f6b217f2a7404f4915", + "evidence": "resultIdType=string, fileIdType=string, version=0", + "checkedAt": "2026-08-08T07:26:48.319Z" + }, + { + "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/2085991042023731201/2085991087303360513" + }, + "http": 200, + "code": null, + "message": "3701469 bytes (image/jpeg)", + "requestId": "0f63f1e2-c2a4-4e0a-a847-8fbdd086cd72, 07e1a60c-1e49-4637-b510-9c72349f8def", + "traceId": "52d3905b6feb441ca2cdb740e251e8d3", + "evidence": "contentType=image/jpeg, bytes=3701469", + "checkedAt": "2026-08-08T07:26:48.484Z" + }, + { + "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/2085991042023731201/2085991087303360513/thumbnail" + }, + "http": 200, + "code": null, + "message": "18677 bytes (image/jpeg)", + "requestId": "d96a6dea-b107-4a59-b5f1-f63fe2bdf07d, 1a50f8aa-0359-4124-9fbb-30d49c43e10a", + "traceId": "aa48807cdd18463baa98cf71c8d0e758", + "evidence": "contentType=image/jpeg, bytes=18677, dimensions=240x320", + "checkedAt": "2026-08-08T07:26:48.858Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6686e247-e60f-4e6f-9bb3-30b3b6fa852e, 6e54b1bc-00af-4dbc-b5d2-9874f9be6947", + "traceId": "32eeafaca7624f1aae27c1cda95dd992", + "evidence": "inboundId=2085991042023731201", + "checkedAt": "2026-08-08T07:26:48.889Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6686e247-e60f-4e6f-9bb3-30b3b6fa852e, 6e54b1bc-00af-4dbc-b5d2-9874f9be6947", + "traceId": "32eeafaca7624f1aae27c1cda95dd992", + "evidence": "resultFound=true, baselineCount=0, currentCount=1", + "checkedAt": "2026-08-08T07:26:48.889Z" + }, + { + "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/2085991042023731201/weight-results/2085991094838407169/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0409", + "message": "数据版本已变化,请刷新后重试", + "requestId": "4cc1dfb5-149b-4c7a-9e9e-119cb16ae4ca", + "traceId": "faedc4703b0c4b8e9b1d7f527186694b", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:26:48.912Z" + }, + { + "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/2085991042023731201/weight-results/2085991094838407169/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "84892c5a-1bde-48b9-a309-92270908ddc4, ccf49944-ffa5-474d-b476-618eafb98fd7", + "traceId": "9aa07ece57e94d9491b9ab567973ec68", + "evidence": "usedOriginal=true", + "checkedAt": "2026-08-08T07:26:48.959Z" + }, + { + "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/2085991042023731201/weight-results/2085991094838407169/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "84892c5a-1bde-48b9-a309-92270908ddc4, ccf49944-ffa5-474d-b476-618eafb98fd7", + "traceId": "9aa07ece57e94d9491b9ab567973ec68", + "evidence": "status=CONFIRMED, version=1, finalKg=285.5", + "checkedAt": "2026-08-08T07:26:48.959Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a1bdee12-51d9-4a8a-8f00-601825ec94e6, eed0ed10-e9b9-4c00-9f88-4df234bd897c", + "traceId": "e505c393e78e4410848e2d3f0fa7768b", + "evidence": "inboundId=2085991042023731201", + "checkedAt": "2026-08-08T07:26:48.982Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a1bdee12-51d9-4a8a-8f00-601825ec94e6, eed0ed10-e9b9-4c00-9f88-4df234bd897c", + "traceId": "e505c393e78e4410848e2d3f0fa7768b", + "evidence": "baseline=null, added=285.5, actual=285.5", + "checkedAt": "2026-08-08T07:26:48.982Z" + }, + { + "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/2085991042023731201/weight-results/2085991094838407169?tenantId=10001&version=0" + }, + "http": 200, + "code": "A0409", + "message": "数据版本已变化,请刷新后重试", + "requestId": "ccf8ab6c-6548-4e06-9e4f-0be9c9e051ae", + "traceId": "68f8b1c0d96a4adc9ade6ba706015946", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:26:49.009Z" + }, + { + "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/2085991042023731201/weight-results/2085991094838407169?tenantId=10001&version=1" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c585a20a-f5d5-4604-9d18-9db57b2ff57d, 884eed28-853c-4b58-89fe-90b64ccc5d49", + "traceId": "b09abece19f14a5cbb4ace6704118cfc", + "evidence": "resultId=2085991094838407169, version=1", + "checkedAt": "2026-08-08T07:26:49.056Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7bd4a56a-b439-4156-a45f-75fe7afde1c1, 8e4c1b0f-9a99-4e2d-9acd-0c7f618de05f", + "traceId": "fb0cce21d3364f1fb721a6921b6fff19", + "evidence": "inboundId=2085991042023731201", + "checkedAt": "2026-08-08T07:26:49.088Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7bd4a56a-b439-4156-a45f-75fe7afde1c1, 8e4c1b0f-9a99-4e2d-9acd-0c7f618de05f", + "traceId": "fb0cce21d3364f1fb721a6921b6fff19", + "evidence": "resultMissing=true, baseline=null, actual=null", + "checkedAt": "2026-08-08T07:26:49.088Z" + }, + { + "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/2085991042023731201/2085991087303360513" + }, + "http": 200, + "code": "A0404", + "message": "称重图片不存在", + "requestId": "c9c44c53-acb8-487e-a997-84a17fd8936a", + "traceId": "42dc1d569d4b48b9aa2eafe8c290b23e", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:26:49.118Z" + }, + { + "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/2085991042023731201" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "839861a6-080e-4a27-89d3-5f3171cfb069, 04dc6be3-a1be-4260-9e74-03a98f53b581", + "traceId": "081987dfdf154ead8aebb3a4a3c3ab32", + "evidence": "file=orig_1cf27695-b2c3-44b3-98e3-c0be8b80f79a.JPG, size=3701469", + "checkedAt": "2026-08-08T07:26:50.439Z" + }, + { + "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/2085991042023731201" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "839861a6-080e-4a27-89d3-5f3171cfb069, 04dc6be3-a1be-4260-9e74-03a98f53b581", + "traceId": "081987dfdf154ead8aebb3a4a3c3ab32", + "evidence": "fileIdType=string, status=RECOGNIZED", + "checkedAt": "2026-08-08T07:26:50.440Z" + }, + { + "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/2085991042023731201" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "839861a6-080e-4a27-89d3-5f3171cfb069, 04dc6be3-a1be-4260-9e74-03a98f53b581", + "traceId": "081987dfdf154ead8aebb3a4a3c3ab32", + "evidence": "status=RECOGNIZED, hasWeight=true, confidence=0.50972", + "checkedAt": "2026-08-08T07:26:50.440Z" + }, + { + "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/2085991042023731201/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "94162bd2-bd50-4dfd-9f76-7c15474b0bb3, 4647902b-0e08-4beb-8a13-5301f06c555b", + "traceId": "9c564fd6f51944878c7b976da2852b7a", + "evidence": "fileId=2085991100095987714", + "checkedAt": "2026-08-08T07:26:50.477Z" + }, + { + "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/2085991042023731201/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "94162bd2-bd50-4dfd-9f76-7c15474b0bb3, 4647902b-0e08-4beb-8a13-5301f06c555b", + "traceId": "9c564fd6f51944878c7b976da2852b7a", + "evidence": "resultIdType=string, fileIdType=string, version=0", + "checkedAt": "2026-08-08T07:26:50.478Z" + }, + { + "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/2085991042023731201/weight-results/2085991103889715202/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "adjustedWeightValue: must be greater than or equal to 0.001", + "requestId": "34e5d679-c76f-4bc5-906c-30b751a8161d", + "traceId": "5836903090f048a1b24aa356acfe3253", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:50.514Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bbe3ac14-ae0c-43c8-a0c0-667ff3bbfb2b, dc678960-5b20-4b2b-b36d-ef03dbf1bab4", + "traceId": "638f8060b84b4976810f78bbf1a45616", + "evidence": "inboundId=2085991042023731201", + "checkedAt": "2026-08-08T07:26:50.546Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bbe3ac14-ae0c-43c8-a0c0-667ff3bbfb2b, dc678960-5b20-4b2b-b36d-ef03dbf1bab4", + "traceId": "638f8060b84b4976810f78bbf1a45616", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T07:26:50.546Z" + }, + { + "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/2085991042023731201/weight-results/2085991103889715202/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "adjustedWeightValue: must be greater than or equal to 0.001", + "requestId": "7e602085-fbf0-4834-a536-47d807abe2c9", + "traceId": "0e3ace9f9c7e45ad9f7370106142787d", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:50.567Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f72434b9-2951-4e90-9b96-cbcd7a61e25b, da9eb45c-12f6-4418-85a5-da1004708798", + "traceId": "c51e3e790db64937be11358d27b20f98", + "evidence": "inboundId=2085991042023731201", + "checkedAt": "2026-08-08T07:26:50.592Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f72434b9-2951-4e90-9b96-cbcd7a61e25b, da9eb45c-12f6-4418-85a5-da1004708798", + "traceId": "c51e3e790db64937be11358d27b20f98", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T07:26:50.592Z" + }, + { + "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/2085991042023731201/weight-results/2085991103889715202/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "换算后重量不能小于 0.001 KG", + "requestId": "c9cc9e6a-007e-4e7e-883e-be3b3f9778f7", + "traceId": "a02e3da3e6274458b7623023893ecf4d", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:50.624Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ede7c3f4-b88e-4df9-a52c-14c8dfa31586, 086b6a77-2229-469f-ad7f-7b09f7b04c29", + "traceId": "2d4a3483914d4020b2e13434eeae0166", + "evidence": "inboundId=2085991042023731201", + "checkedAt": "2026-08-08T07:26:50.653Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ede7c3f4-b88e-4df9-a52c-14c8dfa31586, 086b6a77-2229-469f-ad7f-7b09f7b04c29", + "traceId": "2d4a3483914d4020b2e13434eeae0166", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T07:26:50.653Z" + }, + { + "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/2085991042023731201/weight-results/2085991103889715202/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "adjustedWeightValue: numeric value out of bounds (<15 digits>.<3 digits> expected)", + "requestId": "c1999cd9-0545-4a24-bab4-f4f255ae7371", + "traceId": "a6b5d98ba42246359142773f47e18ec2", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:50.683Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "324d6e58-b802-43f5-b052-436479ac7119, f15398d4-c94c-446a-849a-16b11736bf10", + "traceId": "78963abbb5e144089e5674ad44345a5b", + "evidence": "inboundId=2085991042023731201", + "checkedAt": "2026-08-08T07:26:50.715Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "324d6e58-b802-43f5-b052-436479ac7119, f15398d4-c94c-446a-849a-16b11736bf10", + "traceId": "78963abbb5e144089e5674ad44345a5b", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T07:26:50.715Z" + }, + { + "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/2085991042023731201/weight-results/2085991103889715202/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ad1e4628-3b12-4779-b1a3-694630bd6f96, dd75284f-242b-4718-b94e-6220eebc3870", + "traceId": "93f3ee288d4d4c70bc4b5dd25d064590", + "evidence": "adjusted=10.125 LB", + "checkedAt": "2026-08-08T07:26:50.758Z" + }, + { + "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/2085991042023731201/weight-results/2085991103889715202/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ad1e4628-3b12-4779-b1a3-694630bd6f96, dd75284f-242b-4718-b94e-6220eebc3870", + "traceId": "93f3ee288d4d4c70bc4b5dd25d064590", + "evidence": "adjusted=10.125 LB, finalKg=4.593, expectedKg=4.593", + "checkedAt": "2026-08-08T07:26:50.758Z" + }, + { + "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/2085991042023731201/weight-results/2085991103889715202?tenantId=10001&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e3feef8a-b668-4a91-a9ef-fd148eb139a7, e0bc657d-84bf-4381-a3b8-ed65f0544828", + "traceId": "49f6bd17e243434881436423d18668c7", + "evidence": "resultId=2085991103889715202, version=2", + "checkedAt": "2026-08-08T07:26:50.811Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2f12db16-6953-4714-a6eb-23c5e2a68ad3, d5f1921b-6593-4d3d-beed-de38be18d1fd", + "traceId": "6ec66b98114d4d7485c909bb8edaa99d", + "evidence": "inboundId=2085991042023731201", + "checkedAt": "2026-08-08T07:26:50.832Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2f12db16-6953-4714-a6eb-23c5e2a68ad3, d5f1921b-6593-4d3d-beed-de38be18d1fd", + "traceId": "6ec66b98114d4d7485c909bb8edaa99d", + "evidence": "resultMissing=true, baseline=null, actual=null", + "checkedAt": "2026-08-08T07:26:50.832Z" + }, + { + "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/2085991042023731201/2085991100095987714" + }, + "http": 200, + "code": "A0404", + "message": "称重图片不存在", + "requestId": "d8690cdb-fe28-4ea0-8594-7c1949aa44c9", + "traceId": "2e6a95661caf4e52b666417284aa3cbe", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:26:50.855Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4f446c88-9d2d-418e-84f4-062529cbacec, 12e1f7ae-3191-4d9b-832b-3a216704772c", + "traceId": "052fedf89ad2455a8813059fc4457be1", + "evidence": "inboundId=2085991042023731201", + "checkedAt": "2026-08-08T07:26:50.887Z" + }, + { + "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/2085991042023731201/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4f446c88-9d2d-418e-84f4-062529cbacec, 12e1f7ae-3191-4d9b-832b-3a216704772c", + "traceId": "052fedf89ad2455a8813059fc4457be1", + "evidence": "leftovers=0, baseline=null, actual=null", + "checkedAt": "2026-08-08T07:26:50.888Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 测试账号登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c2369070-0ca2-4e2b-9f13-9f779ec8d3a6, c3be86a4-89eb-43cc-b98e-3a70f410b656", + "traceId": "77f9007132b546bba8a3d184bba6fa8a", + "evidence": "username=merchant_admin", + "checkedAt": "2026-08-08T07:26:51.228Z" + }, + { + "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": "375e4ef2-58ed-4724-90c8-41e827e63df4, 14e98cc4-52b9-4e34-9123-a2f8ebc9285f", + "traceId": "dda4a780d2904be2adfd952559976e57", + "evidence": "", + "checkedAt": "2026-08-08T07:26:51.260Z" + }, + { + "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": "375e4ef2-58ed-4724-90c8-41e827e63df4, 14e98cc4-52b9-4e34-9123-a2f8ebc9285f", + "traceId": "dda4a780d2904be2adfd952559976e57", + "evidence": "tenantId=10001, status=ACTIVE", + "checkedAt": "2026-08-08T07:26:51.260Z" + }, + { + "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": "98440202-c382-43a2-b024-e9684a579198, b86b3d0e-b245-4f85-8a51-698fdbdd6b10", + "traceId": "c4be2c7c0b534c0b86d6ad639110c8f1", + "evidence": "tenantId=10001", + "checkedAt": "2026-08-08T07:26:51.292Z" + }, + { + "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": "98440202-c382-43a2-b024-e9684a579198, b86b3d0e-b245-4f85-8a51-698fdbdd6b10", + "traceId": "c4be2c7c0b534c0b86d6ad639110c8f1", + "evidence": "types=SMALL,MEDIUM,LARGE,EXTRA_LARGE", + "checkedAt": "2026-08-08T07:26:51.292Z" + }, + { + "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": "500c7231-d35c-4822-8598-bfd8e7b79981, 5ed97733-f4a8-4cab-9dff-d3320f9e4894", + "traceId": "1945a26882c74b21bd7d66235cc540f4", + "evidence": "", + "checkedAt": "2026-08-08T07:26:51.325Z" + }, + { + "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": "500c7231-d35c-4822-8598-bfd8e7b79981, 5ed97733-f4a8-4cab-9dff-d3320f9e4894", + "traceId": "1945a26882c74b21bd7d66235cc540f4", + "evidence": "count=2", + "checkedAt": "2026-08-08T07:26:51.325Z" + }, + { + "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": "20dad741-07a7-4721-95a1-dde3665827cf, 2306b088-a0a5-4bba-9b12-60ff7c9e3cb6", + "traceId": "5671fd5fb4154fcaaf96ad61ddc77d61", + "evidence": "", + "checkedAt": "2026-08-08T07:26:51.373Z" + }, + { + "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": "20dad741-07a7-4721-95a1-dde3665827cf, 2306b088-a0a5-4bba-9b12-60ff7c9e3cb6", + "traceId": "5671fd5fb4154fcaaf96ad61ddc77d61", + "evidence": "count=200", + "checkedAt": "2026-08-08T07:26:51.373Z" + }, + { + "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": "97094bf6-de21-46fc-8c07-fa3274ad3200, 715f2d3a-42da-46bb-9140-a45add46de3b", + "traceId": "7a2aa5f6937d4b5fbcffb443b3f41284", + "evidence": "", + "checkedAt": "2026-08-08T07:26:51.398Z" + }, + { + "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": "97094bf6-de21-46fc-8c07-fa3274ad3200, 715f2d3a-42da-46bb-9140-a45add46de3b", + "traceId": "7a2aa5f6937d4b5fbcffb443b3f41284", + "evidence": "count=15", + "checkedAt": "2026-08-08T07:26:51.398Z" + }, + { + "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": "f2070896-74dd-41b5-95f5-f738cb5d384f, f8bdad08-a84e-42a9-b6d0-7b7b440439de", + "traceId": "8435875994ee4bd1b9023b2465f7752a", + "evidence": "", + "checkedAt": "2026-08-08T07:26:51.430Z" + }, + { + "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": "1ffd1da4-fdb3-44a3-b7f1-9252a73f43a1, 30b3ae1e-56aa-4b9d-8f8d-814c722012b5", + "traceId": "34c166de01c74f1ca740a9d5a2693a0a", + "evidence": "contentType=image/png", + "checkedAt": "2026-08-08T07:26:51.456Z" + }, + { + "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": "1ffd1da4-fdb3-44a3-b7f1-9252a73f43a1, 30b3ae1e-56aa-4b9d-8f8d-814c722012b5", + "traceId": "34c166de01c74f1ca740a9d5a2693a0a", + "evidence": "fileIdType=string, contentType=image/png", + "checkedAt": "2026-08-08T07:26:51.456Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Client 可下载本轮产品图片", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/files/product-images/2085991108002250753" + }, + "http": 200, + "code": null, + "message": null, + "requestId": "d9ee73ed-cbed-4f8a-a702-e7d62e9c2bf6, aa3e06b1-b298-4317-bc67-420e0e0b111d", + "traceId": "6f9b1dfe17c64328b114eefc0d19c98d", + "evidence": "bytes=68, contentType=image/png", + "checkedAt": "2026-08-08T07:26:51.489Z" + }, + { + "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": "99481f8a-8634-475e-9c30-0e0541fe2804, fff7805f-308b-4082-9352-046414b45360", + "traceId": "852f3a24fafd46728c94a1d6cfca3183", + "evidence": "marker=ADMIN-API-20260808072627117-MOJIA", + "checkedAt": "2026-08-08T07:26:51.564Z" + }, + { + "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": "fc19678f-131b-48de-b1eb-d87de51ea016, 19b881f6-f622-4460-beeb-90fec612ed8e", + "traceId": "463adb229d1c463692b2cd7b19acfa24", + "evidence": "", + "checkedAt": "2026-08-08T07:26:51.605Z" + }, + { + "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": "fc19678f-131b-48de-b1eb-d87de51ea016, 19b881f6-f622-4460-beeb-90fec612ed8e", + "traceId": "463adb229d1c463692b2cd7b19acfa24", + "evidence": "orderId=2085991108417486849, replayedId=2085991108417486849", + "checkedAt": "2026-08-08T07:26:51.605Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 查询隔离订单草稿", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991108417486849" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ddb908fe-aa28-4cd7-b067-9956d907ad8d, d6490236-cec1-418d-905f-7649344d9de5", + "traceId": "27e3ce93de2a480c83f4d2aef639b38b", + "evidence": "", + "checkedAt": "2026-08-08T07:26:51.632Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 草稿身份、marker 和状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991108417486849" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ddb908fe-aa28-4cd7-b067-9956d907ad8d, d6490236-cec1-418d-905f-7649344d9de5", + "traceId": "27e3ce93de2a480c83f4d2aef639b38b", + "evidence": "orderNo=FL2085991108417486849, status=DRAFT", + "checkedAt": "2026-08-08T07:26:51.632Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991108417486849" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ddb908fe-aa28-4cd7-b067-9956d907ad8d, d6490236-cec1-418d-905f-7649344d9de5", + "traceId": "27e3ce93de2a480c83f4d2aef639b38b", + "evidence": "cargoes=4, imageFileId=2085991108002250753", + "checkedAt": "2026-08-08T07:26:51.632Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 提交隔离订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/merchant/v1/orders/first-leg/2085991108417486849/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "39a77976-c242-4cb1-83a2-4a4cc11da3f0, 88d8148b-5946-4d8d-b860-65959baebcf0", + "traceId": "698da444e141481da335bd90b0388c2c", + "evidence": "orderId=2085991108417486849", + "checkedAt": "2026-08-08T07:26:51.703Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 回查已提交订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991108417486849" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ebde31d6-9ada-48eb-b973-f2aa6121a006, 06e7f637-820c-41a1-a819-8da8740b3f2a", + "traceId": "f0e421f4f7354c8d80f2547962602e2a", + "evidence": "", + "checkedAt": "2026-08-08T07:26:51.740Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 订单已进入待审核状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991108417486849" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ebde31d6-9ada-48eb-b973-f2aa6121a006, 06e7f637-820c-41a1-a819-8da8740b3f2a", + "traceId": "f0e421f4f7354c8d80f2547962602e2a", + "evidence": "status=SUBMITTED", + "checkedAt": "2026-08-08T07:26:51.740Z" + }, + { + "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=FL2085991108417486849" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3b590fc8-f682-4eef-8e4f-2f0726d5dfb4, f22d9804-a5a6-4a73-a92a-098a1c8cef7a", + "traceId": "ea8d977ee5b846da95f4866ae3da0744", + "evidence": "", + "checkedAt": "2026-08-08T07:26:51.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=FL2085991108417486849" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3b590fc8-f682-4eef-8e4f-2f0726d5dfb4, f22d9804-a5a6-4a73-a92a-098a1c8cef7a", + "traceId": "ea8d977ee5b846da95f4866ae3da0744", + "evidence": "orderId=2085991108417486849, found=true", + "checkedAt": "2026-08-08T07:26:51.781Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询统一订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085991108417486849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3273a311-9a9c-4adf-8cdb-f8c49c197a4f, a89449a0-aad3-42c4-ad03-72dae902b52e", + "traceId": "4ea724703e4e45e7ad13abc101f7e206", + "evidence": "", + "checkedAt": "2026-08-08T07:26:51.820Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 统一订单详情身份与待审核状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085991108417486849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3273a311-9a9c-4adf-8cdb-f8c49c197a4f, a89449a0-aad3-42c4-ad03-72dae902b52e", + "traceId": "4ea724703e4e45e7ad13abc101f7e206", + "evidence": "mainStatus=PENDING_REVIEW, timeline=2", + "checkedAt": "2026-08-08T07:26:51.820Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085991108417486849&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8f7268e7-810a-4939-a707-3adb9699a55a, 2cd5754b-dac0-4895-8ada-7574d1115659", + "traceId": "0f39dfd1356343c4b81f350daeac32a9", + "evidence": "", + "checkedAt": "2026-08-08T07:26:51.848Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单列表只核对本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085991108417486849&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8f7268e7-810a-4939-a707-3adb9699a55a, 2cd5754b-dac0-4895-8ada-7574d1115659", + "traceId": "0f39dfd1356343c4b81f350daeac32a9", + "evidence": "orderId=2085991108417486849, found=true", + "checkedAt": "2026-08-08T07:26:51.849Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991108417486849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e794dfcd-02bb-4b25-b82d-7933908c0bb3, 35700a3e-fa2f-4ea3-805b-3a09a8274ce0", + "traceId": "ef28d3a48be24dfa8c3b988753b4d715", + "evidence": "", + "checkedAt": "2026-08-08T07:26:51.880Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单详情聚合结构完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991108417486849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e794dfcd-02bb-4b25-b82d-7933908c0bb3, 35700a3e-fa2f-4ea3-805b-3a09a8274ce0", + "traceId": "ef28d3a48be24dfa8c3b988753b4d715", + "evidence": "cargoes=4, history=2", + "checkedAt": "2026-08-08T07:26:51.880Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991108417486849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e794dfcd-02bb-4b25-b82d-7933908c0bb3, 35700a3e-fa2f-4ea3-805b-3a09a8274ce0", + "traceId": "ef28d3a48be24dfa8c3b988753b4d715", + "evidence": "cargoes=4, imageFileId=2085991108002250753", + "checkedAt": "2026-08-08T07:26:51.880Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 为本轮订单添加内部备注", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991108417486849/internal-notes?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "491bc189-e8a1-4727-8d75-17a46b1e626e, 880ba06c-beed-4f14-bc8e-04b79a50409c", + "traceId": "1846b86e70354ce9927fc211fecfcf9f", + "evidence": "", + "checkedAt": "2026-08-08T07:26:51.905Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 审核通过本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991108417486849/approve?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b1730ddf-9d9c-49e0-8733-7e2576b1fd03, b7a6c1d6-40c8-4fa2-b1d7-741697de0ba5", + "traceId": "be317c990897444691949a3ce1a9169a", + "evidence": "orderId=2085991108417486849", + "checkedAt": "2026-08-08T07:26:51.949Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "审核后生成隔离入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085991108417486849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "27918e1a-6b11-4a33-8ad5-6b416d0b4e14, cd5aa9c1-5041-4818-a617-519a9a3e2434", + "traceId": "634c6898a2114ce98f244c2802706505", + "evidence": "inboundId=2085991117634449410", + "checkedAt": "2026-08-08T07:26:54.116Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮入库单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991117634449410?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "df08135a-836c-42a1-8a27-0fb433f36848, 760141f7-6a2c-468c-a907-a59e1acc76d7", + "traceId": "5df8849e97264b82859c7ac2e11b34f6", + "evidence": "inboundId=2085991117634449410", + "checkedAt": "2026-08-08T07:26:54.154Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "隔离入库单 marker 来源与可测量状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991117634449410?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "df08135a-836c-42a1-8a27-0fb433f36848, 760141f7-6a2c-468c-a907-a59e1acc76d7", + "traceId": "5df8849e97264b82859c7ac2e11b34f6", + "evidence": "markerFound=true, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T07:26:54.155Z" + }, + { + "module": "orders", + "scenario": null, + "name": "入库单详情包含托盘库位、文件、备注和状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991117634449410?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "df08135a-836c-42a1-8a27-0fb433f36848, 760141f7-6a2c-468c-a907-a59e1acc76d7", + "traceId": "5df8849e97264b82859c7ac2e11b34f6", + "evidence": "inboundId=2085991117634449410, history=1", + "checkedAt": "2026-08-08T07:26:54.155Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询入库单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085991108417486849&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "755ef2fd-a564-4c60-82bb-af15617edcdc, 2a9ba78b-8a20-41b3-b12a-4df564545487", + "traceId": "a61aa88d8f414a4d9890e9dc02024ac4", + "evidence": "", + "checkedAt": "2026-08-08T07:26:54.185Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 入库单列表只核对本轮入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085991108417486849&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "755ef2fd-a564-4c60-82bb-af15617edcdc, 2a9ba78b-8a20-41b3-b12a-4df564545487", + "traceId": "a61aa88d8f414a4d9890e9dc02024ac4", + "evidence": "inboundId=2085991117634449410, total=1", + "checkedAt": "2026-08-08T07:26:54.185Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮订单履约任务", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085991108417486849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fbe6c93e-e49e-47e1-97b1-b5beedaf2ecd, 6f7ed706-a339-4d9d-8740-5d4758086338", + "traceId": "6f3dd59b71254645b9104c94479f0eb6", + "evidence": "新订单应生成可查询的履约任务", + "checkedAt": "2026-08-08T07:26:54.209Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "履约任务与本轮订单和客户一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085991108417486849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fbe6c93e-e49e-47e1-97b1-b5beedaf2ecd, 6f7ed706-a339-4d9d-8740-5d4758086338", + "traceId": "6f3dd59b71254645b9104c94479f0eb6", + "evidence": "taskId=2085991117630255105, status=PENDING_ASSIGNMENT", + "checkedAt": "2026-08-08T07:26:54.210Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询本轮履约任务分配历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085991117630255105/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "de48567c-3244-478a-8801-6368ebb11476, f400caf8-69b3-46f9-933d-5f2c8b8f4b9b", + "traceId": "91167c7760224c0d989bbbfb95ba3408", + "evidence": "", + "checkedAt": "2026-08-08T07:26:54.242Z" + }, + { + "module": "orders", + "scenario": null, + "name": "履约分配历史分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085991117630255105/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "de48567c-3244-478a-8801-6368ebb11476, f400caf8-69b3-46f9-933d-5f2c8b8f4b9b", + "traceId": "91167c7760224c0d989bbbfb95ba3408", + "evidence": "taskId=2085991117630255105, total=0", + "checkedAt": "2026-08-08T07:26:54.243Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 受理本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991108417486849/accept?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "698737ce-0cbe-48ee-a0b8-3ce0f2f3329e, 1d1e8db6-5a05-4e0f-ba50-6a9cfea6b2d2", + "traceId": "136db912ba8745c485cd854c033e3bd9", + "evidence": "", + "checkedAt": "2026-08-08T07:26:54.280Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 启动本轮订单履约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991108417486849/start?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cc737116-f17e-4404-b935-486f163cb48f, da41e543-64e4-472d-9355-e976f1df7378", + "traceId": "0d679a58e0b543efa02fd5ea2edb7d74", + "evidence": "", + "checkedAt": "2026-08-08T07:26:54.325Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 回查本轮订单履约状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991108417486849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "613990f8-81c3-4ce1-8e32-bdb0f2015399, 255eb9d5-9244-40b5-9c2c-1c22b1c08a70", + "traceId": "e67fca4ccd5f43768e2d8407a148d699", + "evidence": "", + "checkedAt": "2026-08-08T07:26:54.384Z" + }, + { + "module": "orders", + "scenario": null, + "name": "本轮订单已进入处理中且保留状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991108417486849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "613990f8-81c3-4ce1-8e32-bdb0f2015399, 255eb9d5-9244-40b5-9c2c-1c22b1c08a70", + "traceId": "e67fca4ccd5f43768e2d8407a148d699", + "evidence": "status=PROCESSING, history=5", + "checkedAt": "2026-08-08T07:26:54.384Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "查询隔离入库单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991117634449410?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dc9d77e9-9c6b-4878-b45c-3e1d10ade158, f2e82971-cee1-44e9-9cf7-479b8dc5065b", + "traceId": "47a60453b39946fdbef4b278a44d6bae", + "evidence": "inboundId=2085991117634449410, tenantId=10001", + "checkedAt": "2026-08-08T07:26:54.413Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "隔离入库单身份与可测量状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991117634449410?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dc9d77e9-9c6b-4878-b45c-3e1d10ade158, f2e82971-cee1-44e9-9cf7-479b8dc5065b", + "traceId": "47a60453b39946fdbef4b278a44d6bae", + "evidence": "identity=true, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T07:26:54.413Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "生成箱唛 PDF 并冻结稳定箱码", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/inbounds/2085991117634449410/carton-label-pdf?tenantId=10001" + }, + "http": 200, + "code": null, + "message": "13941 bytes (application/pdf)", + "requestId": "e236e9e5-cde7-4ca3-84be-bd3ffdd9515c, 69940439-79ab-40cf-bb58-62fdc55db736, 5e6b293d-74dd-4743-bf0c-424a1d816f60", + "traceId": "01f1b50444f84b64908be6033cb6a99d, 24b7e53d560d415287ad5d597eed2660", + "evidence": "contentType=application/pdf, bytes=13941", + "checkedAt": "2026-08-08T07:26:54.573Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "首次打印后回查冻结箱数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991117634449410?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f56171b5-bc5e-4818-b321-fd3d6869c49a, 5598862d-0fd8-4c5e-9895-b90e8bad8743", + "traceId": "1f19cb1dc9434a93b916bb56c80c8a12", + "evidence": "", + "checkedAt": "2026-08-08T07:26:54.603Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "首次打印按订单货物冻结原始总箱数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991117634449410?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f56171b5-bc5e-4818-b321-fd3d6869c49a, 5598862d-0fd8-4c5e-9895-b90e8bad8743", + "traceId": "1f19cb1dc9434a93b916bb56c80c8a12", + "evidence": "inboundCodeStable=true, totalPackageCount=4", + "checkedAt": "2026-08-08T07:26:54.603Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "重复整单打印复用已冻结箱码映射", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/inbounds/2085991117634449410/carton-label-pdf?tenantId=10001" + }, + "http": 200, + "code": null, + "message": "13941 bytes (application/pdf)", + "requestId": "48f36a34-02ab-4341-9001-0c91caea7d7c, 5fc8f35d-ea19-4cb0-9957-f383c872ec27, 898ff501-f544-4b31-a3c1-94a7b5597597", + "traceId": "19befa3aa08d43e9a9a5ecff7cb4af96, fc45b2ea419944b5800e78167175efee", + "evidence": "boxCode=RK-2085991108417486849#4-1, contentType=application/pdf, bytes=13941", + "checkedAt": "2026-08-08T07:26:54.735Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "指定第1箱补打复用已冻结箱码映射", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/inbounds/2085991117634449410/carton-label-pdf?tenantId=10001&cartonIndex=1" + }, + "http": 200, + "code": null, + "message": "7658 bytes (application/pdf)", + "requestId": "daac85a8-c2fe-4a40-975a-5d6fb6fef124, 5d0efe15-825c-461a-8eef-d88db1abb94f, 4ebeafdd-106a-4f7c-a179-f77c2f8357c5", + "traceId": "47cbae6342994338b5307d2934ea3242, 41092170f46643aaa07b20405a21dfe0", + "evidence": "boxCode=RK-2085991108417486849#4-1, cartonIndex=1, contentType=application/pdf, bytes=7658", + "checkedAt": "2026-08-08T07:26:54.864Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "模拟墨家首次扫描单箱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "26a5298a-c611-4886-b160-675c2ee92d4f, 2ff0a744-ce89-4b3b-8fe3-714e4c67a856", + "traceId": "aad7e512b1934faa9d40c5ec5c19ba1a", + "evidence": "boxCode=RK-2085991108417486849#4-1, machineNo=MJ-ADMIN-E2E-01", + "checkedAt": "2026-08-08T07:26:54.927Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "首次扫描新增一条且默认代表1箱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "26a5298a-c611-4886-b160-675c2ee92d4f, 2ff0a744-ce89-4b3b-8fe3-714e4c67a856", + "traceId": "aad7e512b1934faa9d40c5ec5c19ba1a", + "evidence": "created=true, confirmedPackageCount=1", + "checkedAt": "2026-08-08T07:26:54.927Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "重复打印及指定箱补打后原箱码仍可解析", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "26a5298a-c611-4886-b160-675c2ee92d4f, 2ff0a744-ce89-4b3b-8fe3-714e4c67a856", + "traceId": "aad7e512b1934faa9d40c5ec5c19ba1a", + "evidence": "boxCodeStable=true, resolvedInboundId=2085991117634449410", + "checkedAt": "2026-08-08T07:26:54.927Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "查询箱级测量详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4c77817f-09a6-4edf-9431-cd27e9e5b454, dab053c8-ba18-4352-a345-2175095d8d83", + "traceId": "a81ba22234ae4ccb82dffd5f56a9563e", + "evidence": "measurementId=2085991122537590785", + "checkedAt": "2026-08-08T07:26:54.952Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "箱级查询回显箱码、尺寸、图片与设备信息", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4c77817f-09a6-4edf-9431-cd27e9e5b454, dab053c8-ba18-4352-a345-2175095d8d83", + "traceId": "a81ba22234ae4ccb82dffd5f56a9563e", + "evidence": "itemFound=true, imageFileId=2085991122493571074", + "checkedAt": "2026-08-08T07:26:54.953Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "人工确认当前测量代表箱数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement/items/2085991122550173698/confirmed-package-count?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5e707b5e-8d07-4928-afc7-9a46ce2f009c, 053639f8-b674-4cc5-90b0-985e755196ff", + "traceId": "13be7207aa4a4c419963838ec7a98e43", + "evidence": "confirmedPackageCount=4", + "checkedAt": "2026-08-08T07:26:54.996Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "人工箱数更新且测量版本递增", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement/items/2085991122550173698/confirmed-package-count?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5e707b5e-8d07-4928-afc7-9a46ce2f009c, 053639f8-b674-4cc5-90b0-985e755196ff", + "traceId": "13be7207aa4a4c419963838ec7a98e43", + "evidence": "version=2", + "checkedAt": "2026-08-08T07:26:54.996Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "同箱号重新扫描覆盖当前记录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "553339a3-7b94-48e6-a782-9183eb896ad9, 2be5a815-0ef5-44fc-825a-7e3bb06563d3", + "traceId": "0d5ee31e0ab2408eb980cacd7038b9e2", + "evidence": "boxCode=RK-2085991108417486849#4-1, machineNo=MJ-ADMIN-E2E-02", + "checkedAt": "2026-08-08T07:26:55.077Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "覆盖保留同一条记录和人工箱数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "553339a3-7b94-48e6-a782-9183eb896ad9, 2be5a815-0ef5-44fc-825a-7e3bb06563d3", + "traceId": "0d5ee31e0ab2408eb980cacd7038b9e2", + "evidence": "sameItem=true, confirmedPackageCount=4", + "checkedAt": "2026-08-08T07:26:55.077Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "回查覆盖后的尺寸与体积结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "99644530-c0e9-4e53-83c9-ffb2c891f82c, 1fcebe67-bd63-4173-ad60-d8be27ff7a2d", + "traceId": "f26593c18b914927a360d9ed36d578ea", + "evidence": "", + "checkedAt": "2026-08-08T07:26:55.116Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "覆盖尺寸、箱数和服务端体积公式正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "99644530-c0e9-4e53-83c9-ffb2c891f82c, 1fcebe67-bd63-4173-ad60-d8be27ff7a2d", + "traceId": "f26593c18b914927a360d9ed36d578ea", + "evidence": "weightedOuter=64x54x54, unitVolume=0.187, totalVolume=0.748, volumeWeight=124.916, girth=204.5", + "checkedAt": "2026-08-08T07:26:55.116Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "保存同一测量批次草稿", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement/draft?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1a7365c2-cfd0-4fb6-a727-626adfaae413, a0987f58-9aa2-4f26-a2ec-52de36a6010f", + "traceId": "5be29e696c30481797f6febdf194e519", + "evidence": "measurementId=2085991122537590785, items=1", + "checkedAt": "2026-08-08T07:26:55.154Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "草稿沿用批次并递增版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement/draft?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1a7365c2-cfd0-4fb6-a727-626adfaae413, a0987f58-9aa2-4f26-a2ec-52de36a6010f", + "traceId": "5be29e696c30481797f6febdf194e519", + "evidence": "status=DRAFT, version=4", + "checkedAt": "2026-08-08T07:26:55.154Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "提交测量审核", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement/submit?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9419e707-4f9b-47c2-bf92-1e9934c40c86, 0b18007b-f6a0-4da2-8bdb-cf96f0b2c62a", + "traceId": "60edf1509ff24020bba6aca36c20ec52", + "evidence": "measurementId=2085991122537590785", + "checkedAt": "2026-08-08T07:26:55.199Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "提交后进入待测量审核状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement/submit?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9419e707-4f9b-47c2-bf92-1e9934c40c86, 0b18007b-f6a0-4da2-8bdb-cf96f0b2c62a", + "traceId": "60edf1509ff24020bba6aca36c20ec52", + "evidence": "processStatus=MEASURE_PENDING, reviewStatus=PENDING", + "checkedAt": "2026-08-08T07:26:55.199Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "测量提交后拒绝设备覆盖并返回中文提示", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "A0409", + "message": "测量已提交,设备不能新增或覆盖数据", + "requestId": "259462de-1fd7-4aee-ba71-67d9440a02de", + "traceId": "1f42198c0db84f6084d354b1beb11857", + "evidence": "HTTP=200, code=A0409, chineseMessage=true", + "checkedAt": "2026-08-08T07:26:55.238Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "审核前读取最新入库单版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991117634449410?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7937ede3-0735-400b-b3d1-a3499a524d31, 462d1105-07ff-4005-839f-a7c0874a108e", + "traceId": "5955d23d9430456ba5ea32bd47a5a738", + "evidence": "", + "checkedAt": "2026-08-08T07:26:55.262Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "审核前状态和版本有效", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991117634449410?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7937ede3-0735-400b-b3d1-a3499a524d31, 462d1105-07ff-4005-839f-a7c0874a108e", + "traceId": "5955d23d9430456ba5ea32bd47a5a738", + "evidence": "status=MEASURE_PENDING, version=1", + "checkedAt": "2026-08-08T07:26:55.262Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "Admin 审核通过墨家测量", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/inbounds/2085991117634449410/measurements/approve?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4a82c50f-2016-495e-8b7c-4bc8061b34fe, 4466c987-3189-442f-86e2-e784183048fb", + "traceId": "f438f2cf4f3b461b9e25b30b31b5a27c", + "evidence": "measurementId=2085991122537590785", + "checkedAt": "2026-08-08T07:26:55.307Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "查询审核后的最终测量状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5da0a7b7-3d2e-4098-ae1e-942936990366, c2daf308-a591-44c4-ac3e-2d9772e771f4", + "traceId": "b085397530ab4847b9bb0fee15d0873b", + "evidence": "", + "checkedAt": "2026-08-08T07:26:55.346Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "审核后入库与测量状态闭环且结果未变化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085991117634449410/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5da0a7b7-3d2e-4098-ae1e-942936990366, c2daf308-a591-44c4-ac3e-2d9772e771f4", + "traceId": "b085397530ab4847b9bb0fee15d0873b", + "evidence": "processStatus=INBOUNDED, measurementStatus=APPROVED, packages=4", + "checkedAt": "2026-08-08T07:26:55.346Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "order-service 状态响应使用统一成功体", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8d4dcf7b-a6b1-4e4c-83d4-661b5830e9c8, c53b0fb0-c2c3-474a-b79e-48181f876ec0", + "traceId": "43777b42998040a3b1df463215e1427a", + "evidence": "HTTP=200, code=200", + "checkedAt": "2026-08-08T07:26:55.370Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "order-service 状态字段完整且 readiness 语义明确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8d4dcf7b-a6b1-4e4c-83d4-661b5830e9c8, c53b0fb0-c2c3-474a-b79e-48181f876ec0", + "traceId": "43777b42998040a3b1df463215e1427a", + "evidence": "service=order-service, status=UP, readiness=UP", + "checkedAt": "2026-08-08T07:26:55.370Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "firstleg-service 状态响应使用统一成功体", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8983343d-ec32-48fd-8776-3d64dcc7fd3c, 5e46e42b-6eef-4a24-8684-d225b63d6fef", + "traceId": "46b9292b9da44afdaa77dd495b1e5689", + "evidence": "HTTP=200, code=200", + "checkedAt": "2026-08-08T07:26:55.402Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "firstleg-service 状态字段完整且 readiness 语义明确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8983343d-ec32-48fd-8776-3d64dcc7fd3c, 5e46e42b-6eef-4a24-8684-d225b63d6fef", + "traceId": "46b9292b9da44afdaa77dd495b1e5689", + "evidence": "service=firstleg-service, status=UP, readiness=UP", + "checkedAt": "2026-08-08T07:26:55.402Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "file-service 状态响应使用统一成功体", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "69fead66-e120-4943-b322-745ad88cb500, ec3ff6e3-5528-4a55-989c-6fdc47eb4a63", + "traceId": "168885a6ff124fb780d6573d7fd72024", + "evidence": "HTTP=200, code=200", + "checkedAt": "2026-08-08T07:26:55.434Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "file-service 状态字段完整且 readiness 语义明确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "69fead66-e120-4943-b322-745ad88cb500, ec3ff6e3-5528-4a55-989c-6fdc47eb4a63", + "traceId": "168885a6ff124fb780d6573d7fd72024", + "evidence": "service=file-service, status=UP, readiness=UP", + "checkedAt": "2026-08-08T07:26:55.434Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "warehouse-service 状态响应使用统一成功体", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouses/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e56e7540-b794-4085-960c-c71695aa1ae7, c7cc0553-6b8d-4e08-ad98-f573ac054952", + "traceId": "96fc9d6745c84a158415ce4a37607fad", + "evidence": "HTTP=200, code=200", + "checkedAt": "2026-08-08T07:26:55.470Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "warehouse-service 状态字段完整且 readiness 语义明确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouses/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e56e7540-b794-4085-960c-c71695aa1ae7, c7cc0553-6b8d-4e08-ad98-f573ac054952", + "traceId": "96fc9d6745c84a158415ce4a37607fad", + "evidence": "service=warehouse-service, status=UP, readiness=UP", + "checkedAt": "2026-08-08T07:26:55.470Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "平台接口未携带令牌返回 401", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "21367576-894", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:26:55.491Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "平台接口伪造令牌返回 401", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "304305cb-895", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:26:55.507Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "未认证请求不返回业务成功码", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "21367576-896", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:26:55.524Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b7b1605f-d9f2-4922-b814-e4c055bc60f8, 9baafb4d-40f8-4eae-8ecc-f7443eb25ea1", + "traceId": "ddea7b1d602940c7884023c8fcc4a3d3", + "evidence": "path=/api/platform/v1/warehouse-admin?page=1&size=5&status=ACTIVE", + "checkedAt": "2026-08-08T07:26:55.550Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b7b1605f-d9f2-4922-b814-e4c055bc60f8, 9baafb4d-40f8-4eae-8ecc-f7443eb25ea1", + "traceId": "ddea7b1d602940c7884023c8fcc4a3d3", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:26:55.551Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&tenantId=0&warehouseType=FBA" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7c5ff2b0-b7b1-4946-9caa-09f020278dc9, c3e95d54-1c03-4f0f-ba95-f6938b21e54e", + "traceId": "7b264e4f5e4648899f4c668812a9028e", + "evidence": "path=/api/platform/v1/warehouse-admin?page=1&size=5&tenantId=0&warehouseType=FBA", + "checkedAt": "2026-08-08T07:26:55.582Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&tenantId=0&warehouseType=FBA" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7c5ff2b0-b7b1-4946-9caa-09f020278dc9, c3e95d54-1c03-4f0f-ba95-f6938b21e54e", + "traceId": "7b264e4f5e4648899f4c668812a9028e", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:26:55.582Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库非法状态安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&status=NOT_A_STATUS" + }, + "http": 200, + "code": "A0422", + "message": "status: must match \"ACTIVE|INACTIVE\"", + "requestId": "233a103b-0ea4-49b4-853e-59c47a07417f", + "traceId": "d2b9f240ce0643f4af862500295df961", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:55.609Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库客户作用域安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&tenantId=10001" + }, + "http": 200, + "code": "A0400", + "message": "Platform resource scope must be 0 / 平台公共资源作用域必须为0", + "requestId": "25f69193-5da0-438e-a8ab-1112203db507", + "traceId": "7a071d4c72494984b275167c5ad4086f", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:26:55.639Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e2e1a929-3161-4bea-9b16-0daaf03d1bcd, 7dc14621-c9b1-475b-b8b6-a12732623e63", + "traceId": "814ad46d7c1e418bbee71f50cce82d5a", + "evidence": "path=/api/platform/v1/locations?page=1&size=5&tenantId=0", + "checkedAt": "2026-08-08T07:26:55.673Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e2e1a929-3161-4bea-9b16-0daaf03d1bcd, 7dc14621-c9b1-475b-b8b6-a12732623e63", + "traceId": "814ad46d7c1e418bbee71f50cce82d5a", + "evidence": "records=3, current=1, size=5", + "checkedAt": "2026-08-08T07:26:55.673Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "24f265cd-109f-42c5-b133-165ac8e9c39a, e5361d49-f672-418d-887e-edc7db320bcd", + "traceId": "06981ca746e14de3b130de56dfdeca0b", + "evidence": "path=/api/platform/v1/pallets?page=1&size=5&tenantId=0", + "checkedAt": "2026-08-08T07:26:55.695Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "24f265cd-109f-42c5-b133-165ac8e9c39a, e5361d49-f672-418d-887e-edc7db320bcd", + "traceId": "06981ca746e14de3b130de56dfdeca0b", + "evidence": "records=3, current=1, size=5", + "checkedAt": "2026-08-08T07:26:55.695Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位仓库筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0&warehouseId=193000000000000001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f745f7db-b15e-49ea-8568-c3fe6d71e645, 973b9821-9c81-4a02-845b-dc4ed34fa575", + "traceId": "e1223da0ef964a57843e16caa21e950a", + "evidence": "path=/api/platform/v1/locations?page=1&size=5&tenantId=0&warehouseId=193000000000000001", + "checkedAt": "2026-08-08T07:26:55.716Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位仓库筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0&warehouseId=193000000000000001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f745f7db-b15e-49ea-8568-c3fe6d71e645, 973b9821-9c81-4a02-845b-dc4ed34fa575", + "traceId": "e1223da0ef964a57843e16caa21e950a", + "evidence": "records=0, current=1, size=5", + "checkedAt": "2026-08-08T07:26:55.716Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘仓库筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=0&warehouseId=193000000000000001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "83929bee-050a-410c-b7ab-9e5782f548d5, 9e7e2cc8-fb91-49ed-bb10-5a8b0e4e8ab7", + "traceId": "456689233cc449f1bb1b6ec9710e24c6", + "evidence": "path=/api/platform/v1/pallets?page=1&size=5&tenantId=0&warehouseId=193000000000000001", + "checkedAt": "2026-08-08T07:26:55.737Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘仓库筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=0&warehouseId=193000000000000001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "83929bee-050a-410c-b7ab-9e5782f548d5, 9e7e2cc8-fb91-49ed-bb10-5a8b0e4e8ab7", + "traceId": "456689233cc449f1bb1b6ec9710e24c6", + "evidence": "records=0, current=1, size=5", + "checkedAt": "2026-08-08T07:26:55.737Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位客户作用域安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=10001" + }, + "http": 200, + "code": "A0400", + "message": "平台公共资源作用域必须为0", + "requestId": "2c35a8af-3d75-40e8-bc7d-61c0c80ad763", + "traceId": "bb0d9b4822cb4a65aeb04cc1e9c5a371", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:26:55.763Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘客户作用域安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=10001" + }, + "http": 200, + "code": "A0400", + "message": "平台公共资源作用域必须为0", + "requestId": "de2f6666-e4e8-45c2-9f5d-a83f33eb18a1", + "traceId": "dd0a22df10d847a8abc49105284740bf", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:26:55.784Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位非法状态安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0&status=ALLOCATED" + }, + "http": 200, + "code": "A0422", + "message": "status: must match \"^(AVAILABLE|RESERVED|OCCUPIED|DISABLED)$\"", + "requestId": "c9084d20-1454-42fc-9c5d-67ab3d19a1bd", + "traceId": "de4de53d355e44a0a9545147ca34cadf", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:55.810Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位过期版本/不存在资源不泄露或误修改数据", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/999999999999?tenantId=0&warehouseId=999999999999" + }, + "http": 200, + "code": "A0404", + "message": "库位不存在或超出当前企业仓库数据范围", + "requestId": "bd66364f-cf84-42cb-8192-07c25e628236", + "traceId": "070e659a5a2f46da86c9e674ade18fc7", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:26:55.843Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘占用资源保护边界不泄露或误修改数据", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/999999999999?tenantId=0&warehouseId=999999999999" + }, + "http": 200, + "code": "A0404", + "message": "托盘不存在或不属于当前租户和仓库", + "requestId": "556ae80e-ac62-4c21-bfd7-e70ecdb211da", + "traceId": "9f1266f05e7c4e8cb9c5a29db0cc26c6", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:26:55.873Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1b22a277-8076-4f03-b17a-c67d28534382, 7d886c61-3505-4081-95ec-63f78db9feff", + "traceId": "161c2aa09ab149ea845893eacc435825", + "evidence": "path=/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=ACTIVE", + "checkedAt": "2026-08-08T07:26:55.907Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1b22a277-8076-4f03-b17a-c67d28534382, 7d886c61-3505-4081-95ec-63f78db9feff", + "traceId": "161c2aa09ab149ea845893eacc435825", + "evidence": "records=4, current=1, size=5", + "checkedAt": "2026-08-08T07:26:55.907Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司停用筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c4fc2c90-8ca2-400b-b866-f207ec74e343, b86a3b13-499a-4ec3-bfe7-8f56937e9a08", + "traceId": "503ce1f699ac46b09604da3431134ddf", + "evidence": "path=/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=INACTIVE", + "checkedAt": "2026-08-08T07:26:55.935Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司停用筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c4fc2c90-8ca2-400b-b866-f207ec74e343, b86a3b13-499a-4ec3-bfe7-8f56937e9a08", + "traceId": "503ce1f699ac46b09604da3431134ddf", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:26:55.935Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司状态枚举过滤不混入其他状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c4fc2c90-8ca2-400b-b866-f207ec74e343, b86a3b13-499a-4ec3-bfe7-8f56937e9a08", + "traceId": "503ce1f699ac46b09604da3431134ddf", + "evidence": "records=5", + "checkedAt": "2026-08-08T07:26:55.935Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司无效筛选参数安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=UNKNOWN" + }, + "http": 200, + "code": "A0422", + "message": "status: must match \"^(ACTIVE|INACTIVE)$\"", + "requestId": "7ed384c2-c960-4bf0-9eaa-fd089aac5a8c", + "traceId": "b9a1a29fe5d74e0ba538e908581e0343", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:55.965Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "23b8bbbc-aa60-46a8-b261-f03ee873115d, 8c56e684-f95e-440a-8110-b63cbd471f2a", + "traceId": "4ed67ddf2b5248ec8276cb7c0a9d5a85", + "evidence": "path=/api/platform/v1/partners?page=1&size=5&tenantId=0&status=ACTIVE", + "checkedAt": "2026-08-08T07:26:56.000Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "23b8bbbc-aa60-46a8-b261-f03ee873115d, 8c56e684-f95e-440a-8110-b63cbd471f2a", + "traceId": "4ed67ddf2b5248ec8276cb7c0a9d5a85", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:26:56.000Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位停用筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5d65f311-2155-4ff5-bbcd-90b208226b6f, ef593757-63f6-4f1f-9bc1-c6decf6eeb75", + "traceId": "81e79064507d4616aac64eed1f26714e", + "evidence": "path=/api/platform/v1/partners?page=1&size=5&tenantId=0&status=INACTIVE", + "checkedAt": "2026-08-08T07:26:56.031Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位停用筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5d65f311-2155-4ff5-bbcd-90b208226b6f, ef593757-63f6-4f1f-9bc1-c6decf6eeb75", + "traceId": "81e79064507d4616aac64eed1f26714e", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:26:56.031Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位状态枚举过滤不混入其他状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5d65f311-2155-4ff5-bbcd-90b208226b6f, ef593757-63f6-4f1f-9bc1-c6decf6eeb75", + "traceId": "81e79064507d4616aac64eed1f26714e", + "evidence": "records=5", + "checkedAt": "2026-08-08T07:26:56.031Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位无效筛选参数安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&types=UNKNOWN_TYPE" + }, + "http": 200, + "code": "A0422", + "message": "types[0]: must match \"^(CUSTOMER|SUPPLIER|CARRIER|CUSTOMS_BROKER|SHIPPER|CONSIGNEE)$\"", + "requestId": "7a6119ff-2d18-4cd8-87f1-e7005e2019a0", + "traceId": "6206fa729a9d463b914408d17c8db2c7", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:56.058Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "仓库导入模板为 XLSX 且不记录二进制", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/import-template" + }, + "http": 200, + "code": null, + "message": "3853 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "26cb9167-fce2-4f3b-992a-baf901410b38, b68e7d76-3b91-4be6-a295-582c3bdc1106", + "traceId": "035fc39848044c2ab454a45d8b60b8e2", + "evidence": "HTTP=200, bytes=3853, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:26:56.100Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司导入模板为 XLSX 且不记录二进制", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/import-template" + }, + "http": 200, + "code": null, + "message": "3692 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "268547fc-73fa-45f1-ba70-5eeec4f60b28, 369b50f3-af2e-425a-a685-aa3cf6c1c060", + "traceId": "ca9f30c0c1ae410eb5caa56a076a389d", + "evidence": "HTTP=200, bytes=3692, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:26:56.152Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位导入模板为 XLSX 且不记录二进制", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/import-template" + }, + "http": 200, + "code": null, + "message": "3830 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "37595ee3-9528-4e1b-a802-0eb480b55cfa, 51f04930-d8a1-42cd-8bf4-b2a557db7129", + "traceId": "898344e3e055424fa33bdf2736b83f62", + "evidence": "HTTP=200, bytes=3830, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:26:56.197Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 PENDING_CONFIRMATION 状态过滤", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=PENDING_CONFIRMATION" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2da595c6-b7d9-4074-8faa-9c38996eada7, bbb28f8d-dc04-4865-a618-782d55544144", + "traceId": "94c5dc9ed7fc4d98983cf53530fa8724", + "evidence": "count=1", + "checkedAt": "2026-08-08T07:26:56.228Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 PENDING_CONFIRMATION 结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=PENDING_CONFIRMATION" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2da595c6-b7d9-4074-8faa-9c38996eada7, bbb28f8d-dc04-4865-a618-782d55544144", + "traceId": "94c5dc9ed7fc4d98983cf53530fa8724", + "evidence": "count=1", + "checkedAt": "2026-08-08T07:26:56.228Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 ACTIVE 状态过滤", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1b88a927-92af-4017-b507-2b3b0bce03dc, 13edf573-5fd6-41cb-89aa-ff2bcad81615", + "traceId": "f2ce785d937547a388946a2a215fd831", + "evidence": "count=1", + "checkedAt": "2026-08-08T07:26:56.258Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 ACTIVE 结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1b88a927-92af-4017-b507-2b3b0bce03dc, 13edf573-5fd6-41cb-89aa-ff2bcad81615", + "traceId": "f2ce785d937547a388946a2a215fd831", + "evidence": "count=1", + "checkedAt": "2026-08-08T07:26:56.258Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 SUPERSEDED 状态过滤", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=SUPERSEDED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a20210f1-8848-4da3-88dc-b02ad05b7544, 0fa8a188-9308-4ea6-894d-42a7478606da", + "traceId": "9b56ce99207541c39cab4c718087c9ac", + "evidence": "count=11", + "checkedAt": "2026-08-08T07:26:56.289Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 SUPERSEDED 结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=SUPERSEDED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a20210f1-8848-4da3-88dc-b02ad05b7544, 0fa8a188-9308-4ea6-894d-42a7478606da", + "traceId": "9b56ce99207541c39cab4c718087c9ac", + "evidence": "count=11", + "checkedAt": "2026-08-08T07:26:56.289Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "读取现有生效价格版本用于下载安全检查", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "07753e61-c951-4881-91b9-f0bf09576b53, feff241b-fe83-412d-aa2b-31a1725de963", + "traceId": "7f53c3fbcc294524b91f1bf6b93459d2", + "evidence": "", + "checkedAt": "2026-08-08T07:26:56.309Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "现有生效价格源文件下载为 XLSX", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991046780071937/source" + }, + "http": 200, + "code": null, + "message": "1343413 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "3f78d47d-7bce-47f5-bb6b-36810bb79970, 6db9b05a-70dd-4e7f-bc7e-2fbbb3f55970, 57b228b7-6cae-4f1b-bb0b-aa1415d338ef", + "traceId": "5ea988385dd54eb584d0549211689fde, 53361f966774466894128d43df674952", + "evidence": "versionId=2085991046780071937, bytes=1343413, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:26:56.401Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 PENDING 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=PENDING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9606dcb7-11cb-451b-8eb3-d5274a43cb6a, 6008e9c2-e057-4ddf-ab1a-b402778f5624", + "traceId": "7a141d038a3e4f30935841abea50aef8", + "evidence": "", + "checkedAt": "2026-08-08T07:26:56.425Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 PENDING 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=PENDING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9606dcb7-11cb-451b-8eb3-d5274a43cb6a, 6008e9c2-e057-4ddf-ab1a-b402778f5624", + "traceId": "7a141d038a3e4f30935841abea50aef8", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:26:56.425Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 RUNNING 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=RUNNING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7296c376-87bf-4310-9f21-189fb750ac3a, 113cc99d-8b87-48fa-9e58-270689955b00", + "traceId": "62bef8bb0ec847948e72afd08ed2182f", + "evidence": "", + "checkedAt": "2026-08-08T07:26:56.461Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 RUNNING 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=RUNNING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7296c376-87bf-4310-9f21-189fb750ac3a, 113cc99d-8b87-48fa-9e58-270689955b00", + "traceId": "62bef8bb0ec847948e72afd08ed2182f", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:26:56.461Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 SUCCEEDED 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=SUCCEEDED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8bc5427d-8225-4e3f-a295-807494c2f68e, 53588eb6-6e51-4d8c-8551-eb7ed92aa739", + "traceId": "cd22a9951b0c4a3bba5916ed6ceb00f6", + "evidence": "", + "checkedAt": "2026-08-08T07:26:56.494Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 SUCCEEDED 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=SUCCEEDED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8bc5427d-8225-4e3f-a295-807494c2f68e, 53588eb6-6e51-4d8c-8551-eb7ed92aa739", + "traceId": "cd22a9951b0c4a3bba5916ed6ceb00f6", + "evidence": "records=5", + "checkedAt": "2026-08-08T07:26:56.494Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 FAILED 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=FAILED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "eb2d1599-1d8b-4240-ada8-06ff860bce93, 4cc94c20-b7f7-4da3-a81c-fea9fb0c5100", + "traceId": "e5753f1858c946acb581d6cc31d751c2", + "evidence": "", + "checkedAt": "2026-08-08T07:26:56.524Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 FAILED 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=FAILED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "eb2d1599-1d8b-4240-ada8-06ff860bce93, 4cc94c20-b7f7-4da3-a81c-fea9fb0c5100", + "traceId": "e5753f1858c946acb581d6cc31d751c2", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:26:56.524Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 EXPIRED 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=EXPIRED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "84f0f43e-f703-499c-8df9-90a90f090eb2, 769253fb-1bba-4d9d-b3c1-1fa8e03b051c", + "traceId": "9e6cde5c145b423493483be9fc5a7d48", + "evidence": "", + "checkedAt": "2026-08-08T07:26:56.546Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 EXPIRED 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=EXPIRED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "84f0f43e-f703-499c-8df9-90a90f090eb2, 769253fb-1bba-4d9d-b3c1-1fa8e03b051c", + "traceId": "9e6cde5c145b423493483be9fc5a7d48", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:26:56.546Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "不存在下载任务详情安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/999999999999" + }, + "http": 200, + "code": "A0404", + "message": "导出任务不存在", + "requestId": "7a452b21-db24-485d-b90a-fb15562726fd", + "traceId": "994ab127c8e44adeafc4dda38f56476b", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:26:56.569Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "不存在下载任务文件安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/999999999999/download" + }, + "http": 200, + "code": "A0404", + "message": "导出任务不存在", + "requestId": "264adf78-da45-4208-996b-01829009b7c3", + "traceId": "b4fe95462881481d9988e376419309a6", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:26:56.600Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "未授权下载请求被拒绝", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/999999999999/download" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "304305cb-931", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:26:56.623Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "平台用户只读列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users?page=1&size=5" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f63c7fd3-ce69-4f10-ad55-5adcc31a1bc6, 40cf7373-208f-42a5-973a-b321259c0a97", + "traceId": "153c1dc7600742b7bf26c6de4165a3ff", + "evidence": "", + "checkedAt": "2026-08-08T07:26:56.677Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "平台用户列表结构正确且包含内置保护标识", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users?page=1&size=5" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f63c7fd3-ce69-4f10-ad55-5adcc31a1bc6, 40cf7373-208f-42a5-973a-b321259c0a97", + "traceId": "153c1dc7600742b7bf26c6de4165a3ff", + "evidence": "records=5, builtInField=protectedAccount", + "checkedAt": "2026-08-08T07:26:56.677Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "平台角色只读列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d309a5bb-2442-4d74-a967-873d146ea6a1, ac476662-3438-441a-9570-5df2fc5af918", + "traceId": "e675135996c64e0780a98c33bdd66b9b", + "evidence": "", + "checkedAt": "2026-08-08T07:26:56.724Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "平台角色列表结构正确且包含内置保护标识", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d309a5bb-2442-4d74-a967-873d146ea6a1, ac476662-3438-441a-9570-5df2fc5af918", + "traceId": "e675135996c64e0780a98c33bdd66b9b", + "evidence": "records=19, builtInField=roleType", + "checkedAt": "2026-08-08T07:26:56.724Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "菜单权限只读列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "726fbf65-48b2-4e61-833f-362601571305, aa8c9b3f-7c9b-4caf-bbeb-64776e504646", + "traceId": "c66813f0e411477cb1328d850dd4c859", + "evidence": "", + "checkedAt": "2026-08-08T07:26:56.768Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "菜单权限列表结构正确且包含内置保护标识", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "726fbf65-48b2-4e61-833f-362601571305, aa8c9b3f-7c9b-4caf-bbeb-64776e504646", + "traceId": "c66813f0e411477cb1328d850dd4c859", + "evidence": "records=151, builtInField=builtIn", + "checkedAt": "2026-08-08T07:26:56.769Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "角色列表伪造令牌拒绝访问", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "304305cb-935", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:26:56.792Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "菜单权限未携带令牌拒绝访问", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "21367576-936", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:26:56.809Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "创建边界验收隔离仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9b56f5ef-73b8-4166-abb6-8a61f306c049, fa8185d1-9fb2-497d-95ae-0607587d92e2", + "traceId": "9b40ed3e4da1407681956fefef6401a9", + "evidence": "", + "checkedAt": "2026-08-08T07:26:56.857Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "创建边界验收隔离库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/locations?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8322e112-f4d3-4cff-8541-dad9171bf156, 464c057e-dc84-48bb-a457-2928a37da372", + "traceId": "3d1728d44ead4d92851e4495230d60d8", + "evidence": "", + "checkedAt": "2026-08-08T07:26:56.885Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "读取隔离库位版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991130769440769?tenantId=0&warehouseId=2085991130639417345" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0ca0f063-022c-467b-a36f-0467dd838f57, 334eb9c6-013e-4fed-bbee-c8351a87c7b5", + "traceId": "ee7ef09657a649bbad294acec2362ce0", + "evidence": "", + "checkedAt": "2026-08-08T07:26:56.910Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "更新隔离库位以推进版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085991130769440769?tenantId=0&warehouseId=2085991130639417345" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4899e35b-3171-4313-86c2-83af5ae49e09, 6be9c42c-1de0-42ba-944d-0e515fb96004", + "traceId": "b80d0d225cab450d95cbf010599aad84", + "evidence": "version=0", + "checkedAt": "2026-08-08T07:26:56.950Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "库位旧 version PUT 返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085991130769440769?tenantId=0&warehouseId=2085991130639417345" + }, + "http": 200, + "code": "A0409", + "message": "库位已被其他操作修改,请刷新后重试", + "requestId": "c76e1408-e9ca-42ea-aee1-e377c5d5bb81", + "traceId": "6e583c4833f94c918b4eef0fdc6a4eab", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:26:56.977Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "冲突后回查库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991130769440769?tenantId=0&warehouseId=2085991130639417345" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5d65156b-daeb-4460-84da-26a70c440c5c, 508147eb-b5af-4278-94b0-f722e631cad2", + "traceId": "caccededc98a41f4a02fa664a59b3898", + "evidence": "", + "checkedAt": "2026-08-08T07:26:56.999Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "库位冲突未造成部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991130769440769?tenantId=0&warehouseId=2085991130639417345" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5d65156b-daeb-4460-84da-26a70c440c5c, 508147eb-b5af-4278-94b0-f722e631cad2", + "traceId": "caccededc98a41f4a02fa664a59b3898", + "evidence": "name=边界库位-编辑", + "checkedAt": "2026-08-08T07:26:56.999Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "仓库空文件安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d681b16b-b0ce-460a-8fd8-7fccd20ec9d5, c12eee0c-84a3-49c6-957f-25bb98656b8d", + "traceId": "7ca9e4e94760414fb367f30f0d24b8e9", + "evidence": "HTTP=200, code=200, bytes=0", + "checkedAt": "2026-08-08T07:26:57.035Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "仓库缺列伪 XLSX安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cd16af58-eb97-48f9-89b7-42d891ccc660, 7a89cb46-9ba0-47df-b093-a0bf02453a0c", + "traceId": "fcd87704c47a4f1e8f6140477a9c2b49", + "evidence": "HTTP=200, code=200, bytes=6", + "checkedAt": "2026-08-08T07:26:57.060Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "快递公司错误扩展名安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9bbc6e02-1124-424b-ab7b-b5769b220c51, 014da867-108e-461b-b6e7-8412ce41c904", + "traceId": "7f0f9730d3444003a5e51934f29995ef", + "evidence": "HTTP=200, code=200, bytes=27", + "checkedAt": "2026-08-08T07:26:57.082Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "往来单位非 XLSX安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c5a46f19-a150-4084-9bcb-e54d9fc12a98, 457d20cb-3ae5-435e-b44a-d633f7343562", + "traceId": "c7873ccb223d4b33b2f581b7e7f58586", + "evidence": "HTTP=200, code=200, bytes=27", + "checkedAt": "2026-08-08T07:26:57.110Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "错误客户海外仓费用 ID 安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/999999999999999999/overseas-storage-fees" + }, + "http": 200, + "code": "A0404", + "message": "海外仓费用不存在", + "requestId": "5a8cae8d-3618-4fe6-b1b4-60199272bab3", + "traceId": "869a8cd9d0bd49bcb56c1dac62ae0c55", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:26:57.140Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "库位列表未授权边界响应正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=1&tenantId=0" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "21367576-948", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:26:57.165Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "下载中心非法页码边界响应正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=0&size=1" + }, + "http": 200, + "code": "A0422", + "message": "page.page: must be greater than or equal to 1", + "requestId": "40d320a0-ff90-48fd-820c-996eeb45f295", + "traceId": "723a5af17bd34f97a5841f40263973f8", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:26:57.186Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "船期价格非法状态边界响应正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=INVALID" + }, + "http": 200, + "code": "A0400", + "message": "Bad request", + "requestId": "97bd5d2c-3c40-4a69-8fd4-3c7f72561069", + "traceId": "807d7ee45dc240049ea2a2fa87002cf1", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:26:57.218Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "停用隔离库位以便清理", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/locations/2085991130769440769/status?tenantId=0&warehouseId=2085991130639417345" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "96e73374-58c3-4d6f-aa55-dfe98bf068fc, 212a00e5-2ef6-47bb-bc08-337d468047ac", + "traceId": "396b4f9c4bb54e1bac73bf6a980620e6", + "evidence": "", + "checkedAt": "2026-08-08T07:26:57.257Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "删除隔离库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/locations/2085991130769440769?tenantId=0&warehouseId=2085991130639417345&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c239ab63-db6c-4186-8c86-74c98c64639f, b82067b7-df78-4de4-ad71-6aa36958b613", + "traceId": "d44cd41bbdb4450389ab730f1cd2e2f3", + "evidence": "", + "checkedAt": "2026-08-08T07:26:57.289Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "停用隔离仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/warehouse-admin/2085991130639417345/status?tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a5ddcd99-3e3c-4639-95c6-3d59e2543514, 1c13ff11-a52b-4254-9099-7f5ef6ceb8e3", + "traceId": "caa219c010e946bfa9cef9f9c387a1ea", + "evidence": "", + "checkedAt": "2026-08-08T07:26:57.319Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱列表分页与 keyword 查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&keyword=ADMIN-API-20260808072627117" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a8a28461-c13e-4188-8aab-1e23f98c59b8, 249a0e43-ac59-4602-a436-bbd0e39deb8d", + "traceId": "77be21879f8d490baf67f2f994098232", + "evidence": "", + "checkedAt": "2026-08-08T07:26:57.347Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱列表分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&keyword=ADMIN-API-20260808072627117" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a8a28461-c13e-4188-8aab-1e23f98c59b8, 249a0e43-ac59-4602-a436-bbd0e39deb8d", + "traceId": "77be21879f8d490baf67f2f994098232", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:26:57.347Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 DRAFT 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=DRAFT" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a38a6df8-8dd3-45bb-aaa1-6b36b5ccae0d, fa92921e-49dd-4731-87e0-c68bb5442497", + "traceId": "9729bbc1d4e44ab6a0db969711a8ce21", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:57.376Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 SUBMITTED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=SUBMITTED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "578b5cec-8dfd-4bd1-935e-5406e38388ad, 2704ec51-d350-41ba-9718-df0466c8c3c8", + "traceId": "2fd3ee5a926e464e834fc05a00e1a58c", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:57.407Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 CONFIRMED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=CONFIRMED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "433ea3b7-f4c5-41c8-8e68-2cc7d962f498, 65f9f6ef-057e-49b1-a035-46b3480c3217", + "traceId": "c084666722fa47fb9eddf27198bedc58", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:57.439Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 RELEASED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=RELEASED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a5e421ec-957e-4123-b652-23a80e1a9fc6, 37741ac1-46c7-4632-840a-7a5b380fbd2b", + "traceId": "1a7dac2328be482eaa0ba021b689f5bf", + "evidence": "HTTP=200, code=200, records=2", + "checkedAt": "2026-08-08T07:26:57.469Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 FAILED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=FAILED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "98630e64-3eb1-45d0-94e2-824c70084101, 746032d6-0ea4-484c-b43b-cf79b5cceabf", + "traceId": "a47add0b8a0f43dd86f65fb258184a45", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:57.490Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 CANCELLED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=CANCELLED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "10db0ce4-9de5-4cf9-b478-2142a9ae4821, 597ecdc3-f477-4280-8e81-532383a525d3", + "traceId": "7e1cdc3747eb4fac8b7b1bf3a4a7e120", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:57.513Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "创建隔离海运订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0020145f-bc94-48f7-8d71-17456219e5d5, 8179ebda-0ed1-49af-ab4b-e5b07246ca09", + "traceId": "b1b197344f4c447d90cb5acde2a1d581", + "evidence": "key=ADMIN-API-20260808072627117-ocean-create", + "checkedAt": "2026-08-08T07:26:57.561Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 DTO 字段、DRAFT 和9类关联字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0020145f-bc94-48f7-8d71-17456219e5d5, 8179ebda-0ed1-49af-ab4b-e5b07246ca09", + "traceId": "b1b197344f4c447d90cb5acde2a1d581", + "evidence": "bookingId=2085991133568610307, parties=3, requirements=1", + "checkedAt": "2026-08-08T07:26:57.561Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "创建 Idempotency-Key 重放返回同一订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "37fc1f18-3db1-477d-a4c2-3bdfd6f42c9d, c55e093f-d04b-40e4-8dce-bbe614f81928", + "traceId": "2af439d9ace64e07a061647fd8921ac3", + "evidence": "first=2085991133568610307, replay=2085991133568610307", + "checkedAt": "2026-08-08T07:26:57.587Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "编辑 DRAFT 订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/ocean-bookings/2085991133568610307" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c2488417-1f73-4806-bef9-92c7edd58fd5, 384d5492-e45b-426f-99d7-c4844b989e73", + "traceId": "eb82ebc3d756457f9891dbe7a64689a0", + "evidence": "version=0", + "checkedAt": "2026-08-08T07:26:57.642Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱旧版本编辑返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/ocean-bookings/2085991133568610307" + }, + "http": 200, + "code": "A0409", + "message": "数据已被其他人修改,请刷新后重试", + "requestId": "f446e1cc-56ad-48f8-85a4-20a1e6b37107", + "traceId": "dcebd028f12e4fc58664b0e4d328760f", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:26:57.674Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "冲突后回查订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085991133568610307" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8cf44d60-22fa-44cd-89b5-c78008db7b50, 6d8cef8d-0734-4901-be32-350199fbba9f", + "traceId": "86c06273737f46d299c59aeb962f6f50", + "evidence": "", + "checkedAt": "2026-08-08T07:26:57.696Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱冲突未部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085991133568610307" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8cf44d60-22fa-44cd-89b5-c78008db7b50, 6d8cef8d-0734-4901-be32-350199fbba9f", + "traceId": "86c06273737f46d299c59aeb962f6f50", + "evidence": "vessel=编辑船-8072627117", + "checkedAt": "2026-08-08T07:26:57.696Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "提交订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991133568610307/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6ee6eb9f-fe1f-4c87-b597-cdd2f2e3294a, ddbb7882-a387-4ba9-be8e-d81205f4be59", + "traceId": "eb6fafeb090a42bca004d709587b5d9c", + "evidence": "status=SUBMITTED", + "checkedAt": "2026-08-08T07:26:57.746Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "确认订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991133568610307/confirm" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "94cf628c-63c5-4d9f-a02e-a3fa7c374004, 690c61ac-f3ea-4773-8271-6818d0bbdcbf", + "traceId": "ece41aa132ef41deaeac2e5b6f56927b", + "evidence": "status=CONFIRMED", + "checkedAt": "2026-08-08T07:26:57.789Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "申请改船", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991133568610307/change-request" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b4d27dd2-7a51-4fd0-9483-3d1ed971d099, a720a2d8-3653-428e-b860-3731706d8a41", + "traceId": "8e78958f874049348b82b5637a2a72c4", + "evidence": "", + "checkedAt": "2026-08-08T07:26:57.838Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "确认改船", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991133568610307/change-confirm" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "129d53dd-9fa5-442c-a7dc-7bbfd42188f6, 8efd7d7c-c01d-41da-beab-d7a3e32d2227", + "traceId": "2737ba83ef3d45b1b64787b3ca89fd54", + "evidence": "status=CONFIRMED", + "checkedAt": "2026-08-08T07:26:57.885Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "放舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991133568610307/release" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d6ddd5c2-f7cf-43d2-b77e-c9a62e53371d, aa7ed013-25de-43d1-85fa-222a2ecb2e1f", + "traceId": "b48f0012e47943279a6c6860c1ed8311", + "evidence": "status=RELEASED", + "checkedAt": "2026-08-08T07:26:57.932Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "回查 RELEASED 订舱详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085991133568610307" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e84240f1-ccd5-489d-b0e8-8942c9043f23, d445b623-e909-457f-99c0-104acb05d9be", + "traceId": "6ad18b990f1244cfa26a9faf315f4d78", + "evidence": "", + "checkedAt": "2026-08-08T07:26:57.964Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱状态历史、审计操作者和终态完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085991133568610307" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e84240f1-ccd5-489d-b0e8-8942c9043f23, d445b623-e909-457f-99c0-104acb05d9be", + "traceId": "6ad18b990f1244cfa26a9faf315f4d78", + "evidence": "status=RELEASED, histories=6", + "checkedAt": "2026-08-08T07:26:57.964Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "不存在订舱详情安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/999999999999999999" + }, + "http": 200, + "code": "A0404", + "message": "订舱单不存在", + "requestId": "6bf6f6a8-5cac-424f-bf76-20a17f57b3b9", + "traceId": "b12efdbb10a24bf6b14110649faa2d01", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:26:57.994Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约分页 keyword 查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&keyword=ADMIN-API-20260808072627117" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ddd5dfb2-fe0f-47f1-8759-146a17b8e416, 6dcf9b1d-5cd9-46f8-a1c6-8b567e2f5f4d", + "traceId": "7360ea4914464d3db73ec43352bca3c1", + "evidence": "", + "checkedAt": "2026-08-08T07:26:58.027Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&keyword=ADMIN-API-20260808072627117" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ddd5dfb2-fe0f-47f1-8759-146a17b8e416, 6dcf9b1d-5cd9-46f8-a1c6-8b567e2f5f4d", + "traceId": "7360ea4914464d3db73ec43352bca3c1", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:26:58.027Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 DRAFT 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=DRAFT" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "59040401-cff3-4c2c-9932-9c68a738ac15, 73cfedf6-93c7-4625-bd33-f26a759bd9c0", + "traceId": "5241d91697fa4094b86c3173dbf4fde3", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:58.059Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 PENDING_DISPATCH 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=PENDING_DISPATCH" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d0b1c8f9-e473-4ada-bbbd-6ea4b1bd2305, 63da8e33-0be5-4130-897c-638ec0ba767c", + "traceId": "bd910a322fb042d5a4c831f4eb6065e0", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:58.090Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 DISPATCHED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=DISPATCHED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b95c6863-cbab-4700-9cd6-c2b486bc05ac, aa711e96-8467-448e-a41f-e79fa4453d48", + "traceId": "a549b03ebd6e4926925b9e12763d0bf3", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:58.122Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 PICKUP_IN_PROGRESS 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=PICKUP_IN_PROGRESS" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e8057dff-295b-41d2-aedc-fb28ea1ff0c8, f17f503d-325b-410b-a18a-d498b08f2797", + "traceId": "3b1e7c6aeed245529810103ada3c47d7", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:58.153Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 ARRIVED_WAREHOUSE 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=ARRIVED_WAREHOUSE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "442ccbcd-c9c0-42e9-9c90-f111d352a033, e6cf79b1-8a6d-41c8-9596-f46b433a221b", + "traceId": "b14d36e9dae841b6acf7596640ef378a", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:58.184Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 LOADING 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=LOADING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "252cc88b-5956-4989-b7ac-6ec98c8a066b, 8f778281-4c5f-44e1-b3cb-9ca522f9e089", + "traceId": "e62dd40f734d49bc9cb5b2d58c185a60", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:58.215Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 DEPARTED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=DEPARTED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8ea66765-c375-4c99-9387-825b582d3974, 19342c07-8f1b-4c37-bc6b-ec4e2428d829", + "traceId": "df558c620de64b84bce2176d2636eb59", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:58.247Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 COMPLETED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=COMPLETED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "aca94383-71a8-4e7c-99f9-58b25e468653, 90eff119-fc67-48b7-b7d7-47cea55e31eb", + "traceId": "a297bb4c49834bacb073e20cf58544b1", + "evidence": "HTTP=200, code=200, records=2", + "checkedAt": "2026-08-08T07:26:58.278Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 RESCHEDULED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=RESCHEDULED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "93075289-2053-4228-8a23-ae9b9ed73c85, dde4a841-cd43-441c-80c7-25f59aec418b", + "traceId": "e12c196272604e9989da44953fd77c00", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:58.324Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 EXCEPTION 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=EXCEPTION" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8915ef32-63ec-478a-a84f-51199aa82e1c, 35d08722-90dc-46c0-a8fb-e5d08f8c36d8", + "traceId": "4eb1637e17ac47bb8cfa44c3390e15d1", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:58.354Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 CANCELLED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=CANCELLED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "656a0f9a-9233-42e1-9dbe-6d926bd1670e, f5bdbf94-7890-421e-8867-85a8f65ca105", + "traceId": "5ab617412ef348c2b9b1d04e5dede723", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:26:58.374Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "创建隔离拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "12450909-4e74-48bd-b0ad-7c8bf70c8b46, b850f081-80ec-48f9-ba80-0e10da2413dd", + "traceId": "37264428477e47af97ce9bafed25ac92", + "evidence": "", + "checkedAt": "2026-08-08T07:26:58.408Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约费用、司机车辆和地址字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "12450909-4e74-48bd-b0ad-7c8bf70c8b46, b850f081-80ec-48f9-ba80-0e10da2413dd", + "traceId": "37264428477e47af97ce9bafed25ac92", + "evidence": "id=2085991137154740226, status=DRAFT", + "checkedAt": "2026-08-08T07:26:58.408Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "编辑拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/truck-appointments/2085991137154740226" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "66c33933-e447-42da-add7-3e1f338910f1, 31f420b3-8cdb-46f2-b7bc-f3cad32ec0b1", + "traceId": "04c4a67178fb4ad7a86c688578c3fe52", + "evidence": "version=0", + "checkedAt": "2026-08-08T07:26:58.437Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约旧版本编辑返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/truck-appointments/2085991137154740226" + }, + "http": 200, + "code": "A0409", + "message": "版本已变化,请刷新后重试", + "requestId": "813f5d75-07a3-4c5a-b360-2fefd27b1864", + "traceId": "d8e31484fb844951bf0cbc088783dd5a", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:26:58.465Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "冲突后回查拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991137154740226" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c1ad0d0c-e6e5-4fe6-b761-0f7deff13179, 73a8ca16-785c-4e58-963f-916c2a32687f", + "traceId": "882e73590b904472bea7bb2399d4916a", + "evidence": "", + "checkedAt": "2026-08-08T07:26:58.495Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约冲突未部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991137154740226" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c1ad0d0c-e6e5-4fe6-b761-0f7deff13179, 73a8ca16-785c-4e58-963f-916c2a32687f", + "traceId": "882e73590b904472bea7bb2399d4916a", + "evidence": "vehicleNo=粤C-627117", + "checkedAt": "2026-08-08T07:26:58.495Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "提交预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "14c6514a-3879-46bb-9021-fb6c749e7074, 40e85ffc-c90b-431d-ae58-b82f5cab4a2d", + "traceId": "3669fc178bf74044bd7dda68ff5082b6", + "evidence": "", + "checkedAt": "2026-08-08T07:26:58.537Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "提交预约 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "14c6514a-3879-46bb-9021-fb6c749e7074, 40e85ffc-c90b-431d-ae58-b82f5cab4a2d", + "traceId": "3669fc178bf74044bd7dda68ff5082b6", + "evidence": "status=PENDING_DISPATCH", + "checkedAt": "2026-08-08T07:26:58.537Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "派车", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/dispatch" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d55c49d3-1d0a-46f8-954f-6346ad9b2e6c, db1b8fb4-8111-4d24-8eb1-59ba53f25d3b", + "traceId": "33ef8888528441bbaf141a9dae25e588", + "evidence": "", + "checkedAt": "2026-08-08T07:26:58.565Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "派车 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/dispatch" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d55c49d3-1d0a-46f8-954f-6346ad9b2e6c, db1b8fb4-8111-4d24-8eb1-59ba53f25d3b", + "traceId": "33ef8888528441bbaf141a9dae25e588", + "evidence": "status=DISPATCHED", + "checkedAt": "2026-08-08T07:26:58.565Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始提货", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/pickup" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d2d2387d-899a-49c3-a7c3-4e956cea7ac6, 1b3b21a5-550e-40ba-b464-e207cb3d2db7", + "traceId": "aa0d26a3b45d40599fda46b615070c8f", + "evidence": "", + "checkedAt": "2026-08-08T07:26:58.595Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始提货 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/pickup" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d2d2387d-899a-49c3-a7c3-4e956cea7ac6, 1b3b21a5-550e-40ba-b464-e207cb3d2db7", + "traceId": "aa0d26a3b45d40599fda46b615070c8f", + "evidence": "status=PICKUP_IN_PROGRESS", + "checkedAt": "2026-08-08T07:26:58.595Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "到仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/arrive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "32671ae7-13e5-4c2e-b858-7807487816a4, bd57aa26-fedb-480c-a75d-52b4aa04bfe0", + "traceId": "c0b8364039a14831b2be769dde0e0ff2", + "evidence": "", + "checkedAt": "2026-08-08T07:26:58.626Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "到仓 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/arrive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "32671ae7-13e5-4c2e-b858-7807487816a4, bd57aa26-fedb-480c-a75d-52b4aa04bfe0", + "traceId": "c0b8364039a14831b2be769dde0e0ff2", + "evidence": "status=ARRIVED_WAREHOUSE", + "checkedAt": "2026-08-08T07:26:58.626Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始装货", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/load" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "97db90d4-e5b2-46e2-86a7-9779a51b7529, 9965747a-b471-4e13-b854-3b04e22b6eeb", + "traceId": "40f7b74f5c5045939619854bb9dacdfb", + "evidence": "", + "checkedAt": "2026-08-08T07:26:58.656Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始装货 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/load" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "97db90d4-e5b2-46e2-86a7-9779a51b7529, 9965747a-b471-4e13-b854-3b04e22b6eeb", + "traceId": "40f7b74f5c5045939619854bb9dacdfb", + "evidence": "status=LOADING", + "checkedAt": "2026-08-08T07:26:58.656Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "离场", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/depart" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2b2c1162-2560-476f-bc70-31f8738f7d02, 489174e8-7be6-4906-b638-40d80909e690", + "traceId": "a3e9ed20935a4b93847a39941e249b63", + "evidence": "", + "checkedAt": "2026-08-08T07:26:58.685Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "离场 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/depart" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2b2c1162-2560-476f-bc70-31f8738f7d02, 489174e8-7be6-4906-b638-40d80909e690", + "traceId": "a3e9ed20935a4b93847a39941e249b63", + "evidence": "status=DEPARTED", + "checkedAt": "2026-08-08T07:26:58.685Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "完成", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/complete" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "770c2096-e579-4891-a329-c079227373fe, a6021e88-e5f2-42fa-9a94-73a13e86969a", + "traceId": "8c89905c9d714d4f9d279d9f02a1f49b", + "evidence": "", + "checkedAt": "2026-08-08T07:26:58.717Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "完成 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991137154740226/complete" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "770c2096-e579-4891-a329-c079227373fe, a6021e88-e5f2-42fa-9a94-73a13e86969a", + "traceId": "8c89905c9d714d4f9d279d9f02a1f49b", + "evidence": "status=COMPLETED", + "checkedAt": "2026-08-08T07:26:58.717Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "回查 COMPLETED 拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991137154740226" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "df852534-d50e-4930-8f26-607d52a5a62b, c51d1d59-cb84-464b-85ab-849b077d073a", + "traceId": "ce68ad1ba5114dc8afbc8136a0339a29", + "evidence": "", + "checkedAt": "2026-08-08T07:26:58.740Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约状态终态和费用快照正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991137154740226" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "df852534-d50e-4930-8f26-607d52a5a62b, c51d1d59-cb84-464b-85ab-849b077d073a", + "traceId": "ce68ad1ba5114dc8afbc8136a0339a29", + "evidence": "status=COMPLETED", + "checkedAt": "2026-08-08T07:26:58.740Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "附件引用安全边界自动化缺口", + "passed": false, + "deploymentBlocker": true, + "request": null, + "http": null, + "code": null, + "message": null, + "requestId": null, + "traceId": null, + "evidence": "当前 Controller 无附件上传/引用 API,未伪造附件成功", + "checkedAt": "2026-08-08T07:26:58.741Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "创建关联海运订舱的拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f462dd04-88f6-48ae-aa59-522c81b62a75, b2a9bb44-7a33-4962-acff-fb6d46e68469", + "traceId": "954cc878a1794d14a9c7ded20addb7f1", + "evidence": "oceanBookingId=2085991133568610307", + "checkedAt": "2026-08-08T07:26:58.780Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "拖车预约关联订舱 ID、版本和审计字段完整", + "passed": false, + "deploymentBlocker": true, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f462dd04-88f6-48ae-aa59-522c81b62a75, b2a9bb44-7a33-4962-acff-fb6d46e68469", + "traceId": "954cc878a1794d14a9c7ded20addb7f1", + "evidence": "appointmentId=2085991138715021313, oceanBookingId=2085991133568610300, version=0", + "checkedAt": "2026-08-08T07:26:58.780Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "取消跨服务链路拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991138715021313/cancel" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "eb74b58e-6a01-4a04-be49-41f97484d2ba, f8d40331-2fd9-4d40-8355-58ca175defd2", + "traceId": "6fd12927bbd5438688386b421176fb2d", + "evidence": "", + "checkedAt": "2026-08-08T07:26:58.807Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "跨服务链路安全终态为 CANCELLED", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991138715021313/cancel" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "eb74b58e-6a01-4a04-be49-41f97484d2ba, f8d40331-2fd9-4d40-8355-58ca175defd2", + "traceId": "6fd12927bbd5438688386b421176fb2d", + "evidence": "status=CANCELLED", + "checkedAt": "2026-08-08T07:26:58.807Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "回查跨服务链路审计历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991138715021313" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e4864300-bb86-4b25-a0a5-7de357c7f3f3, 787bef44-7256-4825-860b-379454c350f1", + "traceId": "6b37b75e9997473c9e00f0bf6a4f78d8", + "evidence": "", + "checkedAt": "2026-08-08T07:26:58.834Z" + } + ] +} diff --git a/reports/admin-test-env-acceptance-coverage-final-20260808.json b/reports/admin-test-env-acceptance-coverage-final-20260808.json new file mode 100644 index 000000000..9363fbc2a --- /dev/null +++ b/reports/admin-test-env-acceptance-coverage-final-20260808.json @@ -0,0 +1,9823 @@ +{ + "reportName": "后台管理测试环境 HTTP API 验收", + "marker": "ADMIN-API-20260808072938523", + "gateway": "http://8.163.30.128:9000", + "generatedAt": "2026-08-08T07:30:08.318Z", + "startedAt": "2026-08-08T07:29:38.523Z", + "success": false, + "fatal": null, + "summary": { + "total": 524, + "passed": 520, + "failed": 4 + }, + "modules": [ + { + "name": "customers", + "startedAt": "2026-08-08T07:29:38.896Z", + "finishedAt": "2026-08-08T07:29:39.817Z", + "success": true, + "passed": 38, + "failed": 0, + "fatal": null + }, + { + "name": "overseas-storage-fees", + "startedAt": "2026-08-08T07:29:39.818Z", + "finishedAt": "2026-08-08T07:29:40.866Z", + "success": true, + "passed": 29, + "failed": 0, + "fatal": null + }, + { + "name": "system", + "startedAt": "2026-08-08T07:29:40.867Z", + "finishedAt": "2026-08-08T07:29:43.318Z", + "success": true, + "passed": 41, + "failed": 0, + "fatal": null + }, + { + "name": "master-data", + "startedAt": "2026-08-08T07:29:43.320Z", + "finishedAt": "2026-08-08T07:29:44.597Z", + "success": true, + "passed": 48, + "failed": 0, + "fatal": null + }, + { + "name": "orders", + "startedAt": "2026-08-08T07:29:44.600Z", + "finishedAt": "2026-08-08T07:29:49.043Z", + "success": true, + "passed": 49, + "failed": 0, + "fatal": null + }, + { + "name": "pricing", + "startedAt": "2026-08-08T07:29:49.045Z", + "finishedAt": "2026-08-08T07:29:52.752Z", + "success": true, + "passed": 26, + "failed": 0, + "fatal": null + }, + { + "name": "downloads", + "startedAt": "2026-08-08T07:29:52.754Z", + "finishedAt": "2026-08-08T07:29:54.937Z", + "success": true, + "passed": 8, + "failed": 0, + "fatal": null + }, + { + "name": "inbound-weight-ocr", + "startedAt": "2026-08-08T07:29:54.939Z", + "finishedAt": "2026-08-08T07:30:00.675Z", + "success": true, + "passed": 52, + "failed": 0, + "fatal": null + }, + { + "name": "orders-inbound-measurement-fixture", + "startedAt": "2026-08-08T07:30:00.675Z", + "finishedAt": "2026-08-08T07:30:04.045Z", + "success": true, + "passed": 49, + "failed": 0, + "fatal": null + }, + { + "name": "inbound-measurement", + "startedAt": "2026-08-08T07:30:04.046Z", + "finishedAt": "2026-08-08T07:30:04.914Z", + "success": true, + "passed": 28, + "failed": 0, + "fatal": null + }, + { + "name": "supplemental", + "startedAt": "2026-08-08T07:30:04.915Z", + "finishedAt": "2026-08-08T07:30:06.361Z", + "success": true, + "passed": 74, + "failed": 0, + "fatal": null + }, + { + "name": "supplemental-boundaries", + "startedAt": "2026-08-08T07:30:06.363Z", + "finishedAt": "2026-08-08T07:30:06.865Z", + "success": false, + "passed": 14, + "failed": 4, + "fatal": null + }, + { + "name": "ocean-bookings", + "startedAt": "2026-08-08T07:30:06.866Z", + "finishedAt": "2026-08-08T07:30:07.510Z", + "success": true, + "passed": 23, + "failed": 0, + "fatal": null + }, + { + "name": "truck-appointments", + "startedAt": "2026-08-08T07:30:07.512Z", + "finishedAt": "2026-08-08T07:30:08.225Z", + "success": true, + "passed": 35, + "failed": 0, + "fatal": null + }, + { + "name": "service-center-flow", + "startedAt": "2026-08-08T07:30:08.226Z", + "finishedAt": "2026-08-08T07:30:08.318Z", + "success": true, + "passed": 5, + "failed": 0, + "fatal": null + } + ], + "scenarios": [ + { + "name": "customer-dimension-rules", + "module": "customers", + "success": true, + "deploymentBlocked": false, + "passed": 13, + "failed": 0 + }, + { + "name": "customer-overseas-storage-fee-lifecycle", + "module": "overseas-storage-fees", + "success": true, + "deploymentBlocked": false, + "passed": 29, + "failed": 0 + }, + { + "name": "price-book-lifecycle", + "module": "pricing", + "success": true, + "deploymentBlocked": false, + "passed": 26, + "failed": 0 + }, + { + "name": "weight-image-recognition-and-confirmation", + "module": "inbound-weight-ocr", + "success": true, + "deploymentBlocked": false, + "passed": 52, + "failed": 0 + }, + { + "name": "mojia-carton-measurement", + "module": "inbound-measurement", + "success": true, + "deploymentBlocked": false, + "passed": 28, + "failed": 0 + }, + { + "name": "admin-boundary-automation", + "module": "supplemental-boundaries", + "success": false, + "deploymentBlocked": false, + "passed": 14, + "failed": 4 + } + ], + "deploymentBlockers": [], + "coverageGaps": [ + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库带数据行的合法 XLSX 写入", + "reason": "当前验收运行时无 XLSX 写入依赖;仅上传真实服务模板做解析/重复结果稳定性验证,未伪造数据行或写入主数据", + "category": "runtime-dependency" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司带数据行的合法 XLSX 写入", + "reason": "当前验收运行时无 XLSX 写入依赖;仅上传真实服务模板做解析/重复结果稳定性验证,未伪造数据行或写入主数据", + "category": "runtime-dependency" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位带数据行的合法 XLSX 写入", + "reason": "当前验收运行时无 XLSX 写入依赖;仅上传真实服务模板做解析/重复结果稳定性验证,未伪造数据行或写入主数据", + "category": "runtime-dependency" + }, + { + "module": "master-data", + "scenario": "optimistic-lock", + "name": "仓库/托盘/快递/往来单位旧 version 冲突", + "reason": "真实 DTO 未声明 version/expectedVersion 字段,不能伪造并发冲突断言;库位版本已由 supplemental-boundaries 覆盖", + "category": "contract-gap" + }, + { + "module": "supplemental-boundaries", + "scenario": "resource-occupancy", + "name": "托盘/库位真实占用删除保护", + "reason": "当前公共验收 API 未提供可安全构造并释放占用关联的独立 fixture;未操作历史资源", + "category": "no-public-fixture-api" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "附件引用安全边界", + "reason": "当前 Controller 无附件上传/引用 API,未伪造附件成功", + "category": "no-public-fixture-api" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "拖车预约状态历史独立查询", + "reason": "当前拖车预约 Controller 仅提供详情实体,没有公开 histories 查询字段/端点;已验证详情中的关联 ID、版本和审计时间字段", + "category": "no-public-history-api" + } + ], + "createdResources": { + "customer": { + "tenantId": "2085991810601701378", + "marker": "ADMIN-API-20260808072938523", + "contactPhone": "16174178897" + }, + "overseasStorageFeeCustomer": { + "tenantId": "2085991814414323714", + "marker": "ADMIN-API-20260808072938523", + "ownedByModule": true + }, + "systemPermission": { + "id": "2085991818914811905", + "code": "platform:acceptance:808072938523" + }, + "systemRole": { + "id": "2085991819439099906", + "code": "ADMIN_ACCEPT_808072938523", + "finalStatus": "DISABLED", + "retainedBecauseAssigned": true + }, + "systemUser": { + "membershipId": "2085991820668030979", + "username": "admin_accept_808072938523", + "finalStatus": "DISABLED" + }, + "warehouse": { + "id": "2085991829217525762", + "code": "AW808072938523", + "finalStatus": "INACTIVE" + }, + "location": { + "id": "2085991829813116929", + "warehouseId": "2085991829217525762", + "deleted": false + }, + "pallet": { + "id": "2085991830597451778", + "warehouseId": "2085991829217525762", + "deleted": true + }, + "expressCompany": { + "id": "2085991831255957505", + "code": "EX808072938523", + "finalStatus": "INACTIVE" + }, + "partner": { + "id": "2085991831843160066", + "code": "PT808072938523", + "finalStatus": "INACTIVE" + }, + "orders": { + "marker": "ADMIN-API-20260808072938523", + "tenantId": "10001", + "orderId": "2085991837014228994", + "productImageFileId": "2085991836628353025", + "boxTypes": [ + "SMALL", + "MEDIUM", + "LARGE", + "EXTRA_LARGE" + ], + "inboundId": "2085991847904718849", + "orderNo": "FL2085991837014228994", + "inboundCode": "RK-2085991837014228994", + "processStatus": "WAIT_MEASURE", + "taskId": "2085991847896330241" + }, + "ocrInbound": { + "tenantId": "10001", + "inboundId": "2085991847904718849", + "marker": "ADMIN-API-20260808072938523" + }, + "testInbound": { + "tenantId": "10001", + "inboundId": "2085991847904718849", + "marker": "ADMIN-API-20260808072938523" + }, + "priceBookVersion": { + "versionId": "2085991853294399490", + "marker": "ADMIN-API-20260808072938523", + "sourceSha256": "3170fd3aa8795cd816ca9600f87a6a2a06b15d0cf6042d4592f33d4b30c7b8ab" + }, + "exportTask": { + "id": "2085991868563783681" + }, + "inboundWeightOcr": { + "tenantId": "10001", + "inboundId": "2085991847904718849", + "resultIds": [ + "2085991890812448770", + "2085991899909894146" + ], + "cleaned": true + }, + "orchestrationFixtures": { + "inboundMeasurement": { + "marker": "ADMIN-API-20260808072938523-MOJIA", + "tenantId": "10001", + "orderId": "2085991904328613890", + "inboundId": "2085991910919942146" + } + }, + "inboundMeasurement": { + "marker": "ADMIN-API-20260808072938523-MOJIA", + "tenantId": "10001", + "inboundId": "2085991910919942146", + "measurementId": "2085991917890875394", + "boxCode": "RK-2085991904328613890#4-1", + "finalStatus": "APPROVED" + }, + "oceanBooking": { + "id": "2085991928569573377", + "marker": "ADMIN-API-20260808072938523", + "finalStatus": "RELEASED" + }, + "truckAppointment": { + "id": "2085991931891462145", + "marker": "ADMIN-API-20260808072938523", + "finalStatus": "CANCELLED" + }, + "serviceCenterFlow": { + "appointmentId": "2085991933460131841", + "oceanBookingId": "2085991928569573377", + "marker": "ADMIN-API-20260808072938523", + "finalStatus": "CANCELLED" + } + }, + "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": "80896cf1-ac3d-46b0-a3b5-9318726ef615, fe3c4d63-3257-4054-924a-27f593131ec3", + "traceId": "8b632380f4a943358c0b3c409784db71", + "evidence": "", + "checkedAt": "2026-08-08T07:29:38.896Z" + }, + { + "module": "customers", + "scenario": null, + "name": "检查测试联系电话可用性", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/contact-phone-availability?contactPhone=16174178897" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6feffeb6-65c8-41e9-a1cd-2ebc86f781f1, 9b00d2ce-c1e6-43d9-8f2e-750ea6495674", + "traceId": "e52ea05cca7340eb994ab5ddaa1605ec", + "evidence": "attempt=1", + "checkedAt": "2026-08-08T07:29:38.940Z" + }, + { + "module": "customers", + "scenario": null, + "name": "创建客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f29fa8cf-f739-4164-aa78-78d91a580ec3, 59f92680-daa7-4272-8653-be94c68db945", + "traceId": "037d1d3b58f94490b408663b3ebda013", + "evidence": "", + "checkedAt": "2026-08-08T07:29:39.309Z" + }, + { + "module": "customers", + "scenario": null, + "name": "创建响应客户字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f29fa8cf-f739-4164-aa78-78d91a580ec3, 59f92680-daa7-4272-8653-be94c68db945", + "traceId": "037d1d3b58f94490b408663b3ebda013", + "evidence": "missing=none", + "checkedAt": "2026-08-08T07:29:39.309Z" + }, + { + "module": "customers", + "scenario": null, + "name": "新客户基础字段正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f29fa8cf-f739-4164-aa78-78d91a580ec3, 59f92680-daa7-4272-8653-be94c68db945", + "traceId": "037d1d3b58f94490b408663b3ebda013", + "evidence": "tenantId=2085991810601701378, status=PROFILE_REQUIRED", + "checkedAt": "2026-08-08T07:29:39.309Z" + }, + { + "module": "customers", + "scenario": "customer-owner-provisioning", + "name": "创建客户生成初始密码", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f29fa8cf-f739-4164-aa78-78d91a580ec3, 59f92680-daa7-4272-8653-be94c68db945", + "traceId": "037d1d3b58f94490b408663b3ebda013", + "evidence": "generated=true, length=16", + "checkedAt": "2026-08-08T07:29:39.309Z" + }, + { + "module": "customers", + "scenario": "customer-owner-provisioning", + "name": "管理员用户名默认使用联系电话", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f29fa8cf-f739-4164-aa78-78d91a580ec3, 59f92680-daa7-4272-8653-be94c68db945", + "traceId": "037d1d3b58f94490b408663b3ebda013", + "evidence": "matches=true", + "checkedAt": "2026-08-08T07:29:39.309Z" + }, + { + "module": "customers", + "scenario": null, + "name": "待完善客户的审核字段保持为空", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f29fa8cf-f739-4164-aa78-78d91a580ec3, 59f92680-daa7-4272-8653-be94c68db945", + "traceId": "037d1d3b58f94490b408663b3ebda013", + "evidence": "creditCode=omitted, approvedAt=omitted", + "checkedAt": "2026-08-08T07:29:39.309Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "新客户尺寸规则可查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fe4e905b-33f2-4fb6-926d-a85bdb678c1b, 11eaa69a-aca7-4527-bc1d-d51714b9ed15", + "traceId": "269b759daa1f45f0996f2f7f0e99c71b", + "evidence": "tenantId=2085991810601701378", + "checkedAt": "2026-08-08T07:29:39.346Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "固定四箱规顺序完整且无重复", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fe4e905b-33f2-4fb6-926d-a85bdb678c1b, 11eaa69a-aca7-4527-bc1d-d51714b9ed15", + "traceId": "269b759daa1f45f0996f2f7f0e99c71b", + "evidence": "count=4, order=SMALL,MEDIUM,LARGE,EXTRA_LARGE", + "checkedAt": "2026-08-08T07:29:39.346Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "四箱规默认内径、加边和备注正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fe4e905b-33f2-4fb6-926d-a85bdb678c1b, 11eaa69a-aca7-4527-bc1d-d51714b9ed15", + "traceId": "269b759daa1f45f0996f2f7f0e99c71b", + "evidence": "defaults=matched", + "checkedAt": "2026-08-08T07:29:39.346Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "客户 ID、规则 ID 为字符串且初始版本为0", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fe4e905b-33f2-4fb6-926d-a85bdb678c1b, 11eaa69a-aca7-4527-bc1d-d51714b9ed15", + "traceId": "269b759daa1f45f0996f2f7f0e99c71b", + "evidence": "groupTenantIdType=string, rows=string/v0,string/v0,string/v0,string/v0", + "checkedAt": "2026-08-08T07:29:39.346Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "默认规则外径与 HALF_UP 三位 CBM 正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fe4e905b-33f2-4fb6-926d-a85bdb678c1b, 11eaa69a-aca7-4527-bc1d-d51714b9ed15", + "traceId": "269b759daa1f45f0996f2f7f0e99c71b", + "evidence": "derivedRows=4", + "checkedAt": "2026-08-08T07:29:39.346Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "PUT 每行只发送约定7字段并整组保存", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fe4e905b-33f2-4fb6-926d-a85bdb678c1b, 11eaa69a-aca7-4527-bc1d-d51714b9ed15", + "traceId": "269b759daa1f45f0996f2f7f0e99c71b", + "evidence": "fields=boxType,innerLengthCm,innerWidthCm,innerHeightCm,edgeAdditionCm,remark,version", + "checkedAt": "2026-08-08T07:29:39.346Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "一次 PUT 保存四条三位小数规则", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ca20be91-7804-4613-ae7d-6d5a5ab11f40, 44418c60-a304-4907-9466-eb49fc3b68e9", + "traceId": "7342676ecf4b4191aa9dc2dffc738010", + "evidence": "rows=4", + "checkedAt": "2026-08-08T07:29:39.382Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "修改后四行版本+1且派生外径/CBM正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ca20be91-7804-4613-ae7d-6d5a5ab11f40, 44418c60-a304-4907-9466-eb49fc3b68e9", + "traceId": "7342676ecf4b4191aa9dc2dffc738010", + "evidence": "versions=1,1,1,1", + "checkedAt": "2026-08-08T07:29:39.382Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "旧 version 重放 PUT 返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991810601701378" + }, + "http": 200, + "code": "A0409", + "message": "箱规尺寸配置已被修改,请刷新后重试", + "requestId": "8b3ffb08-ef02-442b-b871-dc1b48ff19b8", + "traceId": "c887299420d5407c923592d3cfbe7b66", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:29:39.408Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "冲突后重新查询四条规则", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4bf38a97-2295-47b2-9be0-dabb8b6341aa, 51671d24-83d5-4365-9aa2-b03996d670ff", + "traceId": "1be7157693474bd59d5a1e3f21052ab7", + "evidence": "", + "checkedAt": "2026-08-08T07:29:39.437Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "冲突请求未造成四行部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4bf38a97-2295-47b2-9be0-dabb8b6341aa, 51671d24-83d5-4365-9aa2-b03996d670ff", + "traceId": "1be7157693474bd59d5a1e3f21052ab7", + "evidence": "unchangedRows=4", + "checkedAt": "2026-08-08T07:29:39.437Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "恢复本轮修改前的四箱规配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "78b7fa11-9f37-4cb7-bbb4-80da2d4bce38, 0ca1aa85-c68d-4dfe-9433-76584bb5d85d", + "traceId": "40363991e3a14bc18950aaa43a9a859e", + "evidence": "restore=original-values", + "checkedAt": "2026-08-08T07:29:39.475Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "尺寸规则恢复后回显与初始值一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "78b7fa11-9f37-4cb7-bbb4-80da2d4bce38, 0ca1aa85-c68d-4dfe-9433-76584bb5d85d", + "traceId": "40363991e3a14bc18950aaa43a9a859e", + "evidence": "restoredRows=4", + "checkedAt": "2026-08-08T07:29:39.475Z" + }, + { + "module": "customers", + "scenario": null, + "name": "查询客户列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants?page=1&size=20&keyword=%E5%90%8E%E5%8F%B0%E5%AE%A2%E6%88%B7%E9%AA%8C%E6%94%B6-808072938523" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "44a4f170-926f-457a-bfdd-1b617abe100e, a9c38ffd-7360-4b2c-b3ed-3a2f67ec63ef", + "traceId": "ee971b31e9a34fad85fb05081aae3f78", + "evidence": "", + "checkedAt": "2026-08-08T07:29:39.507Z" + }, + { + "module": "customers", + "scenario": null, + "name": "列表包含新客户且字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants?page=1&size=20&keyword=%E5%90%8E%E5%8F%B0%E5%AE%A2%E6%88%B7%E9%AA%8C%E6%94%B6-808072938523" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "44a4f170-926f-457a-bfdd-1b617abe100e, a9c38ffd-7360-4b2c-b3ed-3a2f67ec63ef", + "traceId": "ee971b31e9a34fad85fb05081aae3f78", + "evidence": "found=true, missing=none", + "checkedAt": "2026-08-08T07:29:39.507Z" + }, + { + "module": "customers", + "scenario": null, + "name": "查询客户详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "465ac110-8866-4064-8791-ac377048ded6, 0e2523b7-aa3d-4314-85c3-26518ef74968", + "traceId": "5e2810eb000d454fa89eb964c7294800", + "evidence": "", + "checkedAt": "2026-08-08T07:29:39.530Z" + }, + { + "module": "customers", + "scenario": null, + "name": "客户详情基本信息正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "465ac110-8866-4064-8791-ac377048ded6, 0e2523b7-aa3d-4314-85c3-26518ef74968", + "traceId": "5e2810eb000d454fa89eb964c7294800", + "evidence": "tenantId=2085991810601701378", + "checkedAt": "2026-08-08T07:29:39.531Z" + }, + { + "module": "customers", + "scenario": null, + "name": "编辑客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7afda46e-3c6a-4f54-9533-040d25396f3a, 679b7b0c-6df1-4086-b5f8-ec96d2eb99ad", + "traceId": "e7a180faa2fd4862a47f8ce6cbed74fb", + "evidence": "", + "checkedAt": "2026-08-08T07:29:39.568Z" + }, + { + "module": "customers", + "scenario": null, + "name": "客户编辑正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7afda46e-3c6a-4f54-9533-040d25396f3a, 679b7b0c-6df1-4086-b5f8-ec96d2eb99ad", + "traceId": "e7a180faa2fd4862a47f8ce6cbed74fb", + "evidence": "tenantId=2085991810601701378", + "checkedAt": "2026-08-08T07:29:39.568Z" + }, + { + "module": "customers", + "scenario": null, + "name": "回查客户编辑结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "446289be-295e-46f3-ac02-53462b5de315, cc4655d1-9608-48ed-ac33-fe2a25d44327", + "traceId": "243f03aefbaf4c13a0464d9ae07ac2dc", + "evidence": "", + "checkedAt": "2026-08-08T07:29:39.589Z" + }, + { + "module": "customers", + "scenario": null, + "name": "客户编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "446289be-295e-46f3-ac02-53462b5de315, cc4655d1-9608-48ed-ac33-fe2a25d44327", + "traceId": "243f03aefbaf4c13a0464d9ae07ac2dc", + "evidence": "tenantId=2085991810601701378", + "checkedAt": "2026-08-08T07:29:39.589Z" + }, + { + "module": "customers", + "scenario": null, + "name": "业务概况查询资质", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991810601701378/qualifications" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "78c2094b-4405-4eb6-bd59-31e5284e12f7, 483a00e8-1ea6-4909-8a56-1a8547827dd6", + "traceId": "b1f389f480734cb6bcd6a249035fd039", + "evidence": "", + "checkedAt": "2026-08-08T07:29:39.625Z" + }, + { + "module": "customers", + "scenario": null, + "name": "资质概况结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991810601701378/qualifications" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "78c2094b-4405-4eb6-bd59-31e5284e12f7, 483a00e8-1ea6-4909-8a56-1a8547827dd6", + "traceId": "b1f389f480734cb6bcd6a249035fd039", + "evidence": "count=0", + "checkedAt": "2026-08-08T07:29:39.625Z" + }, + { + "module": "customers", + "scenario": null, + "name": "业务概况查询成员", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991810601701378/members" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b4672a73-911c-4a68-80ef-578d62581c49, dd2837e9-2068-47d5-bdd7-416e3bc5d746", + "traceId": "548c772220984dc29dd7333bf1442cdc", + "evidence": "", + "checkedAt": "2026-08-08T07:29:39.663Z" + }, + { + "module": "customers", + "scenario": "customer-owner-provisioning", + "name": "联系电话账号是企业管理员", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991810601701378/members" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b4672a73-911c-4a68-80ef-578d62581c49, dd2837e9-2068-47d5-bdd7-416e3bc5d746", + "traceId": "548c772220984dc29dd7333bf1442cdc", + "evidence": "ownerFound=true, matches=true", + "checkedAt": "2026-08-08T07:29:39.663Z" + }, + { + "module": "customers", + "scenario": null, + "name": "业务概况查询运单数量", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/tenant-counts?tenantIds=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5ffd549e-359f-44be-90cb-dd47f6f9e6e1, b7a4c1c1-e4f2-4a2c-97ad-f6dc40ea6531", + "traceId": "58f81c7727084cc3ad6bd6a102e38664", + "evidence": "", + "checkedAt": "2026-08-08T07:29:39.685Z" + }, + { + "module": "customers", + "scenario": null, + "name": "业务概况返回当前客户运单数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/tenant-counts?tenantIds=2085991810601701378" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5ffd549e-359f-44be-90cb-dd47f6f9e6e1, b7a4c1c1-e4f2-4a2c-97ad-f6dc40ea6531", + "traceId": "58f81c7727084cc3ad6bd6a102e38664", + "evidence": "orderCount=0", + "checkedAt": "2026-08-08T07:29:39.685Z" + }, + { + "module": "customers", + "scenario": null, + "name": "查询客户运单记录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=2085991810601701378&page=1&size=10" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3804f7a0-c91b-499f-9bba-cce18c4460db, d281bde3-9a9c-4b53-ade1-f67b6e5e11da", + "traceId": "8f23947e33fd42aca18b0e5898fe93df", + "evidence": "", + "checkedAt": "2026-08-08T07:29:39.719Z" + }, + { + "module": "customers", + "scenario": null, + "name": "运单记录分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=2085991810601701378&page=1&size=10" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3804f7a0-c91b-499f-9bba-cce18c4460db, d281bde3-9a9c-4b53-ade1-f67b6e5e11da", + "traceId": "8f23947e33fd42aca18b0e5898fe93df", + "evidence": "records=0, total=0", + "checkedAt": "2026-08-08T07:29:39.719Z" + }, + { + "module": "customers", + "scenario": "customer-draft-archive", + "name": "归档测试客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants/2085991810601701378/archive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8ec6b402-b01e-4ef5-9711-c2d64b890706, a4780c16-3c7c-407e-835f-e3c0e24c72c8", + "traceId": "2ade5a627fe6495697ff3c4403d0a95c", + "evidence": "tenantId=2085991810601701378", + "checkedAt": "2026-08-08T07:29:39.817Z" + }, + { + "module": "customers", + "scenario": "customer-draft-archive", + "name": "测试客户归档后处于停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants/2085991810601701378/archive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8ec6b402-b01e-4ef5-9711-c2d64b890706, a4780c16-3c7c-407e-835f-e3c0e24c72c8", + "traceId": "2ade5a627fe6495697ff3c4403d0a95c", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:29:39.817Z" + }, + { + "module": "overseas-storage-fees", + "scenario": null, + "name": "检查测试联系电话可用性", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/contact-phone-availability?contactPhone=16174179818" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6df3c762-7ce8-42ba-98fd-75696872e579, 32d056a3-c57c-498d-8c23-2f7af3371d2c", + "traceId": "6aa3dd69227447a595a9b9d87623f3b5", + "evidence": "attempt=1", + "checkedAt": "2026-08-08T07:29:39.846Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "创建海外仓费用隔离客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5921d4e6-8c0b-4464-980b-b9310ade74b2, 163786a1-0c54-46d5-b086-92d3db1b3241", + "traceId": "e282fd53c87446f789ee897b57a55471", + "evidence": "", + "checkedAt": "2026-08-08T07:29:40.224Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "海外仓费用隔离客户创建并带 marker", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5921d4e6-8c0b-4464-980b-b9310ade74b2, 163786a1-0c54-46d5-b086-92d3db1b3241", + "traceId": "e282fd53c87446f789ee897b57a55471", + "evidence": "tenantId=2085991814414323714", + "checkedAt": "2026-08-08T07:29:40.224Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "查询客户海外仓费用配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1efb5562-e568-4252-b82e-1c6c4a6162b9, a2702d06-82fd-4122-ab71-e98e489db801", + "traceId": "161d4a53d891420484b8a080d2f91b56", + "evidence": "tenantId=2085991814414323714", + "checkedAt": "2026-08-08T07:29:40.251Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "客户费用配置身份、默认 USD 与9档结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1efb5562-e568-4252-b82e-1c6c4a6162b9, a2702d06-82fd-4122-ab71-e98e489db801", + "traceId": "161d4a53d891420484b8a080d2f91b56", + "evidence": "ruleId=2085991814487130113, customerId=2085991814414323714, currency=USD, tiers=9", + "checkedAt": "2026-08-08T07:29:40.251Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "按客户查询海外仓费用规则", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/overseas-storage-fees?page=1&size=10&customerId=2085991814414323714" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "994d9f22-d82c-4673-be8f-e23de6313538, f79fcac8-272a-4bc3-9f84-f116757fae48", + "traceId": "1c760915b4ee46828ab4a414b43ee9f9", + "evidence": "tenantId=2085991814414323714", + "checkedAt": "2026-08-08T07:29:40.281Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "每个客户恰好一条规则且规则内恰好9档", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/overseas-storage-fees?page=1&size=10&customerId=2085991814414323714" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "994d9f22-d82c-4673-be8f-e23de6313538, f79fcac8-272a-4bc3-9f84-f116757fae48", + "traceId": "1c760915b4ee46828ab4a414b43ee9f9", + "evidence": "total=1, records=1, tiers=9", + "checkedAt": "2026-08-08T07:29:40.281Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "请求体客户 ID 与路径不一致时安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "客户ID与路径不一致", + "requestId": "3cbc944d-99cf-409f-b7e9-b13744688e20", + "traceId": "abef5d854c024f75a1091214db292300", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:29:40.302Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "非法费用类型安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "客户费用必须包含仓租5档和退货仓储费4档", + "requestId": "0d545a7f-3e3e-46f9-bd8a-af2119f0dfc3", + "traceId": "de044b00024f452aa6770e151a98c604", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:29:40.323Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "费用类型与计费单位不匹配安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "费用类型和计费单位不匹配", + "requestId": "f3d040fc-a1e2-423e-bc3b-d66356589cdf", + "traceId": "c1723d968ed14a128844cd71f9b9e371", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:29:40.360Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "阶梯区间重叠安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "阶梯必须从第1天开始且连续", + "requestId": "79cc89b5-7628-4462-bfee-88c4b8c45b8a", + "traceId": "a9584c6d0e9d4b9c9e680460241c1787", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:29:40.396Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "阶梯区间断档安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "阶梯必须从第1天开始且连续", + "requestId": "11f1e0da-8b5f-4ae2-b5d0-59ff61033bcf", + "traceId": "526822ed27c34a2eb60ae8555f7a1560", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:29:40.423Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "非9档整组提交安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "客户费用必须包含仓租5档和退货仓储费4档", + "requestId": "4b8e5443-9929-4aae-8552-2326b5bb5f53", + "traceId": "0bbcaf7e29a84137afd08e8b207ac3b9", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:29:40.451Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "负向请求后回查客户费用配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "645aa780-3b71-4d5f-81a3-4060f48d7210, 3c5b03fc-ac54-48a2-9552-997037b69aaf", + "traceId": "634073877da74cc7837f9451c113f769", + "evidence": "", + "checkedAt": "2026-08-08T07:29:40.476Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "所有非法整组请求均未造成部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "645aa780-3b71-4d5f-81a3-4060f48d7210, 3c5b03fc-ac54-48a2-9552-997037b69aaf", + "traceId": "634073877da74cc7837f9451c113f769", + "evidence": "version=0, tiers=9", + "checkedAt": "2026-08-08T07:29:40.476Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "整组修改客户海外仓费用", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c2af2b27-2eac-4916-aeb4-4c3e37ccc0fa, d8d38772-01d1-4cc8-b8e0-0083d309ef87", + "traceId": "3568c8fc885c4565bfc261d14d267b61", + "evidence": "tenantId=2085991814414323714, tiers=9", + "checkedAt": "2026-08-08T07:29:40.534Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "回查整组修改后的客户费用", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e113eb1c-d380-4fb5-9178-253f6c6266d6, 95bea2e0-bde6-420f-86f7-b1e157363302", + "traceId": "858e119c8ecc403c8a1768ec93170cad", + "evidence": "", + "checkedAt": "2026-08-08T07:29:40.558Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "修改后币种、价格、9档及版本整体回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e113eb1c-d380-4fb5-9178-253f6c6266d6, 95bea2e0-bde6-420f-86f7-b1e157363302", + "traceId": "858e119c8ecc403c8a1768ec93170cad", + "evidence": "currency=EUR, version=1, tiers=9", + "checkedAt": "2026-08-08T07:29:40.558Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "编辑后再次按客户查询唯一规则", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/overseas-storage-fees?page=1&size=10&customerId=2085991814414323714" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "721be651-ede7-4e88-a99b-3dc1a6a1e6a1, c70091d8-098d-4652-b501-2972a648542e", + "traceId": "ddf9c4b7c0d04264ad59ec3e4ee82dca", + "evidence": "", + "checkedAt": "2026-08-08T07:29:40.594Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "重复初始化结果保持幂等且编辑值未被覆盖", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/overseas-storage-fees?page=1&size=10&customerId=2085991814414323714" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "721be651-ede7-4e88-a99b-3dc1a6a1e6a1, c70091d8-098d-4652-b501-2972a648542e", + "traceId": "ddf9c4b7c0d04264ad59ec3e4ee82dca", + "evidence": "total=1, ruleId=2085991814487130113, version=1", + "checkedAt": "2026-08-08T07:29:40.595Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "旧 version 整组保存返回并发冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "A0409", + "message": "费用配置已被修改,请刷新后重试", + "requestId": "e5bf69d0-bb89-4608-8bee-3a1a08898a5b", + "traceId": "767e1aff567140e2be0ef7bb02787167", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:29:40.620Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "冲突后回查费用配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "adfdbca0-e6d6-4b8a-ba83-af532c8a5f22, c2068827-1ee8-4d2b-848f-979f96e019c8", + "traceId": "fce032cb763943eb85fc58f452fa8902", + "evidence": "", + "checkedAt": "2026-08-08T07:29:40.655Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "冲突未造成部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "adfdbca0-e6d6-4b8a-ba83-af532c8a5f22, c2068827-1ee8-4d2b-848f-979f96e019c8", + "traceId": "fce032cb763943eb85fc58f452fa8902", + "evidence": "version=1, unchanged=true", + "checkedAt": "2026-08-08T07:29:40.655Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "恢复本轮客户费用原始配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "32998a28-f397-441e-80c6-943853cc487a, b3b0f6fd-3a15-41b4-92f7-138dc534c7b0", + "traceId": "41beca64dc1d4a60aa00051e0aaa5638", + "evidence": "restore=initial", + "checkedAt": "2026-08-08T07:29:40.701Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "回查恢复后的客户费用", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "475d4ec6-0a8d-49ca-9360-3ab3703f076b, 7119f0cd-5023-4b5c-8cf8-b6b2493d29fc", + "traceId": "3b3ea2e4e7fe49c79e1198e9546b1ea4", + "evidence": "", + "checkedAt": "2026-08-08T07:29:40.730Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "恢复后9档、USD、免费档和无上限档一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "475d4ec6-0a8d-49ca-9360-3ab3703f076b, 7119f0cd-5023-4b5c-8cf8-b6b2493d29fc", + "traceId": "3b3ea2e4e7fe49c79e1198e9546b1ea4", + "evidence": "currency=USD, version=2, tiers=9", + "checkedAt": "2026-08-08T07:29:40.730Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "错误客户 ID 查询安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/999999999999999999/overseas-storage-fees" + }, + "http": 200, + "code": "A0404", + "message": "海外仓费用不存在", + "requestId": "b0454415-392a-40f3-b6f5-ae50fdd50551", + "traceId": "d0231228d0d941c4bb0d97c5fd3ac2a8", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:29:40.760Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "清理费用隔离客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/archive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3063894c-4618-4e7d-aa3e-16323919ab20, b2996e22-3a99-4f63-b49a-c87f5fd77fdb", + "traceId": "78a4637354ca423497a1fa07fd109e3f", + "evidence": "tenantId=2085991814414323714", + "checkedAt": "2026-08-08T07:29:40.866Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "费用隔离客户清理后停用", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants/2085991814414323714/archive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3063894c-4618-4e7d-aa3e-16323919ab20, b2996e22-3a99-4f63-b49a-c87f5fd77fdb", + "traceId": "78a4637354ca423497a1fa07fd109e3f", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:29:40.866Z" + }, + { + "module": "system", + "scenario": null, + "name": "查询菜单权限资源", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "82afc3d1-c9c6-456d-ae42-3365362251c9, 0b345d48-28c8-4057-b7fe-c2adce83f456", + "traceId": "c25cc390d7b542a89f31ba57589838d2", + "evidence": "", + "checkedAt": "2026-08-08T07:29:40.921Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限资源返回数组", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "82afc3d1-c9c6-456d-ae42-3365362251c9, 0b345d48-28c8-4057-b7fe-c2adce83f456", + "traceId": "c25cc390d7b542a89f31ba57589838d2", + "evidence": "count=151", + "checkedAt": "2026-08-08T07:29:40.921Z" + }, + { + "module": "system", + "scenario": null, + "name": "创建自定义权限资源", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0b54d48f-7854-4840-855f-a4c11842b784, f91dcde1-fac9-4a5e-9c34-2d77a28b61fa", + "traceId": "c474f37eb17d478681792341909131ef", + "evidence": "", + "checkedAt": "2026-08-08T07:29:40.952Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限创建字段正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0b54d48f-7854-4840-855f-a4c11842b784, f91dcde1-fac9-4a5e-9c34-2d77a28b61fa", + "traceId": "c474f37eb17d478681792341909131ef", + "evidence": "permissionId=2085991818914811905", + "checkedAt": "2026-08-08T07:29:40.952Z" + }, + { + "module": "system", + "scenario": null, + "name": "编辑自定义权限资源", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085991818914811905" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "98e346bd-5520-4c50-abf3-a0a725dc9a75, 7ac972de-f506-4767-bb04-445d59f89764", + "traceId": "d43dd96569834b9c8f32058bb40fe926", + "evidence": "", + "checkedAt": "2026-08-08T07:29:40.978Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限编辑正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085991818914811905" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "98e346bd-5520-4c50-abf3-a0a725dc9a75, 7ac972de-f506-4767-bb04-445d59f89764", + "traceId": "d43dd96569834b9c8f32058bb40fe926", + "evidence": "permissionId=2085991818914811905", + "checkedAt": "2026-08-08T07:29:40.978Z" + }, + { + "module": "system", + "scenario": null, + "name": "停用自定义权限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085991818914811905/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "84102ec9-6b9e-4703-a66b-ecd7b3f66007, 6fe1fe47-b8ad-4a6d-b710-825fa6c72b17", + "traceId": "b4863685bfe941a0888b4107cac9e7f9", + "evidence": "", + "checkedAt": "2026-08-08T07:29:41.003Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限状态回显 DISABLED", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085991818914811905/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "84102ec9-6b9e-4703-a66b-ecd7b3f66007, 6fe1fe47-b8ad-4a6d-b710-825fa6c72b17", + "traceId": "b4863685bfe941a0888b4107cac9e7f9", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:29:41.003Z" + }, + { + "module": "system", + "scenario": null, + "name": "启用自定义权限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085991818914811905/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "44ecc676-8edc-4e4b-baab-fa354313606b, ccc65897-1887-47ec-8d6b-38b64eafdb0f", + "traceId": "c8174b8de4e441b597d8f4b10afbfcd1", + "evidence": "", + "checkedAt": "2026-08-08T07:29:41.044Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限状态回显 ACTIVE", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085991818914811905/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "44ecc676-8edc-4e4b-baab-fa354313606b, ccc65897-1887-47ec-8d6b-38b64eafdb0f", + "traceId": "c8174b8de4e441b597d8f4b10afbfcd1", + "evidence": "status=ACTIVE", + "checkedAt": "2026-08-08T07:29:41.045Z" + }, + { + "module": "system", + "scenario": null, + "name": "创建平台自定义角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bef39224-3bff-4e08-90a1-2bcd7146cbe1, d2833a5b-529c-47ee-8ca2-87cd5c4fd6ac", + "traceId": "24ad039a37b84aeba424087f55a76787", + "evidence": "", + "checkedAt": "2026-08-08T07:29:41.077Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色创建字段正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bef39224-3bff-4e08-90a1-2bcd7146cbe1, d2833a5b-529c-47ee-8ca2-87cd5c4fd6ac", + "traceId": "24ad039a37b84aeba424087f55a76787", + "evidence": "roleId=2085991819439099906", + "checkedAt": "2026-08-08T07:29:41.077Z" + }, + { + "module": "system", + "scenario": null, + "name": "编辑平台自定义角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991819439099906" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9e9964b4-b62c-4e63-959d-d35847b26d1c, 5670aac3-6498-4653-9f82-29bd3d12c4a6", + "traceId": "dfcc0f349c9443b2a1f2917a8f6f076c", + "evidence": "", + "checkedAt": "2026-08-08T07:29:41.108Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色编辑正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991819439099906" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9e9964b4-b62c-4e63-959d-d35847b26d1c, 5670aac3-6498-4653-9f82-29bd3d12c4a6", + "traceId": "dfcc0f349c9443b2a1f2917a8f6f076c", + "evidence": "roleId=2085991819439099906", + "checkedAt": "2026-08-08T07:29:41.108Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色全量保存权限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5050ebfd-9a71-4312-9c34-1b46f6cc3466, acd3df46-d0a2-4510-ad70-48a9aceca20c", + "traceId": "ded5f124917a40ffb53d100d42156009", + "evidence": "", + "checkedAt": "2026-08-08T07:29:41.143Z" + }, + { + "module": "system", + "scenario": null, + "name": "回查平台角色列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6ff4fa11-60f8-47e0-8465-3f0074294df6, 8d205108-fd9a-40f1-b564-e18469380138", + "traceId": "39d760b85b714d51ba51f5d8b81764ea", + "evidence": "", + "checkedAt": "2026-08-08T07:29:41.194Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色权限 ID 正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6ff4fa11-60f8-47e0-8465-3f0074294df6, 8d205108-fd9a-40f1-b564-e18469380138", + "traceId": "39d760b85b714d51ba51f5d8b81764ea", + "evidence": "permissionIds=2085991818914811905", + "checkedAt": "2026-08-08T07:29:41.194Z" + }, + { + "module": "system", + "scenario": null, + "name": "停用自定义角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991819439099906/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "064af802-d480-4da2-9e9d-3cb45b89e674, c519f086-560e-45fa-b386-4acf45070d3a", + "traceId": "2da8696fb0ae4c59bf2adf70fcd94c3e", + "evidence": "", + "checkedAt": "2026-08-08T07:29:41.236Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色状态回显 DISABLED", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991819439099906/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "064af802-d480-4da2-9e9d-3cb45b89e674, c519f086-560e-45fa-b386-4acf45070d3a", + "traceId": "2da8696fb0ae4c59bf2adf70fcd94c3e", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:29:41.236Z" + }, + { + "module": "system", + "scenario": null, + "name": "启用自定义角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991819439099906/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "73386fbf-5b5e-4571-bc3d-5fa4447ae27c, e9ea165e-b1b5-40d6-a121-d21229dd5a71", + "traceId": "c1570389a9a14dc585496b1d7e0ef176", + "evidence": "", + "checkedAt": "2026-08-08T07:29:41.279Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色状态回显 ACTIVE", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991819439099906/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "73386fbf-5b5e-4571-bc3d-5fa4447ae27c, e9ea165e-b1b5-40d6-a121-d21229dd5a71", + "traceId": "c1570389a9a14dc585496b1d7e0ef176", + "evidence": "status=ACTIVE", + "checkedAt": "2026-08-08T07:29:41.279Z" + }, + { + "module": "system", + "scenario": null, + "name": "查询内部用户可选平台角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users/options" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f0e036a4-772d-44fb-94d0-7421620d2ece, c8a250e8-f672-4b33-afa5-0fe06b769bcc", + "traceId": "2f83dce08bf646869b149de27153edee", + "evidence": "", + "checkedAt": "2026-08-08T07:29:41.300Z" + }, + { + "module": "system", + "scenario": null, + "name": "用户选项包含平台与测试角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users/options" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f0e036a4-772d-44fb-94d0-7421620d2ece, c8a250e8-f672-4b33-afa5-0fe06b769bcc", + "traceId": "2f83dce08bf646869b149de27153edee", + "evidence": "tenants=1, roles=20", + "checkedAt": "2026-08-08T07:29:41.300Z" + }, + { + "module": "system", + "scenario": null, + "name": "检查测试联系电话可用性", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/contact-phone-availability?contactPhone=16174181300" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d4e91983-c529-4775-9c7d-586085b54106, ac6f53f6-1770-40e9-a5a1-aca5a28bed6b", + "traceId": "21d3354827554acfaec98e4fe950cc62", + "evidence": "attempt=1", + "checkedAt": "2026-08-08T07:29:41.337Z" + }, + { + "module": "system", + "scenario": null, + "name": "创建平台内部用户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/users" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "432bbc7a-6aeb-4078-ac04-434675f0249c, 6a07f7c1-9df8-44f0-a821-283ab0b8cb1f", + "traceId": "767484b91e094f8597fc9652add4987f", + "evidence": "", + "checkedAt": "2026-08-08T07:29:41.691Z" + }, + { + "module": "system", + "scenario": null, + "name": "内部用户账号、平台范围和角色正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/users" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "432bbc7a-6aeb-4078-ac04-434675f0249c, 6a07f7c1-9df8-44f0-a821-283ab0b8cb1f", + "traceId": "767484b91e094f8597fc9652add4987f", + "evidence": "membershipId=2085991820668030979", + "checkedAt": "2026-08-08T07:29:41.691Z" + }, + { + "module": "system", + "scenario": null, + "name": "按账号查询平台内部用户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users?page=1&size=20&keyword=admin_accept_808072938523" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "378d0543-926a-421d-9bba-fcd372035553, 6e256b3e-1915-42ca-8f67-c25b6e9738c2", + "traceId": "a365c047d23a4b018f77e67f63dbad3e", + "evidence": "", + "checkedAt": "2026-08-08T07:29:41.724Z" + }, + { + "module": "system", + "scenario": null, + "name": "用户列表包含新账号且字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users?page=1&size=20&keyword=admin_accept_808072938523" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "378d0543-926a-421d-9bba-fcd372035553, 6e256b3e-1915-42ca-8f67-c25b6e9738c2", + "traceId": "a365c047d23a4b018f77e67f63dbad3e", + "evidence": "records=1, missing=none, lastLoginAt=omitted", + "checkedAt": "2026-08-08T07:29:41.724Z" + }, + { + "module": "system", + "scenario": null, + "name": "编辑平台内部用户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085991820668030979" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ed9e7479-40ea-476d-b1f1-713feea66740, 1bc97f73-292e-409f-9f6f-ef3a5ba7a438", + "traceId": "6145f5161eac4ad1a0ccdd6b59c8ecdb", + "evidence": "", + "checkedAt": "2026-08-08T07:29:41.842Z" + }, + { + "module": "system", + "scenario": null, + "name": "用户编辑正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085991820668030979" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ed9e7479-40ea-476d-b1f1-713feea66740, 1bc97f73-292e-409f-9f6f-ef3a5ba7a438", + "traceId": "6145f5161eac4ad1a0ccdd6b59c8ecdb", + "evidence": "membershipId=2085991820668030979", + "checkedAt": "2026-08-08T07:29:41.842Z" + }, + { + "module": "system", + "scenario": null, + "name": "新建内部用户可使用初始密码登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "aa1acce9-c612-4774-923c-b5d71de5528a, bc3707c0-20da-47a9-9595-980bf531363b", + "traceId": "1cbc6a15e4cb477c9868cca33a1fb500", + "evidence": "username=admin_accept_808072938523", + "checkedAt": "2026-08-08T07:29:42.185Z" + }, + { + "module": "system", + "scenario": null, + "name": "重置平台内部用户密码", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085991820668030979/password" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c196c8a3-b8a3-419a-a43a-7fb129d537c4, bd95b238-7cf2-4487-9cc1-c7bfaed5fa5d", + "traceId": "9b1968e3122c4801b5de8b2226832032", + "evidence": "", + "checkedAt": "2026-08-08T07:29:42.587Z" + }, + { + "module": "system", + "scenario": null, + "name": "内部用户使用重置密码登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e4a56b44-b820-4217-b563-bd68e5fdf64d, b0b91fc8-bc43-4f02-ba22-bd21c5a0a676", + "traceId": "7db526b97de245b397399973e9f77dfa", + "evidence": "username=admin_accept_808072938523", + "checkedAt": "2026-08-08T07:29:42.918Z" + }, + { + "module": "system", + "scenario": null, + "name": "停用平台内部用户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085991820668030979/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "664aa98e-1582-461d-adb9-7fd3e722f916, e476ffc2-77fe-4b0c-9685-e9d3cf5809d7", + "traceId": "7f2eb24bd52b48ddb2147cd990d10e5e", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.037Z" + }, + { + "module": "system", + "scenario": null, + "name": "内部用户停用状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085991820668030979/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "664aa98e-1582-461d-adb9-7fd3e722f916, e476ffc2-77fe-4b0c-9685-e9d3cf5809d7", + "traceId": "7f2eb24bd52b48ddb2147cd990d10e5e", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:29:43.037Z" + }, + { + "module": "system", + "scenario": null, + "name": "停用用户禁止登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "A0403", + "message": "账号已禁用", + "requestId": "57a351a8-a114-4e45-a153-0c1461065fa9", + "traceId": "7ea62a259e0a4851845f4cb3eec59cb7", + "evidence": "HTTP=200, code=A0403", + "checkedAt": "2026-08-08T07:29:43.061Z" + }, + { + "module": "system", + "scenario": null, + "name": "清空测试角色权限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "70d1cab0-bb7c-4637-9cc2-423d4613937a, d99605fe-19e4-4156-8381-d232cd9140e2", + "traceId": "296f3dec71e44c088349ba4bb7dbacff", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.152Z" + }, + { + "module": "system", + "scenario": "system-role-protection", + "name": "已分配成员的角色禁止删除", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/iam/roles/2085991819439099906" + }, + "http": 200, + "code": "A0409", + "message": "角色已分配给成员,不能删除", + "requestId": "f6565acd-7018-4a64-a6b1-fb660a7fb14d", + "traceId": "36912ed0f7ae45a58b5d998697fe750a", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:29:43.188Z" + }, + { + "module": "system", + "scenario": null, + "name": "清理时停用测试角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991819439099906/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5d188220-a750-4193-8530-edd2ce9f064a, 8cb5ca21-93b3-4589-9055-c1a2fa6c727f", + "traceId": "ab082b7a7b1544d280a51916062e8d64", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.284Z" + }, + { + "module": "system", + "scenario": null, + "name": "保留测试角色处于停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085991819439099906/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5d188220-a750-4193-8530-edd2ce9f064a, 8cb5ca21-93b3-4589-9055-c1a2fa6c727f", + "traceId": "ab082b7a7b1544d280a51916062e8d64", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:29:43.284Z" + }, + { + "module": "system", + "scenario": null, + "name": "删除临时权限资源", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/iam/permissions/2085991818914811905" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "45b28c26-ac3a-4e96-b597-731f13d243db, 5fc4cc41-855f-45a2-a6a2-09ca948ad636", + "traceId": "f88f24269c404b34a3f93699c86b9836", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.317Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询平台仓库列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f533f33e-8a89-4e23-8d74-772925506b21, fdbc20aa-a6e3-4725-a383-4a4292cd7a64", + "traceId": "382cc26003fd433aae91c539d696c5fa", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.373Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库列表分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f533f33e-8a89-4e23-8d74-772925506b21, fdbc20aa-a6e3-4725-a383-4a4292cd7a64", + "traceId": "382cc26003fd433aae91c539d696c5fa", + "evidence": "total=287", + "checkedAt": "2026-08-08T07:29:43.374Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建平台公共仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "50bf5014-b478-432e-8b1e-b68569bf9fd4, a87c1fd8-a84d-4eb2-a25f-51c0cf4d3906", + "traceId": "495bdf00995444e585fa7d7655c8a17a", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.411Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库创建返回字符串兼容 ID", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "50bf5014-b478-432e-8b1e-b68569bf9fd4, a87c1fd8-a84d-4eb2-a25f-51c0cf4d3906", + "traceId": "495bdf00995444e585fa7d7655c8a17a", + "evidence": "warehouseId=2085991829217525762", + "checkedAt": "2026-08-08T07:29:43.411Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询平台仓库详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085991829217525762?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0001c090-8bbf-4a9e-a5da-67a3637c930f, dc241bac-4693-49d1-aa61-3b207072ca7c", + "traceId": "82c01180e3eb40ef8526c7de98b8b167", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.435Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库详情、地址和能力正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085991829217525762?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0001c090-8bbf-4a9e-a5da-67a3637c930f, dc241bac-4693-49d1-aa61-3b207072ca7c", + "traceId": "82c01180e3eb40ef8526c7de98b8b167", + "evidence": "addresses=1, capabilities=1", + "checkedAt": "2026-08-08T07:29:43.435Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑平台仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/warehouse-admin/2085991829217525762?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b930f8b8-f17d-4316-8ba7-a2114395a6f2, 50d60d94-f183-43d7-80c8-13f06e82db08", + "traceId": "02f367c9d901432aaf62e31d5ad463c4", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.475Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的平台仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085991829217525762?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "032545d3-f436-4896-ba84-6a881a33ce88, e84a5200-960c-443a-8cd5-8bc4ab9e1084", + "traceId": "00a165d805204a399c9968728d3b8462", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.513Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085991829217525762?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "032545d3-f436-4896-ba84-6a881a33ce88, e84a5200-960c-443a-8cd5-8bc4ab9e1084", + "traceId": "00a165d805204a399c9968728d3b8462", + "evidence": "warehouseId=2085991829217525762", + "checkedAt": "2026-08-08T07:29:43.513Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建仓库库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/locations?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9c0bb736-2bb3-4551-a990-5fde99a6d039, d50d851b-14ef-4efe-a5fc-9ccc06ee55eb", + "traceId": "ddc8a9ced6cb4e37b4ec848c66a7b544", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.550Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询库位详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991829813116929?tenantId=0&warehouseId=2085991829217525762" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fe3a9e79-8fe0-4c1e-a5b2-6bcc9244be0a, fb9f984a-ee9f-472e-bd3c-70550882f334", + "traceId": "5ccc7caeb6ac435ab62add8f6d822d8c", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.573Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "库位详情关联正确仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991829813116929?tenantId=0&warehouseId=2085991829217525762" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fe3a9e79-8fe0-4c1e-a5b2-6bcc9244be0a, fb9f984a-ee9f-472e-bd3c-70550882f334", + "traceId": "5ccc7caeb6ac435ab62add8f6d822d8c", + "evidence": "locationId=2085991829813116929", + "checkedAt": "2026-08-08T07:29:43.573Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085991829813116929?tenantId=0&warehouseId=2085991829217525762" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "aa9802e1-eeb5-487d-904e-56ab7a95e8c8, 0af5b9ca-a6cf-4761-829d-e2c0d95f4712", + "traceId": "5502372cac0045ee854fc06bdfbec675", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.599Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991829813116929?tenantId=0&warehouseId=2085991829217525762" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1062c8f5-037f-45e4-8e75-19fc656a2df6, d51c4ad2-0f5e-4cc9-941c-7035ad8e8530", + "traceId": "89d85de6f9a446d29473f3221b8d3afb", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.635Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "库位编辑与版本递增正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991829813116929?tenantId=0&warehouseId=2085991829217525762" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1062c8f5-037f-45e4-8e75-19fc656a2df6, d51c4ad2-0f5e-4cc9-941c-7035ad8e8530", + "traceId": "89d85de6f9a446d29473f3221b8d3afb", + "evidence": "version=1", + "checkedAt": "2026-08-08T07:29:43.635Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/locations/2085991829813116929/status?tenantId=0&warehouseId=2085991829217525762" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ff995b2e-7284-4597-b537-e3adda3db20a, 74439272-4c14-49d6-a211-5f04a14bbe18", + "traceId": "59764a51b7b24b36824bba17487e5d2b", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.662Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "删除未占用测试库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/locations/2085991829813116929?tenantId=0&warehouseId=2085991829217525762&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "98c416bc-a060-4945-b70d-578174fde0fd, a487e040-277f-49e8-a1f6-6b4daef853b4", + "traceId": "6ced777bc1dc4aa9acffa51720c20d9b", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.704Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建仓库托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/pallets?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1f87bb5c-3092-4fac-b2d4-9e98b322d23e, 48c28cf8-ffff-4704-bb1c-fb7f2f5d6c9b", + "traceId": "a89487e133a94f689e5a8c83b83becf6", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.736Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询托盘详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085991830597451778?tenantId=0&warehouseId=2085991829217525762" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4d26ed69-a697-4cba-98e9-5ab8a159c4e1, 22e191c6-8ad9-45d1-bb72-168c15738643", + "traceId": "b29aaa4d8f3a41ca8826c04aa94f20f4", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.764Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "托盘详情关联正确仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085991830597451778?tenantId=0&warehouseId=2085991829217525762" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4d26ed69-a697-4cba-98e9-5ab8a159c4e1, 22e191c6-8ad9-45d1-bb72-168c15738643", + "traceId": "b29aaa4d8f3a41ca8826c04aa94f20f4", + "evidence": "palletId=2085991830597451778", + "checkedAt": "2026-08-08T07:29:43.764Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/pallets/2085991830597451778?tenantId=0&warehouseId=2085991829217525762" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "19551c22-4fd7-4088-bf1f-448da5b75370, ad55c52c-c2cf-4e71-aaa0-2d51c2ac9372", + "traceId": "4f368ffe0c094b83a883c7d1ae14a6ff", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.795Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085991830597451778?tenantId=0&warehouseId=2085991829217525762" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2fc23983-ebd1-44de-8f9d-c582a6a0aa89, a7ab9299-a60c-4500-8bc1-81b69dd0f89e", + "traceId": "0e3eca5771ae4bf5bf83a903ca31f55a", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.825Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "托盘编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085991830597451778?tenantId=0&warehouseId=2085991829217525762" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2fc23983-ebd1-44de-8f9d-c582a6a0aa89, a7ab9299-a60c-4500-8bc1-81b69dd0f89e", + "traceId": "0e3eca5771ae4bf5bf83a903ca31f55a", + "evidence": "palletId=2085991830597451778", + "checkedAt": "2026-08-08T07:29:43.825Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "删除未使用测试托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/pallets/2085991830597451778?tenantId=0&warehouseId=2085991829217525762" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "97b88a55-517f-4eb7-bc42-a51c6e5d42e3, d1992977-c6a3-427d-a64b-5b7196675210", + "traceId": "c7435db9edab4f07921535ea5c89e0cc", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.862Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b1d07928-dec4-4bbf-ac5d-e99e33b83092, 74eb87c0-c600-42fa-a5fc-0bf4a942be11", + "traceId": "e14f4cc8e7644d798ab31112e04579f0", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.893Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询快递公司详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/2085991831255957505?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b3d13afc-d801-46ff-b283-4702809d1ad3, f38be455-3983-48c0-b161-b1ed0536b8b1", + "traceId": "c7fd1f2e076342328de69a2a7bb2eac4", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.913Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司详情正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/2085991831255957505?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b3d13afc-d801-46ff-b283-4702809d1ad3, f38be455-3983-48c0-b161-b1ed0536b8b1", + "traceId": "c7fd1f2e076342328de69a2a7bb2eac4", + "evidence": "expressId=2085991831255957505", + "checkedAt": "2026-08-08T07:29:43.913Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/express-companies/2085991831255957505?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "00969490-b1ea-492e-9d33-f7471ac3e918, 5af72e26-8bc9-4ea2-a01c-5edab2eb2e51", + "traceId": "eaf2740e80364f9185b3d7b43ff96bc4", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.940Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/express-companies/2085991831255957505/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ec91e352-39a3-4a33-a85f-7d47648e0252, 70af32ef-be88-46e5-bf87-828fbe3b43e0", + "traceId": "594c92414b854d709b4d9d35ceac694f", + "evidence": "", + "checkedAt": "2026-08-08T07:29:43.971Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "筛选快递公司列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=EX808072938523" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "430bd6c0-04fc-4380-a5e2-4b0a506506ab, 1e049416-2960-48a9-bac8-e5e40dd19a2f", + "traceId": "a2ec9833862e4a9a83c9d0882e595a62", + "evidence": "", + "checkedAt": "2026-08-08T07:29:44.002Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司列表回显停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=EX808072938523" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "430bd6c0-04fc-4380-a5e2-4b0a506506ab, 1e049416-2960-48a9-bac8-e5e40dd19a2f", + "traceId": "a2ec9833862e4a9a83c9d0882e595a62", + "evidence": "records=1", + "checkedAt": "2026-08-08T07:29:44.002Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b4604ce3-5b78-421b-a921-e5e9a5650f64, c4cd35e7-a382-464d-98b8-db4589fdd438", + "traceId": "72e2282f33ee43cbaf94c6e9ca3081f6", + "evidence": "", + "checkedAt": "2026-08-08T07:29:44.035Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询往来单位详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/2085991831843160066?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1a652e99-c0b0-4d69-bfb4-f280aacf8af6, f993d218-3def-4f8f-80c0-6d2b9fe7491c", + "traceId": "38c2cd9f20f34e6caff0a200ed8d296e", + "evidence": "", + "checkedAt": "2026-08-08T07:29:44.061Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位详情正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/2085991831843160066?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1a652e99-c0b0-4d69-bfb4-f280aacf8af6, f993d218-3def-4f8f-80c0-6d2b9fe7491c", + "traceId": "38c2cd9f20f34e6caff0a200ed8d296e", + "evidence": "partnerId=2085991831843160066", + "checkedAt": "2026-08-08T07:29:44.061Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/partners/2085991831843160066?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "21ae8751-a7c4-4cdd-8515-8c25c09147a2, f477e404-ddd5-43a1-96cd-ffc3092364c2", + "traceId": "d30352479f40462988b599d556c4e92d", + "evidence": "", + "checkedAt": "2026-08-08T07:29:44.100Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/partners/2085991831843160066/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "11c5c6d7-84a0-4528-b7f2-e768dc49d944, acce3754-4008-4f57-8e65-023348ee6693", + "traceId": "4aa182048249486f87ee956357cec8af", + "evidence": "", + "checkedAt": "2026-08-08T07:29:44.132Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "筛选往来单位列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=PT808072938523" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "17698308-6f09-4011-b0dd-97563e4d1f15, 5e317c88-5ceb-4b86-ab5f-3ca4db47d15d", + "traceId": "6e78f1c220e343739033ca00673dee6d", + "evidence": "", + "checkedAt": "2026-08-08T07:29:44.156Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位列表回显编辑与停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=PT808072938523" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "17698308-6f09-4011-b0dd-97563e4d1f15, 5e317c88-5ceb-4b86-ab5f-3ca4db47d15d", + "traceId": "6e78f1c220e343739033ca00673dee6d", + "evidence": "records=1", + "checkedAt": "2026-08-08T07:29:44.156Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载仓库导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/import-template" + }, + "http": 200, + "code": null, + "message": "3853 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "c6282ec5-cea8-4b2e-9ede-36eb051875cb, 63d91593-9fbd-4d5b-b5ce-b21f2ad85ab9", + "traceId": "c0fdbc7af1cf427a9eddbdae1e623eaf", + "evidence": "bytes=3853, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:29:44.200Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库合法模板 dryRun 导入契约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3d734517-c123-4a39-81c7-7978919e190c, 01c63805-6a94-4667-a192-85953c1f9b7d", + "traceId": "e0c53053525f4d788e0729ac912689f3", + "evidence": "HTTP=200, code=200, rows=0, parserSuccess=false", + "checkedAt": "2026-08-08T07:29:44.241Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库合法模板重复 dryRun 幂等结果稳定", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "78368e11-547c-4745-9137-8dc8ed67e542, 8d91ef9f-3e0f-44d4-90dd-01638d7ea6ff", + "traceId": "bf0aeffae29a4c64bde2d06ed11a605f", + "evidence": "firstRows=0, replayRows=0", + "checkedAt": "2026-08-08T07:29:44.287Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载快递公司导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/import-template" + }, + "http": 200, + "code": null, + "message": "3692 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "53f98ebe-28d8-4e47-914c-8c6bdf082568, 9645b673-07cc-424a-be3c-cfbd4717bb9a", + "traceId": "c823c8be005846ac8807577d036765eb", + "evidence": "bytes=3692, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:29:44.335Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司合法模板 dryRun 导入契约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e77d1817-f8e3-4da8-b7f5-3d0f5dd59155, 6b5eafa5-55d7-46a9-910b-531a5b5cd723", + "traceId": "187c85f7e7724290a9257a92d8e5fbb7", + "evidence": "HTTP=200, code=200, rows=0, parserSuccess=false", + "checkedAt": "2026-08-08T07:29:44.392Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司合法模板重复 dryRun 幂等结果稳定", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2095d8bc-016c-4ee6-bc0e-59b844976061, 2b4da694-1d92-4678-b6a1-a42cf62e7334", + "traceId": "af9320fabc4d46c5b3316e0c3efba232", + "evidence": "firstRows=0, replayRows=0", + "checkedAt": "2026-08-08T07:29:44.432Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载往来单位导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/import-template" + }, + "http": 200, + "code": null, + "message": "3830 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "dfbed653-5e91-4baf-94df-cd6152e81477, 5fc48234-c6a0-46d6-8239-e22002bc0363", + "traceId": "21b03487a04a465792a611cda8782733", + "evidence": "bytes=3830, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:29:44.480Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位合法模板 dryRun 导入契约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a4d525f6-6b81-4dca-903d-359a2b90b418, 52d72cd6-4b84-4e5f-a3fb-ce7c633d486b", + "traceId": "582bbfaf5b6a4adbb58edaa9493d73e9", + "evidence": "HTTP=200, code=200, rows=0, parserSuccess=false", + "checkedAt": "2026-08-08T07:29:44.516Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位合法模板重复 dryRun 幂等结果稳定", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "955bbe90-1a3c-4192-a574-2f9140c1559f, 09b140d8-289f-43e4-98d0-2b39a0dcaaf4", + "traceId": "225c140ecade4b998040c3d1d2aec937", + "evidence": "firstRows=0, replayRows=0", + "checkedAt": "2026-08-08T07:29:44.554Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用测试仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/warehouse-admin/2085991829217525762/status?tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e36d15ee-82bb-4da1-bff9-bee76bf2d0a8, 19b6a40a-600c-45f1-8d15-3be0c68ac576", + "traceId": "178e3c3436eb49d9b79f5d0ae5f8a682", + "evidence": "", + "checkedAt": "2026-08-08T07:29:44.597Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 测试账号登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "893d1e35-4384-4431-b5b1-1b2a9180a0ff, dfd41a08-6517-4195-8695-812d31e7558e", + "traceId": "41a1aa140a66431eb5eb6207f2070b5f", + "evidence": "username=merchant_admin", + "checkedAt": "2026-08-08T07:29:44.941Z" + }, + { + "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": "18f3505d-7e24-49e6-b376-25100671e2b1, e558442e-ed3e-4fed-8751-41dff4add183", + "traceId": "a45c804c28fd4a279bdaaa4283d0503e", + "evidence": "", + "checkedAt": "2026-08-08T07:29:44.961Z" + }, + { + "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": "18f3505d-7e24-49e6-b376-25100671e2b1, e558442e-ed3e-4fed-8751-41dff4add183", + "traceId": "a45c804c28fd4a279bdaaa4283d0503e", + "evidence": "tenantId=10001, status=ACTIVE", + "checkedAt": "2026-08-08T07:29:44.961Z" + }, + { + "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": "12144b4e-39e5-47fe-b7c3-409935409a71, 32a10d5c-7209-401c-80f4-8dee2f480947", + "traceId": "5b98fa27871c453a8770d6872053154c", + "evidence": "tenantId=10001", + "checkedAt": "2026-08-08T07:29:44.992Z" + }, + { + "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": "12144b4e-39e5-47fe-b7c3-409935409a71, 32a10d5c-7209-401c-80f4-8dee2f480947", + "traceId": "5b98fa27871c453a8770d6872053154c", + "evidence": "types=SMALL,MEDIUM,LARGE,EXTRA_LARGE", + "checkedAt": "2026-08-08T07:29:44.992Z" + }, + { + "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": "e4873097-0e89-463b-8a45-eaa31aa67256, d0fc6b2f-5910-4629-a51b-c7b5093b9783", + "traceId": "42adf76fa9624aceb6f8b7b410565743", + "evidence": "", + "checkedAt": "2026-08-08T07:29:45.026Z" + }, + { + "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": "e4873097-0e89-463b-8a45-eaa31aa67256, d0fc6b2f-5910-4629-a51b-c7b5093b9783", + "traceId": "42adf76fa9624aceb6f8b7b410565743", + "evidence": "count=2", + "checkedAt": "2026-08-08T07:29:45.027Z" + }, + { + "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": "e5cf1ab3-9f2c-4504-8552-5305e4d29f00, 8fec0b39-4ddd-4c53-b368-f53446d2ea1b", + "traceId": "fc53b365f82b43109a7d998a4e1b51a2", + "evidence": "", + "checkedAt": "2026-08-08T07:29:45.080Z" + }, + { + "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": "e5cf1ab3-9f2c-4504-8552-5305e4d29f00, 8fec0b39-4ddd-4c53-b368-f53446d2ea1b", + "traceId": "fc53b365f82b43109a7d998a4e1b51a2", + "evidence": "count=200", + "checkedAt": "2026-08-08T07:29:45.080Z" + }, + { + "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": "b7a7cb37-055e-407c-9790-9683a1be7cca, 66b2e19a-ef09-456c-9e5b-8de5426317e5", + "traceId": "e752318efb2f4e61a467f04c0c93fe60", + "evidence": "", + "checkedAt": "2026-08-08T07:29:45.121Z" + }, + { + "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": "b7a7cb37-055e-407c-9790-9683a1be7cca, 66b2e19a-ef09-456c-9e5b-8de5426317e5", + "traceId": "e752318efb2f4e61a467f04c0c93fe60", + "evidence": "count=15", + "checkedAt": "2026-08-08T07:29:45.121Z" + }, + { + "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": "9a41a5bd-5feb-4c0c-b557-3a62e2b073c1, 3b28a55d-08e0-48fc-a7be-4e6d8275a50b", + "traceId": "a22d3f8f443c4a2180f6b733c3138aa6", + "evidence": "", + "checkedAt": "2026-08-08T07:29:45.148Z" + }, + { + "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": "56cf115f-6920-4c88-b0fa-6d1783e8759f, 6936e9ce-4965-44a7-ba30-b20c9db12f6d", + "traceId": "d9e744bcd5114af29c7ba2c7410d393f", + "evidence": "contentType=image/png", + "checkedAt": "2026-08-08T07:29:45.175Z" + }, + { + "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": "56cf115f-6920-4c88-b0fa-6d1783e8759f, 6936e9ce-4965-44a7-ba30-b20c9db12f6d", + "traceId": "d9e744bcd5114af29c7ba2c7410d393f", + "evidence": "fileIdType=string, contentType=image/png", + "checkedAt": "2026-08-08T07:29:45.175Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Client 可下载本轮产品图片", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/files/product-images/2085991836628353025" + }, + "http": 200, + "code": null, + "message": null, + "requestId": "7824444b-b31f-4368-b246-e0d3bafd2898, c3423dc3-ea26-42d5-8f23-10e8f04f20ad", + "traceId": "4f96afcaf39041ec92670d8c8afce357", + "evidence": "bytes=68, contentType=image/png", + "checkedAt": "2026-08-08T07:29:45.209Z" + }, + { + "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": "560564a8-d362-40d0-885f-4b1754187978, ca31843c-539c-481b-963e-62cf8ddb0e9a", + "traceId": "453d88f52fb342b9ae55bacefa0c600a", + "evidence": "marker=ADMIN-API-20260808072938523", + "checkedAt": "2026-08-08T07:29:45.275Z" + }, + { + "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": "23c09cdb-3b08-495e-aaf0-7805bb556fb8, 94faeb39-f566-44c8-99de-75f66e02ad9c", + "traceId": "54ebcc749a8944188745b8053446a37b", + "evidence": "", + "checkedAt": "2026-08-08T07:29:45.307Z" + }, + { + "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": "23c09cdb-3b08-495e-aaf0-7805bb556fb8, 94faeb39-f566-44c8-99de-75f66e02ad9c", + "traceId": "54ebcc749a8944188745b8053446a37b", + "evidence": "orderId=2085991837014228994, replayedId=2085991837014228994", + "checkedAt": "2026-08-08T07:29:45.307Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 查询隔离订单草稿", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991837014228994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f47746fc-57d3-4f05-b6e4-0919f3ec9c8b, d50fb318-28e5-4c3c-aa6b-7008b5ef7fb5", + "traceId": "d2e01d5225db45959003504e3cfd8889", + "evidence": "", + "checkedAt": "2026-08-08T07:29:45.336Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 草稿身份、marker 和状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991837014228994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f47746fc-57d3-4f05-b6e4-0919f3ec9c8b, d50fb318-28e5-4c3c-aa6b-7008b5ef7fb5", + "traceId": "d2e01d5225db45959003504e3cfd8889", + "evidence": "orderNo=FL2085991837014228994, status=DRAFT", + "checkedAt": "2026-08-08T07:29:45.336Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991837014228994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f47746fc-57d3-4f05-b6e4-0919f3ec9c8b, d50fb318-28e5-4c3c-aa6b-7008b5ef7fb5", + "traceId": "d2e01d5225db45959003504e3cfd8889", + "evidence": "cargoes=4, imageFileId=2085991836628353025", + "checkedAt": "2026-08-08T07:29:45.336Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 提交隔离订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/merchant/v1/orders/first-leg/2085991837014228994/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1ffef31e-20bd-4a26-bd15-7550f82dcf38, 7e9c5788-b578-47ca-9bb2-4d0ecdf84156", + "traceId": "fbe8aa8a074f46baa77398d4ce4ea19d", + "evidence": "orderId=2085991837014228994", + "checkedAt": "2026-08-08T07:29:45.400Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 回查已提交订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991837014228994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c14526d9-ebab-4418-87c0-d14658d84e6a, 6c7164a2-d53e-43e0-a340-31a124e4ccf6", + "traceId": "f1ea19665a4f45d885879b28bc9bdb75", + "evidence": "", + "checkedAt": "2026-08-08T07:29:45.428Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 订单已进入待审核状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991837014228994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c14526d9-ebab-4418-87c0-d14658d84e6a, 6c7164a2-d53e-43e0-a340-31a124e4ccf6", + "traceId": "f1ea19665a4f45d885879b28bc9bdb75", + "evidence": "status=SUBMITTED", + "checkedAt": "2026-08-08T07:29:45.428Z" + }, + { + "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=FL2085991837014228994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "44e87264-97bd-475c-8127-09db38b9489e, a31115ff-5c4d-4d89-9cdc-235511c1fe7e", + "traceId": "ae2b5c49669f48d289f83c47969b9971", + "evidence": "", + "checkedAt": "2026-08-08T07:29:45.469Z" + }, + { + "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=FL2085991837014228994" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "44e87264-97bd-475c-8127-09db38b9489e, a31115ff-5c4d-4d89-9cdc-235511c1fe7e", + "traceId": "ae2b5c49669f48d289f83c47969b9971", + "evidence": "orderId=2085991837014228994, found=true", + "checkedAt": "2026-08-08T07:29:45.470Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询统一订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085991837014228994?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c004ec33-811c-4d68-83c9-74d1963c4cf3, 581467da-8e2d-4712-b414-f61bcf39a9ed", + "traceId": "95728784f54b4dff8422d60a4619aeb5", + "evidence": "", + "checkedAt": "2026-08-08T07:29:45.493Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 统一订单详情身份与待审核状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085991837014228994?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c004ec33-811c-4d68-83c9-74d1963c4cf3, 581467da-8e2d-4712-b414-f61bcf39a9ed", + "traceId": "95728784f54b4dff8422d60a4619aeb5", + "evidence": "mainStatus=PENDING_REVIEW, timeline=2", + "checkedAt": "2026-08-08T07:29:45.494Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085991837014228994&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "006d98b3-3323-4b48-96a4-99bd6269c362, dd138de6-9513-48cc-8e6a-4e4a473952e6", + "traceId": "9f15fb25fc034d65aedbdb98a6fa3db7", + "evidence": "", + "checkedAt": "2026-08-08T07:29:45.523Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单列表只核对本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085991837014228994&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "006d98b3-3323-4b48-96a4-99bd6269c362, dd138de6-9513-48cc-8e6a-4e4a473952e6", + "traceId": "9f15fb25fc034d65aedbdb98a6fa3db7", + "evidence": "orderId=2085991837014228994, found=true", + "checkedAt": "2026-08-08T07:29:45.523Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991837014228994?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b20c729d-5f3f-4c81-bf03-f89be8d115eb, ca465eea-9006-4161-9b95-05c6ac6aaf81", + "traceId": "cf83d43ff0fd4d638498bd320924b89f", + "evidence": "", + "checkedAt": "2026-08-08T07:29:45.553Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单详情聚合结构完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991837014228994?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b20c729d-5f3f-4c81-bf03-f89be8d115eb, ca465eea-9006-4161-9b95-05c6ac6aaf81", + "traceId": "cf83d43ff0fd4d638498bd320924b89f", + "evidence": "cargoes=4, history=2", + "checkedAt": "2026-08-08T07:29:45.553Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991837014228994?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b20c729d-5f3f-4c81-bf03-f89be8d115eb, ca465eea-9006-4161-9b95-05c6ac6aaf81", + "traceId": "cf83d43ff0fd4d638498bd320924b89f", + "evidence": "cargoes=4, imageFileId=2085991836628353025", + "checkedAt": "2026-08-08T07:29:45.553Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 为本轮订单添加内部备注", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991837014228994/internal-notes?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "760dce79-19f0-4543-9593-f5d1bf5b50b1, 904c80df-8e9d-4020-8bb6-da7a997d7c58", + "traceId": "ef041904faba4593816be5d05d95770d", + "evidence": "", + "checkedAt": "2026-08-08T07:29:45.587Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 审核通过本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991837014228994/approve?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d5755420-cb7f-40d5-8854-9fa11b61e706, 84d5e96b-e6d5-4f17-920d-d5f1ba6ebef0", + "traceId": "a872349cd7b0473a893ecc359765f734", + "evidence": "orderId=2085991837014228994", + "checkedAt": "2026-08-08T07:29:45.621Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "审核后生成隔离入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085991837014228994?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5036e494-4077-4117-a31f-c799cf06266f, a1e781c6-2249-4098-8b3d-56bf65f66141", + "traceId": "fac4322b0c02478aad7585b7938d7601", + "evidence": "inboundId=2085991847904718849", + "checkedAt": "2026-08-08T07:29:48.808Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮入库单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991847904718849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6392241f-9ea7-489d-9a0e-17ec5a286f52, ffa0ad6a-7007-4c84-89df-e456e217e099", + "traceId": "026240f33b3e4abd92382eeb07e9932e", + "evidence": "inboundId=2085991847904718849", + "checkedAt": "2026-08-08T07:29:48.838Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "隔离入库单 marker 来源与可测量状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991847904718849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6392241f-9ea7-489d-9a0e-17ec5a286f52, ffa0ad6a-7007-4c84-89df-e456e217e099", + "traceId": "026240f33b3e4abd92382eeb07e9932e", + "evidence": "markerFound=true, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T07:29:48.838Z" + }, + { + "module": "orders", + "scenario": null, + "name": "入库单详情包含托盘库位、文件、备注和状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991847904718849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6392241f-9ea7-489d-9a0e-17ec5a286f52, ffa0ad6a-7007-4c84-89df-e456e217e099", + "traceId": "026240f33b3e4abd92382eeb07e9932e", + "evidence": "inboundId=2085991847904718849, history=1", + "checkedAt": "2026-08-08T07:29:48.838Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询入库单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085991837014228994&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "728f2872-c3f4-4056-8b8a-73db07dd1770, f0884449-ef71-46f4-9870-4cc5ce4aa676", + "traceId": "4b524770977f44f09e5e37cf66804627", + "evidence": "", + "checkedAt": "2026-08-08T07:29:48.871Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 入库单列表只核对本轮入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085991837014228994&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "728f2872-c3f4-4056-8b8a-73db07dd1770, f0884449-ef71-46f4-9870-4cc5ce4aa676", + "traceId": "4b524770977f44f09e5e37cf66804627", + "evidence": "inboundId=2085991847904718849, total=1", + "checkedAt": "2026-08-08T07:29:48.871Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮订单履约任务", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085991837014228994?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f3cd00bc-d9bc-472f-a57b-eaa3562431b0, 03b1978b-4b05-45c2-8c1f-be2e7e1c200a", + "traceId": "71566adbb3eb4f9f9587bd7ce2bde9df", + "evidence": "新订单应生成可查询的履约任务", + "checkedAt": "2026-08-08T07:29:48.900Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "履约任务与本轮订单和客户一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085991837014228994?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f3cd00bc-d9bc-472f-a57b-eaa3562431b0, 03b1978b-4b05-45c2-8c1f-be2e7e1c200a", + "traceId": "71566adbb3eb4f9f9587bd7ce2bde9df", + "evidence": "taskId=2085991847896330241, status=PENDING_ASSIGNMENT", + "checkedAt": "2026-08-08T07:29:48.900Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询本轮履约任务分配历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085991847896330241/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1414dc6a-d876-4c6a-9d25-27c28450174d, c8236ce9-6d87-47ff-9824-d356c130e784", + "traceId": "d16fbe08c9794c65b247bfd779c571f0", + "evidence": "", + "checkedAt": "2026-08-08T07:29:48.930Z" + }, + { + "module": "orders", + "scenario": null, + "name": "履约分配历史分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085991847896330241/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1414dc6a-d876-4c6a-9d25-27c28450174d, c8236ce9-6d87-47ff-9824-d356c130e784", + "traceId": "d16fbe08c9794c65b247bfd779c571f0", + "evidence": "taskId=2085991847896330241, total=0", + "checkedAt": "2026-08-08T07:29:48.930Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 受理本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991837014228994/accept?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f0c6e7bb-6c39-414a-a7a6-bf51a15b8b55, 8a2ab168-013c-4744-a968-87f8eeb8bb7a", + "traceId": "332deb662c68418181a8dad07f5134ed", + "evidence": "", + "checkedAt": "2026-08-08T07:29:48.970Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 启动本轮订单履约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991837014228994/start?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "77942ffe-0701-4c16-9908-ff4c8a5c1b06, c54c48ad-c16e-447b-9a66-97e36a49b880", + "traceId": "a8bdbc6c7a814fcfade39c927c90c660", + "evidence": "", + "checkedAt": "2026-08-08T07:29:49.002Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 回查本轮订单履约状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991837014228994?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "26a1fc60-f6bb-428f-8e1b-0a04ca3c0f2a, 30ca1a19-3f96-41f4-be00-8e1ad8bb5178", + "traceId": "17bfb3b79eee44f7a7d2be6f7652d036", + "evidence": "", + "checkedAt": "2026-08-08T07:29:49.043Z" + }, + { + "module": "orders", + "scenario": null, + "name": "本轮订单已进入处理中且保留状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991837014228994?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "26a1fc60-f6bb-428f-8e1b-0a04ca3c0f2a, 30ca1a19-3f96-41f4-be00-8e1ad8bb5178", + "traceId": "17bfb3b79eee44f7a7d2be6f7652d036", + "evidence": "status=PROCESSING, history=5", + "checkedAt": "2026-08-08T07:29:49.043Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询发布前船期价格版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c2be512a-01d0-4260-9a5e-0373824285e2, 955bbc4e-94eb-49e0-a7d2-de3b34c92cd6", + "traceId": "f320b40bf04247bbb2c62b133c07bdd1", + "evidence": "", + "checkedAt": "2026-08-08T07:29:49.070Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "发布前最多一份生效版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c2be512a-01d0-4260-9a5e-0373824285e2, 955bbc4e-94eb-49e0-a7d2-de3b34c92cd6", + "traceId": "f320b40bf04247bbb2c62b133c07bdd1", + "evidence": "versions=17, active=1", + "checkedAt": "2026-08-08T07:29:49.070Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "船期价格测试文件已隔离", + "passed": true, + "deploymentBlocker": false, + "request": null, + "http": null, + "code": null, + "message": null, + "requestId": null, + "traceId": null, + "evidence": "fileName=ADMIN-API-20260808072938523-2026.08.03柏悦价格表 船期2026.08.12.xlsx, bytes=1343413, sha256=3170fd3aa8795cd816ca9600f87a6a2a06b15d0cf6042d4592f33d4b30c7b8ab", + "checkedAt": "2026-08-08T07:29:49.073Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上传并解析船期价格表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3d4926d2-695f-4b45-bf57-e627ee450167, 4c14d61b-73e5-4e45-8d44-10a9df447f30", + "traceId": "f5396296dcfa4fa1a3ab63003238c1ce", + "evidence": "fileName=ADMIN-API-20260808072938523-2026.08.03柏悦价格表 船期2026.08.12.xlsx, bytes=1343413, sha256=3170fd3aa8795cd816ca9600f87a6a2a06b15d0cf6042d4592f33d4b30c7b8ab", + "checkedAt": "2026-08-08T07:29:50.667Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上传返回隔离的待确认版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3d4926d2-695f-4b45-bf57-e627ee450167, 4c14d61b-73e5-4e45-8d44-10a9df447f30", + "traceId": "f5396296dcfa4fa1a3ab63003238c1ce", + "evidence": "versionId=2085991853294399490, status=PENDING_CONFIRMATION, fileName=ADMIN-API-20260808072938523-2026.08.03柏悦价格表 船期2026.08.12.xlsx, shaMatched=true", + "checkedAt": "2026-08-08T07:29:50.667Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "解析出15个固定渠道且编码唯一", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3d4926d2-695f-4b45-bf57-e627ee450167, 4c14d61b-73e5-4e45-8d44-10a9df447f30", + "traceId": "f5396296dcfa4fa1a3ab63003238c1ce", + "evidence": "channelCount=15, unique=15, missing=none", + "checkedAt": "2026-08-08T07:29:50.667Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "解析价格行完整且可追溯到 Excel", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3d4926d2-695f-4b45-bf57-e627ee450167, 4c14d61b-73e5-4e45-8d44-10a9df447f30", + "traceId": "f5396296dcfa4fa1a3ab63003238c1ce", + "evidence": "rateCount=2157, declared=2157, valid=true", + "checkedAt": "2026-08-08T07:29:50.668Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "解析阻断仅包含可确认的仓库映射问题", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3d4926d2-695f-4b45-bf57-e627ee450167, 4c14d61b-73e5-4e45-8d44-10a9df447f30", + "traceId": "f5396296dcfa4fa1a3ab63003238c1ce", + "evidence": "blocking=0, unexpected=none, infrastructure=none", + "checkedAt": "2026-08-08T07:29:50.669Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上传后回查价格版本列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "64f9ad93-304d-49a1-90b6-4f33b857eac6, ef16179c-7d83-4a16-ab2b-49396669618a", + "traceId": "7743fd88e70f4326810245f5498b0499", + "evidence": "", + "checkedAt": "2026-08-08T07:29:50.714Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上传只生成待确认版本且不替换当前生效版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "64f9ad93-304d-49a1-90b6-4f33b857eac6, ef16179c-7d83-4a16-ab2b-49396669618a", + "traceId": "7743fd88e70f4326810245f5498b0499", + "evidence": "pending=PENDING_CONFIRMATION, activeBefore=2085991046780071937, activeAfterUpload=2085991046780071937", + "checkedAt": "2026-08-08T07:29:50.714Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询待确认版本渠道和价格预览", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991853294399490" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9ed80405-16bd-4603-ad7f-0d2af8e1d8e3, ffb3d393-c99d-40a5-ae78-c811fe6a93d1", + "traceId": "dda7143161ec4345bdc09ac2484c8925", + "evidence": "", + "checkedAt": "2026-08-08T07:29:50.797Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "详情与上传解析结果一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991853294399490" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9ed80405-16bd-4603-ad7f-0d2af8e1d8e3, ffb3d393-c99d-40a5-ae78-c811fe6a93d1", + "traceId": "dda7143161ec4345bdc09ac2484c8925", + "evidence": "versionId=2085991853294399490, channels=15, rates=2157, issues=2", + "checkedAt": "2026-08-08T07:29:50.797Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "下载原始 XLSX 且内容散列一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991853294399490/source" + }, + "http": 200, + "code": null, + "message": "1343413 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "f00810e3-2bf6-4629-82bf-dae612ecd9fb, 9eb9efd9-9f93-4414-8646-0503fe8c9e23, 9d3b16c9-f664-4220-885f-ac6406031def", + "traceId": "700ca3985b9f4a5583188c181f0c5082, 72075e936c004ac1b598cf8ddd20de8d", + "evidence": "bytes=1343413, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, zipMagic=true, sha256=3170fd3aa8795cd816ca9600f87a6a2a06b15d0cf6042d4592f33d4b30c7b8ab", + "checkedAt": "2026-08-08T07:29:50.888Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询启用的平台公共国内仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=200&status=ACTIVE&warehouseType=DOMESTIC" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "787e2473-430e-4799-9124-7a60ae9399f3, 6e83ff31-1981-4a58-ae57-99f50344c96f", + "traceId": "249b9f7f71034546a777c5536578e40b", + "evidence": "", + "checkedAt": "2026-08-08T07:29:50.915Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询启用的平台公共海外仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=200&status=ACTIVE&warehouseType=OVERSEAS" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fd89d53e-c20c-4d15-aeff-8693c2a74d48, 2a0001ac-13a6-4357-a53a-b428046517ef", + "traceId": "e60264ccafb14af0a1185242203fd120", + "evidence": "", + "checkedAt": "2026-08-08T07:29:50.951Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "国内起运仓和目的海外仓均精确映射", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=200&status=ACTIVE&warehouseType=OVERSEAS" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fd89d53e-c20c-4d15-aeff-8693c2a74d48, 2a0001ac-13a6-4357-a53a-b428046517ef", + "traceId": "e60264ccafb14af0a1185242203fd120", + "evidence": "origins=CN-DONGGUAN-01->193000000000200002,CN-YIWU-01->193000000000200001, overseas=纽约仓->193000000000200004,洛杉矶仓->193000000000200003, missing=none", + "checkedAt": "2026-08-08T07:29:50.953Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "确认仓库映射并立即生效", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991853294399490/publish" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1a9735a5-6fba-490f-907a-035c238fc5a2, cbd6d8fc-ae3d-42cd-9293-c60a94710b0a", + "traceId": "5539329d9e17456c8f79563f65111612", + "evidence": "versionId=2085991853294399490, originMappings=2, overseasMappings=2", + "checkedAt": "2026-08-08T07:29:52.569Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "发布后价格版本为 ACTIVE 且无阻断", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991853294399490/publish" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1a9735a5-6fba-490f-907a-035c238fc5a2, cbd6d8fc-ae3d-42cd-9293-c60a94710b0a", + "traceId": "5539329d9e17456c8f79563f65111612", + "evidence": "status=ACTIVE, blocking=0, publishedAt=2026-08-08T15:29:51.4, channels=15, rates=2157", + "checkedAt": "2026-08-08T07:29:52.569Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "发布后回查当前生效和历史版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8e9118b6-2bba-4071-8208-5f448539765f, ee980708-9121-4064-bc23-78e47f5a4d64", + "traceId": "dec123f8ba5345f582bfc5d4348a6c76", + "evidence": "", + "checkedAt": "2026-08-08T07:29:52.609Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "始终只有一份当前生效版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8e9118b6-2bba-4071-8208-5f448539765f, ee980708-9121-4064-bc23-78e47f5a4d64", + "traceId": "dec123f8ba5345f582bfc5d4348a6c76", + "evidence": "active=2085991853294399490", + "checkedAt": "2026-08-08T07:29:52.609Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上一生效版本已保留为历史版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8e9118b6-2bba-4071-8208-5f448539765f, ee980708-9121-4064-bc23-78e47f5a4d64", + "traceId": "dec123f8ba5345f582bfc5d4348a6c76", + "evidence": "previous=2085991046780071937, superseded=true", + "checkedAt": "2026-08-08T07:29:52.609Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询当前生效价格版本详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991853294399490" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f9d900d7-3805-42a9-90cd-6676e19ec190, fafa21f8-9223-48e1-aadf-f35117042d55", + "traceId": "eba2828bb6a6439989f8d2f48dc0ff20", + "evidence": "", + "checkedAt": "2026-08-08T07:29:52.689Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "当前生效版本预览数据完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991853294399490" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f9d900d7-3805-42a9-90cd-6676e19ec190, fafa21f8-9223-48e1-aadf-f35117042d55", + "traceId": "eba2828bb6a6439989f8d2f48dc0ff20", + "evidence": "status=ACTIVE, channels=15, rates=2157", + "checkedAt": "2026-08-08T07:29:52.689Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "已生效版本禁止重复发布", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991853294399490/publish" + }, + "http": 200, + "code": "A0409", + "message": "只有待确认上传记录可以确认并生效", + "requestId": "f2f50742-1a10-4418-baaf-cdb1c0f717b7", + "traceId": "2ad7e32688f84e48bf40bedfbe9a3c2d", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:29:52.726Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "重复发布被拒绝后回查版本状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8685ae15-35b6-4099-a99b-b771b587bb73, cbca3868-1482-4fcd-a454-592dbef02707", + "traceId": "05dc6286033d4d0a85dea2701d48a3d1", + "evidence": "", + "checkedAt": "2026-08-08T07:29:52.752Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "重复发布未改变唯一生效版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8685ae15-35b6-4099-a99b-b771b587bb73, cbca3868-1482-4fcd-a454-592dbef02707", + "traceId": "05dc6286033d4d0a85dea2701d48a3d1", + "evidence": "active=2085991853294399490", + "checkedAt": "2026-08-08T07:29:52.752Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "创建客户列表导出任务", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/export-tasks" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "47ea4c5a-a7c4-4e2e-9848-4211f4f722e4, b0dcbf06-ece9-4780-9436-0cbc4d17e0f6", + "traceId": "a0210e9e378c4b4aa49a167c62d4561b", + "evidence": "", + "checkedAt": "2026-08-08T07:29:52.795Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "导出任务创建字段正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/export-tasks" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "47ea4c5a-a7c4-4e2e-9848-4211f4f722e4, b0dcbf06-ece9-4780-9436-0cbc4d17e0f6", + "traceId": "a0210e9e378c4b4aa49a167c62d4561b", + "evidence": "taskId=2085991868563783681, status=PENDING", + "checkedAt": "2026-08-08T07:29:52.795Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "查询下载中心任务列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=20&exportType=CUSTOMER_LIST" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "afcca60e-579f-4def-9916-f2db51a863cf, 3bf6e033-a639-4a8f-b08f-bf399c50147a", + "traceId": "70d201489f18487081b579f5d9eb8e37", + "evidence": "", + "checkedAt": "2026-08-08T07:29:52.834Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "下载中心列表包含新任务", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=20&exportType=CUSTOMER_LIST" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "afcca60e-579f-4def-9916-f2db51a863cf, 3bf6e033-a639-4a8f-b08f-bf399c50147a", + "traceId": "70d201489f18487081b579f5d9eb8e37", + "evidence": "records=16", + "checkedAt": "2026-08-08T07:29:52.834Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "轮询导出任务直到终态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/2085991868563783681" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6a7ec61a-501a-45bf-9c97-a0b8ed973216, 6ac5febc-4757-43cc-ad68-17e8f2cee4f2", + "traceId": "094bf946340c4b1fa14b9b973ef83f69", + "evidence": "status=SUCCEEDED, processedRows=0", + "checkedAt": "2026-08-08T07:29:54.875Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "查询导出任务详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/2085991868563783681" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "21dd3826-95a8-4300-9617-22d824c42ccf, b23d26d7-7102-44e2-8858-93d945cb5fb0", + "traceId": "03306b27c3484586bf915e49109a159a", + "evidence": "", + "checkedAt": "2026-08-08T07:29:54.905Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "导出详情行数和文件元数据正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/2085991868563783681" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "21dd3826-95a8-4300-9617-22d824c42ccf, b23d26d7-7102-44e2-8858-93d945cb5fb0", + "traceId": "03306b27c3484586bf915e49109a159a", + "evidence": "processedRows=0, sizeBytes=4067", + "checkedAt": "2026-08-08T07:29:54.905Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "下载并校验客户列表 XLSX", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/2085991868563783681/download" + }, + "http": 200, + "code": null, + "message": "4067 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "ac8e2200-e2fb-4813-a69b-6f9f40109130, 8f10b28b-0609-4f74-a7f7-8a693df41427", + "traceId": "5800423b1adf4709b8aa88b896d95a50", + "evidence": "bytes=4067, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:29:54.937Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "仅选择带本轮测试标记的可编辑入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991847904718849?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1160dbc1-64da-4dc2-999e-c094c27573f7, 6f422a54-18f1-46a5-bdf4-91ee03461e69", + "traceId": "19a6ca89c4b5437f9c2cd4a294da687c", + "evidence": "tenantId=10001, inboundId=2085991847904718849, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T07:29:54.972Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "98b0bcbf-1913-4dc9-89e6-996960c83d81, 08e0ce72-04eb-413c-b327-2c3834c81b06", + "traceId": "d42c138608044c2ab4520c4bc5b2554f", + "evidence": "inboundId=2085991847904718849", + "checkedAt": "2026-08-08T07:29:54.999Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "98b0bcbf-1913-4dc9-89e6-996960c83d81, 08e0ce72-04eb-413c-b327-2c3834c81b06", + "traceId": "d42c138608044c2ab4520c4bc5b2554f", + "evidence": "existingResults=0, baselineWeight=null", + "checkedAt": "2026-08-08T07:29:54.999Z" + }, + { + "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/2085991847904718849" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "bdbba1fe-1201", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:29:55.019Z" + }, + { + "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/2085991847904718849" + }, + "http": 200, + "code": "A0400", + "message": "称重图片仅支持JPG、PNG、BMP", + "requestId": "98ac078f-588e-4cd2-a7fc-36d906ba186a", + "traceId": "54fa933633e14d4fa2b4b47060d92708", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:29:55.053Z" + }, + { + "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/2085991847904718849" + }, + "http": 200, + "code": "A0400", + "message": "称重图片不能超过5MB", + "requestId": "e828f177-1d8d-4839-9e81-21c9ab5ed871", + "traceId": "27d76e6544b34fd898e8c406b4b89da6", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:29:55.213Z" + }, + { + "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/2085991847904718849" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "926c6a02-9444-4f90-bd69-36a1d99a036d, fe2ca543-a1fb-4975-a8bd-e4356067bc33", + "traceId": "25708de63b2748dcb11a8877439c48a9", + "evidence": "file=orig_1cf27695-b2c3-44b3-98e3-c0be8b80f79a.JPG, size=3701469", + "checkedAt": "2026-08-08T07:29:57.181Z" + }, + { + "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/2085991847904718849" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "926c6a02-9444-4f90-bd69-36a1d99a036d, fe2ca543-a1fb-4975-a8bd-e4356067bc33", + "traceId": "25708de63b2748dcb11a8877439c48a9", + "evidence": "fileIdType=string, status=RECOGNIZED", + "checkedAt": "2026-08-08T07:29:57.181Z" + }, + { + "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/2085991847904718849" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "926c6a02-9444-4f90-bd69-36a1d99a036d, fe2ca543-a1fb-4975-a8bd-e4356067bc33", + "traceId": "25708de63b2748dcb11a8877439c48a9", + "evidence": "status=RECOGNIZED, hasWeight=true, confidence=0.50972", + "checkedAt": "2026-08-08T07:29:57.181Z" + }, + { + "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/2085991847904718849/2085991883420008450/recognize" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9d6c9927-49c6-42f7-8b62-98201478abf6, 36045943-ec0e-4d23-872d-9c46533ce48c", + "traceId": "509c63d89166483b90082b35382f6891", + "evidence": "fileId=2085991883420008450", + "checkedAt": "2026-08-08T07:29:58.048Z" + }, + { + "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/2085991847904718849/2085991883420008450/recognize" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9d6c9927-49c6-42f7-8b62-98201478abf6, 36045943-ec0e-4d23-872d-9c46533ce48c", + "traceId": "509c63d89166483b90082b35382f6891", + "evidence": "sameFile=true, status=RECOGNIZED", + "checkedAt": "2026-08-08T07:29:58.048Z" + }, + { + "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/2085991847904718849/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d773022c-bc35-4191-af3e-0aa6426aa7b5, 1a313f18-9b7c-4123-918a-e2a08a850847", + "traceId": "ffb4b5f051d347f4a3dbed415aa2ba11", + "evidence": "fileId=2085991883420008450", + "checkedAt": "2026-08-08T07:29:58.091Z" + }, + { + "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/2085991847904718849/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d773022c-bc35-4191-af3e-0aa6426aa7b5, 1a313f18-9b7c-4123-918a-e2a08a850847", + "traceId": "ffb4b5f051d347f4a3dbed415aa2ba11", + "evidence": "resultIdType=string, fileIdType=string, version=0", + "checkedAt": "2026-08-08T07:29:58.091Z" + }, + { + "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/2085991847904718849/2085991883420008450" + }, + "http": 200, + "code": null, + "message": "3701469 bytes (image/jpeg)", + "requestId": "97908f02-1f26-4ae7-9895-f0ec940ba20e, 1e71acad-4ea0-4353-8d51-812be8b7c330", + "traceId": "783ea870fdd0460c8ce754dcc39254a7", + "evidence": "contentType=image/jpeg, bytes=3701469", + "checkedAt": "2026-08-08T07:29:58.323Z" + }, + { + "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/2085991847904718849/2085991883420008450/thumbnail" + }, + "http": 200, + "code": null, + "message": "18677 bytes (image/jpeg)", + "requestId": "a130d0eb-503b-404b-b8cc-b3520f9f5a30, 451a0aca-4510-4d4e-b322-56e6ad6e14ab", + "traceId": "9651b8c489c94704ba350bc922dc221b", + "evidence": "contentType=image/jpeg, bytes=18677, dimensions=240x320", + "checkedAt": "2026-08-08T07:29:58.696Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "db961d0f-4327-48ac-9a07-ebab1403be66, eb9868b0-3b05-48dd-8815-da9bbaa87c03", + "traceId": "56e08a12dba94f88bfb308ebd8f0cdb1", + "evidence": "inboundId=2085991847904718849", + "checkedAt": "2026-08-08T07:29:58.718Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "db961d0f-4327-48ac-9a07-ebab1403be66, eb9868b0-3b05-48dd-8815-da9bbaa87c03", + "traceId": "56e08a12dba94f88bfb308ebd8f0cdb1", + "evidence": "resultFound=true, baselineCount=0, currentCount=1", + "checkedAt": "2026-08-08T07:29:58.718Z" + }, + { + "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/2085991847904718849/weight-results/2085991890812448770/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0409", + "message": "数据版本已变化,请刷新后重试", + "requestId": "0a44a9b5-da7f-47e2-90f8-e3b95c6ad27d", + "traceId": "58d93ecf3d20483da883899837c4e280", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:29:58.748Z" + }, + { + "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/2085991847904718849/weight-results/2085991890812448770/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b49e37fe-1016-4b25-958d-b7addb6dc817, bbcc05f5-572a-4072-91ad-9f6029a76553", + "traceId": "13f5aae12658459ea2d1e5a7bd6abb2c", + "evidence": "usedOriginal=true", + "checkedAt": "2026-08-08T07:29:58.785Z" + }, + { + "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/2085991847904718849/weight-results/2085991890812448770/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b49e37fe-1016-4b25-958d-b7addb6dc817, bbcc05f5-572a-4072-91ad-9f6029a76553", + "traceId": "13f5aae12658459ea2d1e5a7bd6abb2c", + "evidence": "status=CONFIRMED, version=1, finalKg=285.5", + "checkedAt": "2026-08-08T07:29:58.785Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e8adab57-3458-4309-a59b-3c1000bbcc08, 36082be3-94d5-4e14-a786-892ad2f7b143", + "traceId": "f6d4309d2c0547e281f55cbb98b5c8fa", + "evidence": "inboundId=2085991847904718849", + "checkedAt": "2026-08-08T07:29:58.808Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e8adab57-3458-4309-a59b-3c1000bbcc08, 36082be3-94d5-4e14-a786-892ad2f7b143", + "traceId": "f6d4309d2c0547e281f55cbb98b5c8fa", + "evidence": "baseline=null, added=285.5, actual=285.5", + "checkedAt": "2026-08-08T07:29:58.808Z" + }, + { + "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/2085991847904718849/weight-results/2085991890812448770?tenantId=10001&version=0" + }, + "http": 200, + "code": "A0409", + "message": "数据版本已变化,请刷新后重试", + "requestId": "5598ccf6-acb3-4a7c-a409-99726a15abe5", + "traceId": "663affd6c37d4a80b99feb712e02edc0", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:29:58.839Z" + }, + { + "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/2085991847904718849/weight-results/2085991890812448770?tenantId=10001&version=1" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2fa4b35b-96e0-4fed-a492-f5d16831eb64, be7cd6f3-0be2-4d45-a66e-7aff54616e97", + "traceId": "8a087c8cc39b47b2a3c3cdecd0cae290", + "evidence": "resultId=2085991890812448770, version=1", + "checkedAt": "2026-08-08T07:29:58.890Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a2f475c6-32bc-4f89-8d38-383b2b42a05d, 88133720-9075-4124-a061-7ce53b1312b2", + "traceId": "12514cc29de84ab59447b21e473014d5", + "evidence": "inboundId=2085991847904718849", + "checkedAt": "2026-08-08T07:29:58.918Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a2f475c6-32bc-4f89-8d38-383b2b42a05d, 88133720-9075-4124-a061-7ce53b1312b2", + "traceId": "12514cc29de84ab59447b21e473014d5", + "evidence": "resultMissing=true, baseline=null, actual=null", + "checkedAt": "2026-08-08T07:29:58.918Z" + }, + { + "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/2085991847904718849/2085991883420008450" + }, + "http": 200, + "code": "A0404", + "message": "称重图片不存在", + "requestId": "9f24de08-29f7-4965-8525-cd233f61e538", + "traceId": "9dea0bc39bc5447a9f72577f6c2518b0", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:29:58.949Z" + }, + { + "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/2085991847904718849" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e14a49cb-bc81-49d9-a7e6-e5b691d2ece0, bd13a8c8-dfe5-4f6a-8a7e-5cc7c183feb2", + "traceId": "5200f79db5394407bc9477a6a7d1301f", + "evidence": "file=orig_1cf27695-b2c3-44b3-98e3-c0be8b80f79a.JPG, size=3701469", + "checkedAt": "2026-08-08T07:30:00.233Z" + }, + { + "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/2085991847904718849" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e14a49cb-bc81-49d9-a7e6-e5b691d2ece0, bd13a8c8-dfe5-4f6a-8a7e-5cc7c183feb2", + "traceId": "5200f79db5394407bc9477a6a7d1301f", + "evidence": "fileIdType=string, status=RECOGNIZED", + "checkedAt": "2026-08-08T07:30:00.233Z" + }, + { + "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/2085991847904718849" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e14a49cb-bc81-49d9-a7e6-e5b691d2ece0, bd13a8c8-dfe5-4f6a-8a7e-5cc7c183feb2", + "traceId": "5200f79db5394407bc9477a6a7d1301f", + "evidence": "status=RECOGNIZED, hasWeight=true, confidence=0.50972", + "checkedAt": "2026-08-08T07:30:00.233Z" + }, + { + "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/2085991847904718849/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "23a14837-243f-46a1-be9f-8a01cada85c3, 654060f7-4104-424f-8802-d8e5c7c78c6f", + "traceId": "138ef174549a4cdb87ad08206ee1b641", + "evidence": "fileId=2085991896229412866", + "checkedAt": "2026-08-08T07:30:00.261Z" + }, + { + "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/2085991847904718849/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "23a14837-243f-46a1-be9f-8a01cada85c3, 654060f7-4104-424f-8802-d8e5c7c78c6f", + "traceId": "138ef174549a4cdb87ad08206ee1b641", + "evidence": "resultIdType=string, fileIdType=string, version=0", + "checkedAt": "2026-08-08T07:30:00.261Z" + }, + { + "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/2085991847904718849/weight-results/2085991899909894146/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "adjustedWeightValue: must be greater than or equal to 0.001", + "requestId": "c924c775-9848-4612-bb5e-523dd8cee6c2", + "traceId": "b217948167094a7a8cd7b74548f9dc67", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:30:00.281Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cccd8a53-55b9-4126-a2b2-8ea492dc3a3d, c5aa7a86-fd98-418b-a655-8fda97c02599", + "traceId": "d226067957094180a8eaea0e5909d0e1", + "evidence": "inboundId=2085991847904718849", + "checkedAt": "2026-08-08T07:30:00.315Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cccd8a53-55b9-4126-a2b2-8ea492dc3a3d, c5aa7a86-fd98-418b-a655-8fda97c02599", + "traceId": "d226067957094180a8eaea0e5909d0e1", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T07:30:00.315Z" + }, + { + "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/2085991847904718849/weight-results/2085991899909894146/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "adjustedWeightValue: must be greater than or equal to 0.001", + "requestId": "9da81d1f-6599-4e15-8b71-19dc570f7294", + "traceId": "2922b1531c9f48d992a8942b90e5088f", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:30:00.343Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "36a5e236-7496-41e2-837c-97722e84692d, a1e95ab1-3e1b-4ef9-825d-cf646fce63fe", + "traceId": "7e07901abc6945708ecccdff88dc14b6", + "evidence": "inboundId=2085991847904718849", + "checkedAt": "2026-08-08T07:30:00.378Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "36a5e236-7496-41e2-837c-97722e84692d, a1e95ab1-3e1b-4ef9-825d-cf646fce63fe", + "traceId": "7e07901abc6945708ecccdff88dc14b6", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T07:30:00.378Z" + }, + { + "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/2085991847904718849/weight-results/2085991899909894146/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "换算后重量不能小于 0.001 KG", + "requestId": "26f7c740-e581-4e2b-a440-3a55c64a1aa2", + "traceId": "cc8c32af14874ac6b3f43427a4aa53e6", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:30:00.412Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "35c24f10-a953-4c29-9691-6d5f27b96d89, 5dc78106-e704-4908-b895-994f6d88d4c4", + "traceId": "aaad86386cbc485ea149914b3f4e6a55", + "evidence": "inboundId=2085991847904718849", + "checkedAt": "2026-08-08T07:30:00.434Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "35c24f10-a953-4c29-9691-6d5f27b96d89, 5dc78106-e704-4908-b895-994f6d88d4c4", + "traceId": "aaad86386cbc485ea149914b3f4e6a55", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T07:30:00.434Z" + }, + { + "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/2085991847904718849/weight-results/2085991899909894146/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "adjustedWeightValue: numeric value out of bounds (<15 digits>.<3 digits> expected)", + "requestId": "97ca165a-cab0-42d9-ba0b-5d9e65f253db", + "traceId": "77c4eb060fa94ba897e9c003f9a38ca0", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:30:00.470Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4064e73f-8c57-4742-9e6f-64f76f7ff231, 19387973-9fc8-4fd8-a2e9-82739a18a1e9", + "traceId": "7b2f7424a1dd495c830f16247e371fa5", + "evidence": "inboundId=2085991847904718849", + "checkedAt": "2026-08-08T07:30:00.503Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4064e73f-8c57-4742-9e6f-64f76f7ff231, 19387973-9fc8-4fd8-a2e9-82739a18a1e9", + "traceId": "7b2f7424a1dd495c830f16247e371fa5", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T07:30:00.503Z" + }, + { + "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/2085991847904718849/weight-results/2085991899909894146/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d27b7203-beca-4b6a-8721-258a133732ff, 6f055534-1a32-4335-953e-db543fca2f78", + "traceId": "7fe0138c03bf4a2baf03320184f50ae7", + "evidence": "adjusted=10.125 LB", + "checkedAt": "2026-08-08T07:30:00.537Z" + }, + { + "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/2085991847904718849/weight-results/2085991899909894146/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d27b7203-beca-4b6a-8721-258a133732ff, 6f055534-1a32-4335-953e-db543fca2f78", + "traceId": "7fe0138c03bf4a2baf03320184f50ae7", + "evidence": "adjusted=10.125 LB, finalKg=4.593, expectedKg=4.593", + "checkedAt": "2026-08-08T07:30:00.538Z" + }, + { + "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/2085991847904718849/weight-results/2085991899909894146?tenantId=10001&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a0f712ab-827a-495d-b31a-447d53a3d257, 8d66c189-9fc9-4dd7-bb36-68eb66060e71", + "traceId": "34dbe260618941a8a0ead77b10cacd46", + "evidence": "resultId=2085991899909894146, version=2", + "checkedAt": "2026-08-08T07:30:00.582Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6ad7a875-4d67-4865-9cc8-b3f0bf6d7b0d, c850d7f4-932e-49aa-9edf-c6b8be09153d", + "traceId": "42f363c253a8468e89d200a78003b47a", + "evidence": "inboundId=2085991847904718849", + "checkedAt": "2026-08-08T07:30:00.612Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6ad7a875-4d67-4865-9cc8-b3f0bf6d7b0d, c850d7f4-932e-49aa-9edf-c6b8be09153d", + "traceId": "42f363c253a8468e89d200a78003b47a", + "evidence": "resultMissing=true, baseline=null, actual=null", + "checkedAt": "2026-08-08T07:30:00.612Z" + }, + { + "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/2085991847904718849/2085991896229412866" + }, + "http": 200, + "code": "A0404", + "message": "称重图片不存在", + "requestId": "f23b7c86-685f-44c1-8ae6-a9d285844493", + "traceId": "e6e2da3552ac43de985019f7a227ed24", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:30:00.641Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "70b06055-e73e-413b-9290-4e497dc2b28d, ebd15bf0-3bd4-4ca4-8355-0d6f691480f1", + "traceId": "610adc733e34425fabce84456692eaea", + "evidence": "inboundId=2085991847904718849", + "checkedAt": "2026-08-08T07:30:00.675Z" + }, + { + "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/2085991847904718849/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "70b06055-e73e-413b-9290-4e497dc2b28d, ebd15bf0-3bd4-4ca4-8355-0d6f691480f1", + "traceId": "610adc733e34425fabce84456692eaea", + "evidence": "leftovers=0, baseline=null, actual=null", + "checkedAt": "2026-08-08T07:30:00.675Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 测试账号登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fa46270a-502f-4f9e-8411-d6b9504ed145, 08ba076a-a119-4cc2-b7b3-e63cc45bc4d0", + "traceId": "808ebb0639f64539be4ab52e69eebdf2", + "evidence": "username=merchant_admin", + "checkedAt": "2026-08-08T07:30:01.014Z" + }, + { + "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": "e4bc7579-6aaa-4151-bb29-d8ba48c879bf, 588c473b-54fa-469a-8b93-49dd0587ca2d", + "traceId": "832034d291fc41cc8f9392f3441e336c", + "evidence": "", + "checkedAt": "2026-08-08T07:30:01.033Z" + }, + { + "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": "e4bc7579-6aaa-4151-bb29-d8ba48c879bf, 588c473b-54fa-469a-8b93-49dd0587ca2d", + "traceId": "832034d291fc41cc8f9392f3441e336c", + "evidence": "tenantId=10001, status=ACTIVE", + "checkedAt": "2026-08-08T07:30:01.033Z" + }, + { + "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": "c6383cde-db61-4af4-b73e-5caea7d6072d, 89354299-d13c-46fe-8fd1-11f018bbbe49", + "traceId": "7024cf857a0c49e68c93569a57e38c2e", + "evidence": "tenantId=10001", + "checkedAt": "2026-08-08T07:30:01.054Z" + }, + { + "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": "c6383cde-db61-4af4-b73e-5caea7d6072d, 89354299-d13c-46fe-8fd1-11f018bbbe49", + "traceId": "7024cf857a0c49e68c93569a57e38c2e", + "evidence": "types=SMALL,MEDIUM,LARGE,EXTRA_LARGE", + "checkedAt": "2026-08-08T07:30:01.054Z" + }, + { + "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": "67e6ecf4-9882-478b-a52c-966c82905665, 424581a4-514c-4ffe-a56a-57c020acda31", + "traceId": "9594da5a52114ce8bc14d3a325180d48", + "evidence": "", + "checkedAt": "2026-08-08T07:30:01.083Z" + }, + { + "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": "67e6ecf4-9882-478b-a52c-966c82905665, 424581a4-514c-4ffe-a56a-57c020acda31", + "traceId": "9594da5a52114ce8bc14d3a325180d48", + "evidence": "count=2", + "checkedAt": "2026-08-08T07:30:01.083Z" + }, + { + "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": "41c60e35-4fb2-450e-ab05-ded32fbada00, df13a3a8-fe81-49bc-a962-73b39a9242c6", + "traceId": "f608be78a5324664b81c69169669be67", + "evidence": "", + "checkedAt": "2026-08-08T07:30:01.131Z" + }, + { + "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": "41c60e35-4fb2-450e-ab05-ded32fbada00, df13a3a8-fe81-49bc-a962-73b39a9242c6", + "traceId": "f608be78a5324664b81c69169669be67", + "evidence": "count=200", + "checkedAt": "2026-08-08T07:30:01.131Z" + }, + { + "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": "8d34884e-653d-45a1-aefb-1f8e0748dd91, 98d34d36-0cb7-4632-8356-3caddcc74def", + "traceId": "e9f5f2c99d3845d2ab8f3e573a9bcd83", + "evidence": "", + "checkedAt": "2026-08-08T07:30:01.163Z" + }, + { + "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": "8d34884e-653d-45a1-aefb-1f8e0748dd91, 98d34d36-0cb7-4632-8356-3caddcc74def", + "traceId": "e9f5f2c99d3845d2ab8f3e573a9bcd83", + "evidence": "count=15", + "checkedAt": "2026-08-08T07:30:01.163Z" + }, + { + "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": "189b48f0-6b15-4209-ab46-1ac2a786c478, 43f9c0a5-e592-48c6-ae83-2c1d6c70b053", + "traceId": "cea30d54d0e944f18225b75e0bb24207", + "evidence": "", + "checkedAt": "2026-08-08T07:30:01.200Z" + }, + { + "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": "736aa24d-157b-45c7-9bc6-69bdc08744e4, 366080ab-66f3-4ddd-91ef-5a76af6a021e", + "traceId": "0b3d8a24d8294e3198c0830d37fcbeef", + "evidence": "contentType=image/png", + "checkedAt": "2026-08-08T07:30:01.227Z" + }, + { + "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": "736aa24d-157b-45c7-9bc6-69bdc08744e4, 366080ab-66f3-4ddd-91ef-5a76af6a021e", + "traceId": "0b3d8a24d8294e3198c0830d37fcbeef", + "evidence": "fileIdType=string, contentType=image/png", + "checkedAt": "2026-08-08T07:30:01.227Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Client 可下载本轮产品图片", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/files/product-images/2085991903951126530" + }, + "http": 200, + "code": null, + "message": null, + "requestId": "97a15928-a60d-461b-8f57-d4e2dcd4e092, e805a49f-c257-4860-9ec6-78f477486364", + "traceId": "9733646e061348038f8e23ff77cedf67", + "evidence": "bytes=68, contentType=image/png", + "checkedAt": "2026-08-08T07:30:01.255Z" + }, + { + "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": "da0601c1-15f8-4488-88ba-bdc9c2ab1f8e, 62ee449b-11ef-4b12-8910-0f3c1e4ab79c", + "traceId": "ebf26d27f28345dabe61e29a5149fa38", + "evidence": "marker=ADMIN-API-20260808072938523-MOJIA", + "checkedAt": "2026-08-08T07:30:01.327Z" + }, + { + "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": "7f967e0c-c8c7-4ec3-8087-81dab6fd62f5, 90ae4b60-f6ff-4f64-b426-f0403c496106", + "traceId": "3cf70356ffdd494ab1eab3aed277904d", + "evidence": "", + "checkedAt": "2026-08-08T07:30:01.368Z" + }, + { + "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": "7f967e0c-c8c7-4ec3-8087-81dab6fd62f5, 90ae4b60-f6ff-4f64-b426-f0403c496106", + "traceId": "3cf70356ffdd494ab1eab3aed277904d", + "evidence": "orderId=2085991904328613890, replayedId=2085991904328613890", + "checkedAt": "2026-08-08T07:30:01.368Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 查询隔离订单草稿", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991904328613890" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "095c25ab-7e1c-4ff8-a37e-921cc7493614, 9e77bdf9-74db-4b07-b097-40f303c424b2", + "traceId": "fd1060a65324418c98031a1f2275582a", + "evidence": "", + "checkedAt": "2026-08-08T07:30:01.390Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 草稿身份、marker 和状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991904328613890" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "095c25ab-7e1c-4ff8-a37e-921cc7493614, 9e77bdf9-74db-4b07-b097-40f303c424b2", + "traceId": "fd1060a65324418c98031a1f2275582a", + "evidence": "orderNo=FL2085991904328613890, status=DRAFT", + "checkedAt": "2026-08-08T07:30:01.390Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991904328613890" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "095c25ab-7e1c-4ff8-a37e-921cc7493614, 9e77bdf9-74db-4b07-b097-40f303c424b2", + "traceId": "fd1060a65324418c98031a1f2275582a", + "evidence": "cargoes=4, imageFileId=2085991903951126530", + "checkedAt": "2026-08-08T07:30:01.390Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 提交隔离订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/merchant/v1/orders/first-leg/2085991904328613890/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4700dbdb-7328-4256-8b87-59f5446cf623, 96d106a9-975d-4f07-b53c-8bd10819b815", + "traceId": "06fbcd82e633428988bd1a1b45c64668", + "evidence": "orderId=2085991904328613890", + "checkedAt": "2026-08-08T07:30:01.449Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 回查已提交订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991904328613890" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c43ec26f-e75d-424a-b029-9be8095f60d6, a46ee90f-ad29-4757-9a79-1a9d1660c893", + "traceId": "373f4659fd9d45738ff5eb5e2a62317d", + "evidence": "", + "checkedAt": "2026-08-08T07:30:01.472Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 订单已进入待审核状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085991904328613890" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c43ec26f-e75d-424a-b029-9be8095f60d6, a46ee90f-ad29-4757-9a79-1a9d1660c893", + "traceId": "373f4659fd9d45738ff5eb5e2a62317d", + "evidence": "status=SUBMITTED", + "checkedAt": "2026-08-08T07:30:01.472Z" + }, + { + "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=FL2085991904328613890" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c58764d6-68ef-4453-ab00-3176b6447811, 57ba03a6-64e7-4903-a603-dcbe494c2ef9", + "traceId": "1bc256e40ceb44d7b7c8611e9190b532", + "evidence": "", + "checkedAt": "2026-08-08T07:30:01.503Z" + }, + { + "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=FL2085991904328613890" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c58764d6-68ef-4453-ab00-3176b6447811, 57ba03a6-64e7-4903-a603-dcbe494c2ef9", + "traceId": "1bc256e40ceb44d7b7c8611e9190b532", + "evidence": "orderId=2085991904328613890, found=true", + "checkedAt": "2026-08-08T07:30:01.504Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询统一订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085991904328613890?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ad087655-1e9d-4eaf-9464-76533b471873, 97e04555-2bc1-4f73-b28c-25db6732e927", + "traceId": "b0ef2048dd5946e1abedcedb1b45c55d", + "evidence": "", + "checkedAt": "2026-08-08T07:30:01.542Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 统一订单详情身份与待审核状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085991904328613890?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ad087655-1e9d-4eaf-9464-76533b471873, 97e04555-2bc1-4f73-b28c-25db6732e927", + "traceId": "b0ef2048dd5946e1abedcedb1b45c55d", + "evidence": "mainStatus=PENDING_REVIEW, timeline=2", + "checkedAt": "2026-08-08T07:30:01.542Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085991904328613890&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d969ba3e-4c05-4a02-b927-08485beb52e0, 65290b5b-cafe-4de4-973b-7c01330b4fc7", + "traceId": "f2dd55224204461c838b119a49c391db", + "evidence": "", + "checkedAt": "2026-08-08T07:30:01.572Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单列表只核对本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085991904328613890&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d969ba3e-4c05-4a02-b927-08485beb52e0, 65290b5b-cafe-4de4-973b-7c01330b4fc7", + "traceId": "f2dd55224204461c838b119a49c391db", + "evidence": "orderId=2085991904328613890, found=true", + "checkedAt": "2026-08-08T07:30:01.573Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991904328613890?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "22eb9203-04d3-46ad-a511-3da24264f4cf, 5553be87-e487-41f0-b940-b35f2ce9dd93", + "traceId": "623a2cede12a42da8509a0ffa5dfd020", + "evidence": "", + "checkedAt": "2026-08-08T07:30:01.602Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单详情聚合结构完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991904328613890?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "22eb9203-04d3-46ad-a511-3da24264f4cf, 5553be87-e487-41f0-b940-b35f2ce9dd93", + "traceId": "623a2cede12a42da8509a0ffa5dfd020", + "evidence": "cargoes=4, history=2", + "checkedAt": "2026-08-08T07:30:01.602Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991904328613890?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "22eb9203-04d3-46ad-a511-3da24264f4cf, 5553be87-e487-41f0-b940-b35f2ce9dd93", + "traceId": "623a2cede12a42da8509a0ffa5dfd020", + "evidence": "cargoes=4, imageFileId=2085991903951126530", + "checkedAt": "2026-08-08T07:30:01.602Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 为本轮订单添加内部备注", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991904328613890/internal-notes?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "792958c3-8c77-44d5-a366-0c03f1413d43, 5ff3f29b-446e-431a-9da8-5e814c570d61", + "traceId": "7ac104031d6a482baf7600936ecb2fbe", + "evidence": "", + "checkedAt": "2026-08-08T07:30:01.637Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 审核通过本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991904328613890/approve?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9224f798-6b34-4a95-b0a1-7355a4ea866d, 8b93be71-5bc5-49cd-b960-122f7cd93ce3", + "traceId": "dcabdb98c67e4b48b6a16c7ca967a1f7", + "evidence": "orderId=2085991904328613890", + "checkedAt": "2026-08-08T07:30:01.670Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "审核后生成隔离入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085991904328613890?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "306184c6-c54c-44b0-8bde-ed18ac49aa50, fe4f0a0b-7570-4472-aa08-5fabd0729d63", + "traceId": "c7c194f674a9497ba7096b8d62d3d2ee", + "evidence": "inboundId=2085991910919942146", + "checkedAt": "2026-08-08T07:30:03.835Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮入库单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991910919942146?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cee08189-6fc4-4d5e-b1ad-eee00cc3b4c5, 7feb7fc6-ad36-4c7c-9c83-61efd6700521", + "traceId": "e9f00ec7825948bd9250dc20c17fc93f", + "evidence": "inboundId=2085991910919942146", + "checkedAt": "2026-08-08T07:30:03.873Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "隔离入库单 marker 来源与可测量状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991910919942146?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cee08189-6fc4-4d5e-b1ad-eee00cc3b4c5, 7feb7fc6-ad36-4c7c-9c83-61efd6700521", + "traceId": "e9f00ec7825948bd9250dc20c17fc93f", + "evidence": "markerFound=true, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T07:30:03.873Z" + }, + { + "module": "orders", + "scenario": null, + "name": "入库单详情包含托盘库位、文件、备注和状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991910919942146?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cee08189-6fc4-4d5e-b1ad-eee00cc3b4c5, 7feb7fc6-ad36-4c7c-9c83-61efd6700521", + "traceId": "e9f00ec7825948bd9250dc20c17fc93f", + "evidence": "inboundId=2085991910919942146, history=1", + "checkedAt": "2026-08-08T07:30:03.873Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询入库单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085991904328613890&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5b082ade-687c-4389-b81c-791fb9de4a0b, 01d411a9-5915-4244-a727-2120ab556e68", + "traceId": "11cbc1af1b6d4a9a8c1a7af809123a99", + "evidence": "", + "checkedAt": "2026-08-08T07:30:03.899Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 入库单列表只核对本轮入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085991904328613890&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5b082ade-687c-4389-b81c-791fb9de4a0b, 01d411a9-5915-4244-a727-2120ab556e68", + "traceId": "11cbc1af1b6d4a9a8c1a7af809123a99", + "evidence": "inboundId=2085991910919942146, total=1", + "checkedAt": "2026-08-08T07:30:03.899Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮订单履约任务", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085991904328613890?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "36969dfb-08b8-4638-9287-8689e9a174cf, 75e6503b-007e-4892-95b8-60f0f3150d3a", + "traceId": "2c4c2ae7a0314eee92794d9da0e3ecee", + "evidence": "新订单应生成可查询的履约任务", + "checkedAt": "2026-08-08T07:30:03.932Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "履约任务与本轮订单和客户一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085991904328613890?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "36969dfb-08b8-4638-9287-8689e9a174cf, 75e6503b-007e-4892-95b8-60f0f3150d3a", + "traceId": "2c4c2ae7a0314eee92794d9da0e3ecee", + "evidence": "taskId=2085991910915747841, status=PENDING_ASSIGNMENT", + "checkedAt": "2026-08-08T07:30:03.932Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询本轮履约任务分配历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085991910915747841/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "93f2a08e-9a04-448f-aad7-73bd6017cbb4, 9fd3d9e1-b0ec-4e25-a171-18a16fe105d5", + "traceId": "48b743eadcee4df886f574fb4c34d7c1", + "evidence": "", + "checkedAt": "2026-08-08T07:30:03.954Z" + }, + { + "module": "orders", + "scenario": null, + "name": "履约分配历史分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085991910915747841/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "93f2a08e-9a04-448f-aad7-73bd6017cbb4, 9fd3d9e1-b0ec-4e25-a171-18a16fe105d5", + "traceId": "48b743eadcee4df886f574fb4c34d7c1", + "evidence": "taskId=2085991910915747841, total=0", + "checkedAt": "2026-08-08T07:30:03.954Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 受理本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991904328613890/accept?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "39d620bc-1af1-4c69-b9e7-635dccbee364, 1b4c28ac-24fe-4419-ae87-26422d4e20f5", + "traceId": "6e2785da04a64aaeb63501baac5cc8b2", + "evidence": "", + "checkedAt": "2026-08-08T07:30:03.987Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 启动本轮订单履约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085991904328613890/start?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fbfcbc59-143a-4e5b-9370-fe09b890f54c, c4ebe56a-6ff0-4cfe-abc1-4c348bdc3d44", + "traceId": "ff3a5b8cf8604a29bae3dfd0115bdd38", + "evidence": "", + "checkedAt": "2026-08-08T07:30:04.018Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 回查本轮订单履约状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991904328613890?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "738da668-0e01-4059-9de3-00c8f10c197e, 7ed05395-3e69-4d7d-8d3c-fc5a7ffa2dca", + "traceId": "46a141b66c81432894d6225c2ca8c138", + "evidence": "", + "checkedAt": "2026-08-08T07:30:04.045Z" + }, + { + "module": "orders", + "scenario": null, + "name": "本轮订单已进入处理中且保留状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085991904328613890?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "738da668-0e01-4059-9de3-00c8f10c197e, 7ed05395-3e69-4d7d-8d3c-fc5a7ffa2dca", + "traceId": "46a141b66c81432894d6225c2ca8c138", + "evidence": "status=PROCESSING, history=5", + "checkedAt": "2026-08-08T07:30:04.045Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "查询隔离入库单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991910919942146?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "62124178-14e3-4c32-ae54-ec46b89b0823, e088de17-16b8-492d-8701-a64d7fbc2b64", + "traceId": "800162cc076b4844931d34f0d808cb10", + "evidence": "inboundId=2085991910919942146, tenantId=10001", + "checkedAt": "2026-08-08T07:30:04.076Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "隔离入库单身份与可测量状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991910919942146?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "62124178-14e3-4c32-ae54-ec46b89b0823, e088de17-16b8-492d-8701-a64d7fbc2b64", + "traceId": "800162cc076b4844931d34f0d808cb10", + "evidence": "identity=true, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T07:30:04.076Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "生成箱唛 PDF 并冻结稳定箱码", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/inbounds/2085991910919942146/carton-label-pdf?tenantId=10001" + }, + "http": 200, + "code": null, + "message": "13868 bytes (application/pdf)", + "requestId": "8c534201-0eb8-4a4c-946e-a815bf07b634, 02f33042-ac00-4614-8086-78f7326110ec, 77dedba6-e38b-4ded-ab11-1654572b1ce9", + "traceId": "4ba42e2624574829aa0af15114c50ed0, ba0abaf0427e4a82924d47e3788d181c", + "evidence": "contentType=application/pdf, bytes=13868", + "checkedAt": "2026-08-08T07:30:04.222Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "首次打印后回查冻结箱数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991910919942146?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a74f752a-978d-47a8-97ec-5620399c620a, 33cefeff-10d7-4160-97d3-ddeaae79febf", + "traceId": "638b3fb5ac314c8b9885e693936ae545", + "evidence": "", + "checkedAt": "2026-08-08T07:30:04.249Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "首次打印按订单货物冻结原始总箱数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991910919942146?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a74f752a-978d-47a8-97ec-5620399c620a, 33cefeff-10d7-4160-97d3-ddeaae79febf", + "traceId": "638b3fb5ac314c8b9885e693936ae545", + "evidence": "inboundCodeStable=true, totalPackageCount=4", + "checkedAt": "2026-08-08T07:30:04.249Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "重复整单打印复用已冻结箱码映射", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/inbounds/2085991910919942146/carton-label-pdf?tenantId=10001" + }, + "http": 200, + "code": null, + "message": "13868 bytes (application/pdf)", + "requestId": "bbf82b0b-f9d2-4bf8-8954-4aa6d1f2cf6f, 7f597850-8561-4c86-8da8-8f98a5695487, 31d43d5e-69a3-480b-9ea0-a54b67a427b1", + "traceId": "04f4d0faf7eb43a0ac66da6e59fa8d12, 6829d9ae739549bbbb177a66387c6ff7", + "evidence": "boxCode=RK-2085991904328613890#4-1, contentType=application/pdf, bytes=13868", + "checkedAt": "2026-08-08T07:30:04.382Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "指定第1箱补打复用已冻结箱码映射", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/inbounds/2085991910919942146/carton-label-pdf?tenantId=10001&cartonIndex=1" + }, + "http": 200, + "code": null, + "message": "7743 bytes (application/pdf)", + "requestId": "60f38892-24ad-420e-8a33-0c30f034fb52, 1ac75399-0664-489b-bb56-8268e8f1fda3, babc65e5-d6e3-45de-a03d-e3cb2fcb6285", + "traceId": "332a388ed14e4751ab1857005d43bace, 631a159f987d4344a3ba3ad99ba78155", + "evidence": "boxCode=RK-2085991904328613890#4-1, cartonIndex=1, contentType=application/pdf, bytes=7743", + "checkedAt": "2026-08-08T07:30:04.503Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "模拟墨家首次扫描单箱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "37b17331-487e-422b-b0f9-140da650f0cf, 99717a68-018d-43b6-8ac4-bb4902724893", + "traceId": "a565a4293531457aaee17f331141f4a3", + "evidence": "boxCode=RK-2085991904328613890#4-1, machineNo=MJ-ADMIN-E2E-01", + "checkedAt": "2026-08-08T07:30:04.551Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "首次扫描新增一条且默认代表1箱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "37b17331-487e-422b-b0f9-140da650f0cf, 99717a68-018d-43b6-8ac4-bb4902724893", + "traceId": "a565a4293531457aaee17f331141f4a3", + "evidence": "created=true, confirmedPackageCount=1", + "checkedAt": "2026-08-08T07:30:04.551Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "重复打印及指定箱补打后原箱码仍可解析", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "37b17331-487e-422b-b0f9-140da650f0cf, 99717a68-018d-43b6-8ac4-bb4902724893", + "traceId": "a565a4293531457aaee17f331141f4a3", + "evidence": "boxCodeStable=true, resolvedInboundId=2085991910919942146", + "checkedAt": "2026-08-08T07:30:04.551Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "查询箱级测量详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ad8dc005-ce5d-479a-a4ca-568d758fede0, 3a5fc205-5a94-497e-8fff-c08bdc5cbfa9", + "traceId": "22597e2de7d3406c98de140d417e0b12", + "evidence": "measurementId=2085991917890875394", + "checkedAt": "2026-08-08T07:30:04.574Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "箱级查询回显箱码、尺寸、图片与设备信息", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ad8dc005-ce5d-479a-a4ca-568d758fede0, 3a5fc205-5a94-497e-8fff-c08bdc5cbfa9", + "traceId": "22597e2de7d3406c98de140d417e0b12", + "evidence": "itemFound=true, imageFileId=2085991917846855682", + "checkedAt": "2026-08-08T07:30:04.574Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "人工确认当前测量代表箱数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement/items/2085991917895069698/confirmed-package-count?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8558b78e-584a-417a-bf00-1f41bb490fec, 8cf7315a-d2b2-49cb-9bdb-0068215808fb", + "traceId": "2405d00b56ff4ce29bb26794440a6c53", + "evidence": "confirmedPackageCount=4", + "checkedAt": "2026-08-08T07:30:04.610Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "人工箱数更新且测量版本递增", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement/items/2085991917895069698/confirmed-package-count?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8558b78e-584a-417a-bf00-1f41bb490fec, 8cf7315a-d2b2-49cb-9bdb-0068215808fb", + "traceId": "2405d00b56ff4ce29bb26794440a6c53", + "evidence": "version=2", + "checkedAt": "2026-08-08T07:30:04.610Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "同箱号重新扫描覆盖当前记录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1e324a8a-87b8-4a9b-940c-082940b85216, 9da94e38-cc80-44b1-9802-58df39103130", + "traceId": "2e744cfac671452088ea62478a44b54e", + "evidence": "boxCode=RK-2085991904328613890#4-1, machineNo=MJ-ADMIN-E2E-02", + "checkedAt": "2026-08-08T07:30:04.667Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "覆盖保留同一条记录和人工箱数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1e324a8a-87b8-4a9b-940c-082940b85216, 9da94e38-cc80-44b1-9802-58df39103130", + "traceId": "2e744cfac671452088ea62478a44b54e", + "evidence": "sameItem=true, confirmedPackageCount=4", + "checkedAt": "2026-08-08T07:30:04.667Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "回查覆盖后的尺寸与体积结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "291a5713-8f76-414b-b718-298ef48cb9b8, 27d7349d-be05-44f4-8fdf-10077580122d", + "traceId": "8600d8a0d29d4c6e9583d1828e1ba705", + "evidence": "", + "checkedAt": "2026-08-08T07:30:04.697Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "覆盖尺寸、箱数和服务端体积公式正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "291a5713-8f76-414b-b718-298ef48cb9b8, 27d7349d-be05-44f4-8fdf-10077580122d", + "traceId": "8600d8a0d29d4c6e9583d1828e1ba705", + "evidence": "weightedOuter=64x54x54, unitVolume=0.187, totalVolume=0.748, volumeWeight=124.916, girth=204.5", + "checkedAt": "2026-08-08T07:30:04.697Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "保存同一测量批次草稿", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement/draft?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "478abc13-981d-46a1-870f-78f7b34c4a12, afc6b9c7-09c9-458f-8b50-7e29f15cb198", + "traceId": "7e04df696a0a4eb6baae5ce7caf871a1", + "evidence": "measurementId=2085991917890875394, items=1", + "checkedAt": "2026-08-08T07:30:04.745Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "草稿沿用批次并递增版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement/draft?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "478abc13-981d-46a1-870f-78f7b34c4a12, afc6b9c7-09c9-458f-8b50-7e29f15cb198", + "traceId": "7e04df696a0a4eb6baae5ce7caf871a1", + "evidence": "status=DRAFT, version=4", + "checkedAt": "2026-08-08T07:30:04.745Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "提交测量审核", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement/submit?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d6b04082-8c88-49cc-9186-a37901500623, 3ecbd9c1-1ab7-4779-9299-4e2177ab3ebf", + "traceId": "cffa31e9099a434bb0089950ee1d04f6", + "evidence": "measurementId=2085991917890875394", + "checkedAt": "2026-08-08T07:30:04.783Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "提交后进入待测量审核状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement/submit?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d6b04082-8c88-49cc-9186-a37901500623, 3ecbd9c1-1ab7-4779-9299-4e2177ab3ebf", + "traceId": "cffa31e9099a434bb0089950ee1d04f6", + "evidence": "processStatus=MEASURE_PENDING, reviewStatus=PENDING", + "checkedAt": "2026-08-08T07:30:04.783Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "测量提交后拒绝设备覆盖并返回中文提示", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "A0409", + "message": "测量已提交,设备不能新增或覆盖数据", + "requestId": "28a2e8c6-731b-4cb0-be47-29a02f42b91a", + "traceId": "e0d2987b37df4fda8331b7041cea4797", + "evidence": "HTTP=200, code=A0409, chineseMessage=true", + "checkedAt": "2026-08-08T07:30:04.807Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "审核前读取最新入库单版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991910919942146?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fb46226c-f811-4ce9-9dbd-71f721eb1c36, 0895857e-9225-4380-8c7a-260b8e654886", + "traceId": "7fbbba8379ef458e85f753959d68a927", + "evidence": "", + "checkedAt": "2026-08-08T07:30:04.841Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "审核前状态和版本有效", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085991910919942146?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fb46226c-f811-4ce9-9dbd-71f721eb1c36, 0895857e-9225-4380-8c7a-260b8e654886", + "traceId": "7fbbba8379ef458e85f753959d68a927", + "evidence": "status=MEASURE_PENDING, version=1", + "checkedAt": "2026-08-08T07:30:04.841Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "Admin 审核通过墨家测量", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/inbounds/2085991910919942146/measurements/approve?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0ae4b934-4e8a-4fe7-9204-4230ce1ffc3b, d14b5441-8e12-4133-b659-e6df799a03f1", + "traceId": "19ecba6204f6496fb3fcceada880eb48", + "evidence": "measurementId=2085991917890875394", + "checkedAt": "2026-08-08T07:30:04.876Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "查询审核后的最终测量状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "42b0dd2c-bd69-4d62-81af-88fde90fcba1, b8d85752-dc18-45df-88f2-4957f3e2fa33", + "traceId": "b4bd5294c1054ba2bdfa868b35f56b24", + "evidence": "", + "checkedAt": "2026-08-08T07:30:04.914Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "审核后入库与测量状态闭环且结果未变化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085991910919942146/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "42b0dd2c-bd69-4d62-81af-88fde90fcba1, b8d85752-dc18-45df-88f2-4957f3e2fa33", + "traceId": "b4bd5294c1054ba2bdfa868b35f56b24", + "evidence": "processStatus=INBOUNDED, measurementStatus=APPROVED, packages=4", + "checkedAt": "2026-08-08T07:30:04.914Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "order-service 状态响应使用统一成功体", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c2cbb6e9-f4b4-4737-97d8-62865650934f, 6a574fc0-80d7-4321-b71c-431e2bea2aa5", + "traceId": "abe1aba4563c418eb773c6e6a81e9868", + "evidence": "HTTP=200, code=200", + "checkedAt": "2026-08-08T07:30:04.943Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "order-service 状态字段完整且 readiness 语义明确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c2cbb6e9-f4b4-4737-97d8-62865650934f, 6a574fc0-80d7-4321-b71c-431e2bea2aa5", + "traceId": "abe1aba4563c418eb773c6e6a81e9868", + "evidence": "service=order-service, status=UP, readiness=UP", + "checkedAt": "2026-08-08T07:30:04.943Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "firstleg-service 状态响应使用统一成功体", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "44076c6a-158a-4aaa-abea-4415b2ab5e45, 1b31ff7c-056b-4b2c-bfed-d947b34a77a3", + "traceId": "75f562b557ac4f14ab25a4f7b5f9ab65", + "evidence": "HTTP=200, code=200", + "checkedAt": "2026-08-08T07:30:04.972Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "firstleg-service 状态字段完整且 readiness 语义明确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "44076c6a-158a-4aaa-abea-4415b2ab5e45, 1b31ff7c-056b-4b2c-bfed-d947b34a77a3", + "traceId": "75f562b557ac4f14ab25a4f7b5f9ab65", + "evidence": "service=firstleg-service, status=UP, readiness=UP", + "checkedAt": "2026-08-08T07:30:04.972Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "file-service 状态响应使用统一成功体", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "05b48869-8b7f-4a70-94dd-f457955b4f73, c30367d9-f913-4516-afd7-e5ede2dff645", + "traceId": "345403978fb344e4b0b47e8596945e26", + "evidence": "HTTP=200, code=200", + "checkedAt": "2026-08-08T07:30:05.004Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "file-service 状态字段完整且 readiness 语义明确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "05b48869-8b7f-4a70-94dd-f457955b4f73, c30367d9-f913-4516-afd7-e5ede2dff645", + "traceId": "345403978fb344e4b0b47e8596945e26", + "evidence": "service=file-service, status=UP, readiness=UP", + "checkedAt": "2026-08-08T07:30:05.004Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "warehouse-service 状态响应使用统一成功体", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouses/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "45504ad3-802d-4fac-a1c6-57d7acc61516, a5ca18b5-ebd2-4f4a-b226-3c0ae5984921", + "traceId": "a85bee92190d4efdbf2e2aea43e94541", + "evidence": "HTTP=200, code=200", + "checkedAt": "2026-08-08T07:30:05.036Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "warehouse-service 状态字段完整且 readiness 语义明确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouses/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "45504ad3-802d-4fac-a1c6-57d7acc61516, a5ca18b5-ebd2-4f4a-b226-3c0ae5984921", + "traceId": "a85bee92190d4efdbf2e2aea43e94541", + "evidence": "service=warehouse-service, status=UP, readiness=UP", + "checkedAt": "2026-08-08T07:30:05.036Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "平台接口未携带令牌返回 401", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "6488d7e9-1282", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:30:05.062Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "平台接口伪造令牌返回 401", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "bdbba1fe-1283", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:30:05.091Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "未认证请求不返回业务成功码", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "6488d7e9-1284", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:30:05.105Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a34bcdea-bbe0-4ff5-bc0b-ccb026a0b768, b433894e-bc70-496a-9092-1b4d70246d0e", + "traceId": "3307c27742264e4996e6ab45e0066dd2", + "evidence": "path=/api/platform/v1/warehouse-admin?page=1&size=5&status=ACTIVE", + "checkedAt": "2026-08-08T07:30:05.128Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a34bcdea-bbe0-4ff5-bc0b-ccb026a0b768, b433894e-bc70-496a-9092-1b4d70246d0e", + "traceId": "3307c27742264e4996e6ab45e0066dd2", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:30:05.128Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&tenantId=0&warehouseType=FBA" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "00267afa-7fa4-4ed4-a3b1-f849aa5a31d8, e308f2b3-bdfc-40d8-820c-8feb43d432bb", + "traceId": "0f6466e5b2304d25b3c73099b24bf2c4", + "evidence": "path=/api/platform/v1/warehouse-admin?page=1&size=5&tenantId=0&warehouseType=FBA", + "checkedAt": "2026-08-08T07:30:05.162Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&tenantId=0&warehouseType=FBA" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "00267afa-7fa4-4ed4-a3b1-f849aa5a31d8, e308f2b3-bdfc-40d8-820c-8feb43d432bb", + "traceId": "0f6466e5b2304d25b3c73099b24bf2c4", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:30:05.162Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库非法状态安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&status=NOT_A_STATUS" + }, + "http": 200, + "code": "A0422", + "message": "status: must match \"ACTIVE|INACTIVE\"", + "requestId": "96a8ee48-6c2f-46d4-a99e-eb6d8cf40499", + "traceId": "de8e41f1ef0343abb6392a3831cf2030", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:30:05.191Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库客户作用域安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&tenantId=10001" + }, + "http": 200, + "code": "A0400", + "message": "Platform resource scope must be 0 / 平台公共资源作用域必须为0", + "requestId": "92c2057e-82a7-4a13-87ce-1fbbad21ad49", + "traceId": "29d621a181d148298265ecebb522a77c", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:30:05.211Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2cad0687-9ca1-4ecf-824e-3984cd974298, d41420b9-2a29-4c0e-bd13-f7522294c800", + "traceId": "bc30970c0f9d415698fef9e0a6620731", + "evidence": "path=/api/platform/v1/locations?page=1&size=5&tenantId=0", + "checkedAt": "2026-08-08T07:30:05.239Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2cad0687-9ca1-4ecf-824e-3984cd974298, d41420b9-2a29-4c0e-bd13-f7522294c800", + "traceId": "bc30970c0f9d415698fef9e0a6620731", + "evidence": "records=3, current=1, size=5", + "checkedAt": "2026-08-08T07:30:05.239Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1d5acc50-6b65-4532-844e-7753c5c0e663, ecbe295e-1976-4c68-ac15-a8692f2ffb0f", + "traceId": "d39e4ae3b9734e4bb7481e2f070fd0c5", + "evidence": "path=/api/platform/v1/pallets?page=1&size=5&tenantId=0", + "checkedAt": "2026-08-08T07:30:05.271Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1d5acc50-6b65-4532-844e-7753c5c0e663, ecbe295e-1976-4c68-ac15-a8692f2ffb0f", + "traceId": "d39e4ae3b9734e4bb7481e2f070fd0c5", + "evidence": "records=3, current=1, size=5", + "checkedAt": "2026-08-08T07:30:05.271Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位仓库筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0&warehouseId=193000000000000001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "88c21512-2c0c-427f-a196-8acec6abe8e2, 24eda8c5-c64c-48fd-a09e-ee82ec36c8c3", + "traceId": "a7705df602af421a83590fbcc5ca01c4", + "evidence": "path=/api/platform/v1/locations?page=1&size=5&tenantId=0&warehouseId=193000000000000001", + "checkedAt": "2026-08-08T07:30:05.300Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位仓库筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0&warehouseId=193000000000000001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "88c21512-2c0c-427f-a196-8acec6abe8e2, 24eda8c5-c64c-48fd-a09e-ee82ec36c8c3", + "traceId": "a7705df602af421a83590fbcc5ca01c4", + "evidence": "records=0, current=1, size=5", + "checkedAt": "2026-08-08T07:30:05.301Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘仓库筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=0&warehouseId=193000000000000001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "021a38ff-7a3c-452e-b165-a50e3ff86133, e39858a2-953a-40a2-9a43-d3e45bad18d8", + "traceId": "546a5590a28f446d860dfe46d82cbba5", + "evidence": "path=/api/platform/v1/pallets?page=1&size=5&tenantId=0&warehouseId=193000000000000001", + "checkedAt": "2026-08-08T07:30:05.331Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘仓库筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=0&warehouseId=193000000000000001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "021a38ff-7a3c-452e-b165-a50e3ff86133, e39858a2-953a-40a2-9a43-d3e45bad18d8", + "traceId": "546a5590a28f446d860dfe46d82cbba5", + "evidence": "records=0, current=1, size=5", + "checkedAt": "2026-08-08T07:30:05.331Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位客户作用域安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=10001" + }, + "http": 200, + "code": "A0400", + "message": "平台公共资源作用域必须为0", + "requestId": "afcfe39b-f939-4de0-8a7d-007bd89e799d", + "traceId": "43483a09d347484294c438fb98e94239", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:30:05.360Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘客户作用域安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=10001" + }, + "http": 200, + "code": "A0400", + "message": "平台公共资源作用域必须为0", + "requestId": "a059c441-ad8e-4136-a109-3ac382223177", + "traceId": "eeeeb46ec947451da1dde3722a591662", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:30:05.390Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位非法状态安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0&status=ALLOCATED" + }, + "http": 200, + "code": "A0422", + "message": "status: must match \"^(AVAILABLE|RESERVED|OCCUPIED|DISABLED)$\"", + "requestId": "215dbc24-8efc-4e09-89ba-d84ad943ba88", + "traceId": "aa415290cd6447ceaad82558822153a8", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:30:05.421Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位过期版本/不存在资源不泄露或误修改数据", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/999999999999?tenantId=0&warehouseId=999999999999" + }, + "http": 200, + "code": "A0404", + "message": "库位不存在或超出当前企业仓库数据范围", + "requestId": "57b73c94-aca3-4cc4-b087-af49741cc36a", + "traceId": "00f5544a78d34d3a9b32252607e1e800", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:30:05.455Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘占用资源保护边界不泄露或误修改数据", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/999999999999?tenantId=0&warehouseId=999999999999" + }, + "http": 200, + "code": "A0404", + "message": "托盘不存在或不属于当前租户和仓库", + "requestId": "7755fe40-d930-47e7-8bc5-9c89e3716856", + "traceId": "5d8d31d783644207a9a048d69811213b", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:30:05.486Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "34d07cdf-8be3-49ec-a3fa-e531c1f53dab, fb2fd1e9-ba5a-4e02-bb6f-362015505640", + "traceId": "dafc2cd97a5e43388315af387580ddb5", + "evidence": "path=/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=ACTIVE", + "checkedAt": "2026-08-08T07:30:05.519Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "34d07cdf-8be3-49ec-a3fa-e531c1f53dab, fb2fd1e9-ba5a-4e02-bb6f-362015505640", + "traceId": "dafc2cd97a5e43388315af387580ddb5", + "evidence": "records=4, current=1, size=5", + "checkedAt": "2026-08-08T07:30:05.519Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司停用筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ce8e220f-508e-418a-a98a-b3e7b048c83a, 3fc75351-421a-4993-b23e-ea524c8aedb4", + "traceId": "e7cdae25a0be4247ae47e99f96cf771d", + "evidence": "path=/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=INACTIVE", + "checkedAt": "2026-08-08T07:30:05.552Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司停用筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ce8e220f-508e-418a-a98a-b3e7b048c83a, 3fc75351-421a-4993-b23e-ea524c8aedb4", + "traceId": "e7cdae25a0be4247ae47e99f96cf771d", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:30:05.552Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司状态枚举过滤不混入其他状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ce8e220f-508e-418a-a98a-b3e7b048c83a, 3fc75351-421a-4993-b23e-ea524c8aedb4", + "traceId": "e7cdae25a0be4247ae47e99f96cf771d", + "evidence": "records=5", + "checkedAt": "2026-08-08T07:30:05.552Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司无效筛选参数安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=UNKNOWN" + }, + "http": 200, + "code": "A0422", + "message": "status: must match \"^(ACTIVE|INACTIVE)$\"", + "requestId": "d2390cfc-e37c-4df3-afb3-0108bb32c9a0", + "traceId": "f09a3d3f8ace46f7b8c9ab1127fd8ac8", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:30:05.577Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cce1bedd-f500-4401-9983-8a223b48acbc, 24156ca1-f2f6-41e3-85ac-032daf327c8d", + "traceId": "ac636c751de849ad81926598f2ae1ed0", + "evidence": "path=/api/platform/v1/partners?page=1&size=5&tenantId=0&status=ACTIVE", + "checkedAt": "2026-08-08T07:30:05.613Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cce1bedd-f500-4401-9983-8a223b48acbc, 24156ca1-f2f6-41e3-85ac-032daf327c8d", + "traceId": "ac636c751de849ad81926598f2ae1ed0", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:30:05.613Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位停用筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1e757545-1988-48f1-a4c9-d0a397fb2cf1, 1ece5488-7c6e-4779-b5ce-00459a948a49", + "traceId": "57871f8a8bfd414cba8390c4d29e5d32", + "evidence": "path=/api/platform/v1/partners?page=1&size=5&tenantId=0&status=INACTIVE", + "checkedAt": "2026-08-08T07:30:05.643Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位停用筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1e757545-1988-48f1-a4c9-d0a397fb2cf1, 1ece5488-7c6e-4779-b5ce-00459a948a49", + "traceId": "57871f8a8bfd414cba8390c4d29e5d32", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:30:05.643Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位状态枚举过滤不混入其他状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1e757545-1988-48f1-a4c9-d0a397fb2cf1, 1ece5488-7c6e-4779-b5ce-00459a948a49", + "traceId": "57871f8a8bfd414cba8390c4d29e5d32", + "evidence": "records=5", + "checkedAt": "2026-08-08T07:30:05.643Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位无效筛选参数安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&types=UNKNOWN_TYPE" + }, + "http": 200, + "code": "A0422", + "message": "types[0]: must match \"^(CUSTOMER|SUPPLIER|CARRIER|CUSTOMS_BROKER|SHIPPER|CONSIGNEE)$\"", + "requestId": "1a5ef51c-e876-469c-8b98-ce0bc1c92d57", + "traceId": "9ed0f03cfb44423db70f339ed3c5b106", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:30:05.670Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "仓库导入模板为 XLSX 且不记录二进制", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/import-template" + }, + "http": 200, + "code": null, + "message": "3852 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "785c7b1e-0bad-4d04-b926-679a9abb575a, 3fdc2909-9175-4f79-9ad9-b82a33e430d7", + "traceId": "1def6151305c4be7ac54bf0267913716", + "evidence": "HTTP=200, bytes=3852, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:30:05.700Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司导入模板为 XLSX 且不记录二进制", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/import-template" + }, + "http": 200, + "code": null, + "message": "3691 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "9c4a9b1d-bfa8-4ee7-ac5a-456776d326ba, 9c1d2fa5-e67d-4e26-a639-1f5dca9c474f", + "traceId": "295ea1f4b723475ba3be9d747c2dd3c6", + "evidence": "HTTP=200, bytes=3691, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:30:05.749Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位导入模板为 XLSX 且不记录二进制", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/import-template" + }, + "http": 200, + "code": null, + "message": "3829 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "37807644-a2f8-4153-9168-ba9f1dd2aa17, 711b3ceb-d897-4ea4-bbb2-ef7c6539e99e", + "traceId": "4a532a493b9442ee94b4f4fdb7ace12c", + "evidence": "HTTP=200, bytes=3829, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:30:05.777Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 PENDING_CONFIRMATION 状态过滤", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=PENDING_CONFIRMATION" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "544507ce-0d49-4158-9afe-8a3a9cfc441d, b1814ae8-bc76-4414-8356-942b75fde7f5", + "traceId": "8378dab77d0c4e769f8aa94483cc7254", + "evidence": "count=1", + "checkedAt": "2026-08-08T07:30:05.797Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 PENDING_CONFIRMATION 结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=PENDING_CONFIRMATION" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "544507ce-0d49-4158-9afe-8a3a9cfc441d, b1814ae8-bc76-4414-8356-942b75fde7f5", + "traceId": "8378dab77d0c4e769f8aa94483cc7254", + "evidence": "count=1", + "checkedAt": "2026-08-08T07:30:05.797Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 ACTIVE 状态过滤", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0e678953-5518-4868-a228-8bf730797950, 01cfd1cf-3a98-459a-b451-b4ecf930f0ee", + "traceId": "5fea2ebbd5de4936be545ff7c9d99bc9", + "evidence": "count=1", + "checkedAt": "2026-08-08T07:30:05.818Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 ACTIVE 结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0e678953-5518-4868-a228-8bf730797950, 01cfd1cf-3a98-459a-b451-b4ecf930f0ee", + "traceId": "5fea2ebbd5de4936be545ff7c9d99bc9", + "evidence": "count=1", + "checkedAt": "2026-08-08T07:30:05.818Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 SUPERSEDED 状态过滤", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=SUPERSEDED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d174a706-4be6-4046-a28f-6ec647c37c3e, 5bd36511-4845-4723-a9b1-f9e50b53fcd3", + "traceId": "30631fa4b03648f9951cd35ec4df8a89", + "evidence": "count=12", + "checkedAt": "2026-08-08T07:30:05.838Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 SUPERSEDED 结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=SUPERSEDED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d174a706-4be6-4046-a28f-6ec647c37c3e, 5bd36511-4845-4723-a9b1-f9e50b53fcd3", + "traceId": "30631fa4b03648f9951cd35ec4df8a89", + "evidence": "count=12", + "checkedAt": "2026-08-08T07:30:05.838Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "读取现有生效价格版本用于下载安全检查", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "122fe1d2-cdf1-4609-b742-8cf9c6d45424, c75ae499-09d4-4b4c-b313-fdffe5063348", + "traceId": "67302df335c4490bb3766cfd37175065", + "evidence": "", + "checkedAt": "2026-08-08T07:30:05.872Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "现有生效价格源文件下载为 XLSX", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085991853294399490/source" + }, + "http": 200, + "code": null, + "message": "1343413 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "fca0c203-aab4-47dd-8dc2-346ad05da276, cc7265cf-d1b6-49de-a09a-8c8db5212d53, c7d1a72f-b908-4750-a4dc-d1f6420c73e3", + "traceId": "5d86d2b047d54b108479577dde56bdc6, 1a691400708e463ca62afdd1954d89f8", + "evidence": "versionId=2085991853294399490, bytes=1343413, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:30:05.959Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 PENDING 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=PENDING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "29338e0a-b892-442c-8b60-508e4441a72a, 7f769454-237a-4189-acb0-ba65567cd9ff", + "traceId": "4d914504c67c4602865bc48f70601c88", + "evidence": "", + "checkedAt": "2026-08-08T07:30:05.982Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 PENDING 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=PENDING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "29338e0a-b892-442c-8b60-508e4441a72a, 7f769454-237a-4189-acb0-ba65567cd9ff", + "traceId": "4d914504c67c4602865bc48f70601c88", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:30:05.982Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 RUNNING 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=RUNNING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "07bb0137-f589-4e4c-ae31-b1b221310186, 1227d71a-0aab-4797-96f5-779ab856c11d", + "traceId": "07c9e17ebef6400ea357c4eb6ad359a4", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.014Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 RUNNING 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=RUNNING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "07bb0137-f589-4e4c-ae31-b1b221310186, 1227d71a-0aab-4797-96f5-779ab856c11d", + "traceId": "07c9e17ebef6400ea357c4eb6ad359a4", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:30:06.014Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 SUCCEEDED 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=SUCCEEDED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0b66d8db-0537-4267-ad0a-59796a928eb0, 8bc48a81-17b4-41d0-b8c7-13f5f0f380b8", + "traceId": "ecd9d86a641f4545addbc699aa7b7d26", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.045Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 SUCCEEDED 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=SUCCEEDED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0b66d8db-0537-4267-ad0a-59796a928eb0, 8bc48a81-17b4-41d0-b8c7-13f5f0f380b8", + "traceId": "ecd9d86a641f4545addbc699aa7b7d26", + "evidence": "records=5", + "checkedAt": "2026-08-08T07:30:06.045Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 FAILED 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=FAILED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c5b65ac9-b95a-43e4-a4fb-e6216853eb15, a4a2d5e2-7516-4482-b222-92369181153f", + "traceId": "ad0ebf70d8f54f23b3e4620eab4fa4da", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.075Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 FAILED 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=FAILED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c5b65ac9-b95a-43e4-a4fb-e6216853eb15, a4a2d5e2-7516-4482-b222-92369181153f", + "traceId": "ad0ebf70d8f54f23b3e4620eab4fa4da", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:30:06.075Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 EXPIRED 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=EXPIRED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "60f273a1-a2fb-4965-af42-8f9f9562915c, 5512767f-d2b2-4672-a874-e9c9d0e007a7", + "traceId": "5a4e13965b074d4492fc524c146dd13e", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.097Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 EXPIRED 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=EXPIRED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "60f273a1-a2fb-4965-af42-8f9f9562915c, 5512767f-d2b2-4672-a874-e9c9d0e007a7", + "traceId": "5a4e13965b074d4492fc524c146dd13e", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:30:06.097Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "不存在下载任务详情安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/999999999999" + }, + "http": 200, + "code": "A0404", + "message": "导出任务不存在", + "requestId": "92d40f8c-3cec-4f84-a1ca-d1ca7ce993b4", + "traceId": "d309be32d6ea4cb48721d4629b96931f", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:30:06.120Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "不存在下载任务文件安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/999999999999/download" + }, + "http": 200, + "code": "A0404", + "message": "导出任务不存在", + "requestId": "aa77758c-942a-4a69-8939-b4751fef0397", + "traceId": "4f6594a3eb324982b18ec9dbb229ba3a", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:30:06.140Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "未授权下载请求被拒绝", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/999999999999/download" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "bdbba1fe-1319", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:30:06.161Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "平台用户只读列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users?page=1&size=5" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cb971a77-b000-447a-8e72-3253f5572d65, 80a8c668-efea-4eab-81b6-55dad5af3cea", + "traceId": "ea6dae2b9b1942679e93ce5b5c32cad0", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.233Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "平台用户列表结构正确且包含内置保护标识", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users?page=1&size=5" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cb971a77-b000-447a-8e72-3253f5572d65, 80a8c668-efea-4eab-81b6-55dad5af3cea", + "traceId": "ea6dae2b9b1942679e93ce5b5c32cad0", + "evidence": "records=5, builtInField=protectedAccount", + "checkedAt": "2026-08-08T07:30:06.233Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "平台角色只读列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "92daf03c-c594-4613-ae95-581ec6e0a271, 4492cb5e-c5cc-4a68-ba50-1324a9ae3f1b", + "traceId": "d1a4ea80957d47f98cc7ed1781fda73f", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.275Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "平台角色列表结构正确且包含内置保护标识", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "92daf03c-c594-4613-ae95-581ec6e0a271, 4492cb5e-c5cc-4a68-ba50-1324a9ae3f1b", + "traceId": "d1a4ea80957d47f98cc7ed1781fda73f", + "evidence": "records=20, builtInField=roleType", + "checkedAt": "2026-08-08T07:30:06.275Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "菜单权限只读列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4a3f5d93-b521-4f2a-8901-ebf190453967, 33d02ed1-a90d-4bd2-b5a1-60efebb03817", + "traceId": "ede0dfd6d5be4705b460cc7602a56494", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.319Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "菜单权限列表结构正确且包含内置保护标识", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4a3f5d93-b521-4f2a-8901-ebf190453967, 33d02ed1-a90d-4bd2-b5a1-60efebb03817", + "traceId": "ede0dfd6d5be4705b460cc7602a56494", + "evidence": "records=151, builtInField=builtIn", + "checkedAt": "2026-08-08T07:30:06.319Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "角色列表伪造令牌拒绝访问", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "bdbba1fe-1323", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:30:06.345Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "菜单权限未携带令牌拒绝访问", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "6488d7e9-1324", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:30:06.361Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "创建边界验收隔离仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6766a930-df0a-4d7e-8bed-ea74e58d5801, 8e554b81-edf9-4156-afda-6d4b104bf8ed", + "traceId": "76e9fe913bdf4712b34b08abf2f31127", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.411Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "创建边界验收隔离库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/locations?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "84d34077-3776-410a-9e63-4e650fcf0262, 4824795b-8d7b-46b9-835f-b16ed7ab02f4", + "traceId": "75ef2cb7bd614339923b6f49e5546c58", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.451Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "读取隔离库位版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991925871067137?tenantId=0&warehouseId=2085991925669740545" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ee730137-3e5c-46b8-8373-f1b650c55b0d, 2ffec038-df95-4e42-b36e-e6975f3fdc6a", + "traceId": "acb26a5dac894b9fa8dec19da5571660", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.480Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "更新隔离库位以推进版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085991925871067137?tenantId=0&warehouseId=2085991925669740545" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "74d99574-e3b5-458c-86c7-2670234230ab, d20e2abe-6aba-4700-83e6-556688f104d2", + "traceId": "532c67fe68e64a37b88fc0a982356153", + "evidence": "version=0", + "checkedAt": "2026-08-08T07:30:06.512Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "库位旧 version PUT 返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085991925871067137?tenantId=0&warehouseId=2085991925669740545" + }, + "http": 200, + "code": "A0409", + "message": "库位已被其他操作修改,请刷新后重试", + "requestId": "d3f669de-72ef-4d10-874a-0a2f617d5aea", + "traceId": "7e9c8d5f8dba440087dcbaaebfce2fcb", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:30:06.539Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "冲突后回查库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991925871067137?tenantId=0&warehouseId=2085991925669740545" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f1288527-ea99-4747-9d99-b2614d6543fe, cc9183ef-bcad-4f07-b7bb-19c04c695b50", + "traceId": "25fd2d7a0313455eb980e2f8ea7b0913", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.568Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "库位冲突未造成部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085991925871067137?tenantId=0&warehouseId=2085991925669740545" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f1288527-ea99-4747-9d99-b2614d6543fe, cc9183ef-bcad-4f07-b7bb-19c04c695b50", + "traceId": "25fd2d7a0313455eb980e2f8ea7b0913", + "evidence": "name=边界库位-编辑", + "checkedAt": "2026-08-08T07:30:06.568Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "仓库空文件安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ef949f14-ca6d-4f6e-b484-7915e999eaed, 4a2e31a6-8ee1-47c6-88bb-0d28adbb49c1", + "traceId": "497c191f82cd4d42af22824af11a6abe", + "evidence": "HTTP=200, code=200, bytes=0", + "checkedAt": "2026-08-08T07:30:06.589Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "仓库缺列伪 XLSX安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "762b67a2-dc02-40f4-88b5-29734b21b6de, f9b598b8-00d4-49ee-9e48-3ae3f9d851c1", + "traceId": "7486e35d252747cfa5befb5bdfc68d5e", + "evidence": "HTTP=200, code=200, bytes=6", + "checkedAt": "2026-08-08T07:30:06.614Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "快递公司错误扩展名安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bbb6619e-2ba1-4324-b1d2-3d2610758356, 5f7aae31-5e35-4798-84e0-af9a4dad1846", + "traceId": "74e922151e9247baa1ab5512d47fadf6", + "evidence": "HTTP=200, code=200, bytes=27", + "checkedAt": "2026-08-08T07:30:06.644Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "往来单位非 XLSX安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e353b411-5620-49e2-8bbe-b682e3a99448, 149e9f49-5d24-4e4c-833a-2920904cbe77", + "traceId": "b1e385fef96f4a4aa166ef7d4111a8e0", + "evidence": "HTTP=200, code=200, bytes=27", + "checkedAt": "2026-08-08T07:30:06.665Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "错误客户海外仓费用 ID 安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/999999999999999999/overseas-storage-fees" + }, + "http": 200, + "code": "A0404", + "message": "海外仓费用不存在", + "requestId": "90723b33-0ff0-45da-b68a-5a928ae97de0", + "traceId": "762480e9f3c44bbeb7ee3dc30cf2681a", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:30:06.691Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "库位列表未授权边界响应正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=1&tenantId=0" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "6488d7e9-1336", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:30:06.715Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "下载中心非法页码边界响应正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=0&size=1" + }, + "http": 200, + "code": "A0422", + "message": "page.page: must be greater than or equal to 1", + "requestId": "d4d52183-a4c7-4b4d-837c-013c8b573c68", + "traceId": "fd238f14481944bf85439aedc15ead95", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:30:06.735Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "船期价格非法状态边界响应正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=INVALID" + }, + "http": 200, + "code": "A0400", + "message": "Bad request", + "requestId": "d94c6e40-49fc-416b-baed-a4105dccc5be", + "traceId": "de769ef7a9b0497cbc842f795e9c887a", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:30:06.766Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "停用隔离库位以便清理", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/locations/2085991925871067137/status?tenantId=0&warehouseId=2085991925669740545" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "40675d4e-c14d-45ff-9025-2b70674623f8, e431bf1b-d0f4-444c-892e-1294327f88cf", + "traceId": "b30caa66616b4cd4a84dac06ee6adc5c", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.805Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "删除隔离库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/locations/2085991925871067137?tenantId=0&warehouseId=2085991925669740545&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "074287a8-9bd4-4730-89ed-2e18478607b7, 373b25cc-b208-44e5-8a36-bcdb339da6df", + "traceId": "aef226a882be43aab5ffa527955b64bb", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.838Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "停用隔离仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/warehouse-admin/2085991925669740545/status?tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ac80a9a4-348f-4bd9-bdfe-ce82d5895caf, 87900d8f-1f95-445a-9104-97874384262d", + "traceId": "47a0f9c7d9f343c690e954b511b75a0b", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.864Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱列表分页与 keyword 查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&keyword=ADMIN-API-20260808072938523" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a1575594-d61a-4918-880d-9a8d505f1541, dae4ca04-97b6-498d-a547-a96062b7177d", + "traceId": "6e7bbf6638bc4ed89fc8e74b37839931", + "evidence": "", + "checkedAt": "2026-08-08T07:30:06.892Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱列表分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&keyword=ADMIN-API-20260808072938523" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a1575594-d61a-4918-880d-9a8d505f1541, dae4ca04-97b6-498d-a547-a96062b7177d", + "traceId": "6e7bbf6638bc4ed89fc8e74b37839931", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:30:06.892Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 DRAFT 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=DRAFT" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "774c0b18-39d3-41b7-8ee2-4a0843bf3fa2, ad17fb56-0c5b-4f3f-b751-93dae2807917", + "traceId": "10c03442aaf346329ad71e624071596c", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:06.924Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 SUBMITTED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=SUBMITTED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0c576e52-6824-46c0-b89d-74910804bd44, 1d11cb54-6d19-4456-b1cb-5e188a6fff60", + "traceId": "1faacab3ce27420788e2d1bdd854d35a", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:06.953Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 CONFIRMED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=CONFIRMED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2995b528-ff6b-42f8-9d35-4439df372fab, 411a4f4f-43ad-46e1-94a6-0c401cf53d54", + "traceId": "cbe487fa852943d5905489a0c1aff498", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:06.984Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 RELEASED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=RELEASED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a1a192aa-63f4-4f3e-8fe9-b829cedf967f, 17141e1b-796c-4b22-b2aa-013a24c587de", + "traceId": "a9ea2309b28845f4958c3a62e6a98697", + "evidence": "HTTP=200, code=200, records=4", + "checkedAt": "2026-08-08T07:30:07.007Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 FAILED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=FAILED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a320b651-dda5-4c6b-bfe5-96cc635cf877, 664f9ed5-58e6-4552-8fab-cf5297acdd7d", + "traceId": "dbde23d170b34bbcbd2699d27ffc9487", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:07.032Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 CANCELLED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=CANCELLED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4a623e90-853a-41d1-9332-26ee927e0e2f, 88a3723f-a781-4ee2-85b9-55f9fcb0b27e", + "traceId": "9819a83c5eab40dba6e9f37e030c14fb", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:07.060Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "创建隔离海运订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "52e1d72b-53c8-424a-b375-d4a6f33f7bc0, 15141571-aae6-4620-ba9f-641f2a670a44", + "traceId": "4ce6d54e29664592a0f11cd229de9707", + "evidence": "key=ADMIN-API-20260808072938523-ocean-create", + "checkedAt": "2026-08-08T07:30:07.102Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 DTO 字段、DRAFT 和9类关联字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "52e1d72b-53c8-424a-b375-d4a6f33f7bc0, 15141571-aae6-4620-ba9f-641f2a670a44", + "traceId": "4ce6d54e29664592a0f11cd229de9707", + "evidence": "bookingId=2085991928569573377, parties=3, requirements=1", + "checkedAt": "2026-08-08T07:30:07.103Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "创建 Idempotency-Key 重放返回同一订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fbe7f75d-09b7-4283-a14a-68e75c87b621, 5ceea82d-4a0e-418f-b917-29b48b156ffe", + "traceId": "ae92cc4ca29e454190612d02e47caa87", + "evidence": "first=2085991928569573377, replay=2085991928569573377", + "checkedAt": "2026-08-08T07:30:07.143Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "编辑 DRAFT 订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/ocean-bookings/2085991928569573377" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "58b358ac-f05d-476a-8a7c-a9e7861d5ae1, 8a03c21e-18c7-4e0d-bd26-b6693cea4722", + "traceId": "7426596f648f4a62be5bb018c157531f", + "evidence": "version=0", + "checkedAt": "2026-08-08T07:30:07.184Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱旧版本编辑返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/ocean-bookings/2085991928569573377" + }, + "http": 200, + "code": "A0409", + "message": "数据已被其他人修改,请刷新后重试", + "requestId": "668a067c-587c-43b6-aa79-8cb4fa505b59", + "traceId": "fd0f2bffeb81406b93e9785a711b5d92", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:30:07.221Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "冲突后回查订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085991928569573377" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9de37be5-0d52-45db-be54-a518b6dee919, ce53943a-7746-4019-bbe2-b91212190e5c", + "traceId": "099d590fae93449abcb1e0fee7eda7f7", + "evidence": "", + "checkedAt": "2026-08-08T07:30:07.246Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱冲突未部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085991928569573377" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9de37be5-0d52-45db-be54-a518b6dee919, ce53943a-7746-4019-bbe2-b91212190e5c", + "traceId": "099d590fae93449abcb1e0fee7eda7f7", + "evidence": "vessel=编辑船-8072938523", + "checkedAt": "2026-08-08T07:30:07.246Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "提交订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991928569573377/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fb2dc632-e72b-4c36-b709-be727876f2f2, 70d12339-ab87-4917-9998-cd883905d3a9", + "traceId": "82969ada90ee416d863216c2414f09f2", + "evidence": "status=SUBMITTED", + "checkedAt": "2026-08-08T07:30:07.290Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "确认订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991928569573377/confirm" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a87ac8b8-2fe7-4213-b0dd-96b2746355a0, d8f3c189-6326-4456-93bf-ac19871c00d0", + "traceId": "3d8dd214cc5745e2a87611e78d2765de", + "evidence": "status=CONFIRMED", + "checkedAt": "2026-08-08T07:30:07.345Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "申请改船", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991928569573377/change-request" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a971adc2-23f8-46a6-b2b1-63f15ecede30, a797fef7-3742-4b53-8cca-0fddee3d7bfb", + "traceId": "1ae6a6dcd9e244df83f7982f394a76ec", + "evidence": "", + "checkedAt": "2026-08-08T07:30:07.383Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "确认改船", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991928569573377/change-confirm" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b0f9cd7c-6d41-469d-9978-4cc5d15b90e4, b1565123-9189-47a9-9d97-f369fd663362", + "traceId": "a72a05e36c83463798ffa4579b5e250d", + "evidence": "status=CONFIRMED", + "checkedAt": "2026-08-08T07:30:07.420Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "放舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085991928569573377/release" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cb391985-e7b2-468b-9e28-24fe669bd37b, 0cdd1cab-233b-49bd-8ed3-dcbbbaf75823", + "traceId": "de7ab95151c84184a1538a3ce2a9f15c", + "evidence": "status=RELEASED", + "checkedAt": "2026-08-08T07:30:07.464Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "回查 RELEASED 订舱详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085991928569573377" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "58e69ad0-7fb8-4a55-b06c-e4ff121d3b64, 6dfdddd0-1b3b-414b-b406-31bc7a70b2ed", + "traceId": "20f14f5811a44976a1616f4a4f127a51", + "evidence": "", + "checkedAt": "2026-08-08T07:30:07.485Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱状态历史、审计操作者和终态完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085991928569573377" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "58e69ad0-7fb8-4a55-b06c-e4ff121d3b64, 6dfdddd0-1b3b-414b-b406-31bc7a70b2ed", + "traceId": "20f14f5811a44976a1616f4a4f127a51", + "evidence": "status=RELEASED, histories=6", + "checkedAt": "2026-08-08T07:30:07.485Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "不存在订舱详情安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/999999999999999999" + }, + "http": 200, + "code": "A0404", + "message": "订舱单不存在", + "requestId": "ef05d27a-5b47-46e6-93ee-a61ff13ec4bf", + "traceId": "03b692ce045a4e39bc6338cbe623b255", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:30:07.510Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约分页 keyword 查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&keyword=ADMIN-API-20260808072938523" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e71829db-0422-4b29-bdcc-26d6a45cb401, 0bb8d3fc-511e-4ea8-adea-88f99deb60d8", + "traceId": "d716444264ee4853a1964c35a4ae7ff4", + "evidence": "", + "checkedAt": "2026-08-08T07:30:07.544Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&keyword=ADMIN-API-20260808072938523" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e71829db-0422-4b29-bdcc-26d6a45cb401, 0bb8d3fc-511e-4ea8-adea-88f99deb60d8", + "traceId": "d716444264ee4853a1964c35a4ae7ff4", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:30:07.544Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 DRAFT 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=DRAFT" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "829d4c9f-8003-45b2-9cf3-aec4fb242c84, 79d54c54-d93d-45a9-9899-b55a019b09e1", + "traceId": "c866df76fb6a4c679af20504ef76a39a", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:07.574Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 PENDING_DISPATCH 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=PENDING_DISPATCH" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cde632ee-862f-48f1-a8ff-6286430bdd96, b2929329-afef-40d3-9793-f5471b0a5974", + "traceId": "c4e08ac6985142d7b76eca1b78d4d6a4", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:07.595Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 DISPATCHED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=DISPATCHED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1c4b9692-f235-454b-abd7-f05c514f8512, ae5ba5ec-df67-4193-a724-2f32a5f82023", + "traceId": "f60f27c9bd304851bf15ca4c56827c12", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:07.620Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 PICKUP_IN_PROGRESS 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=PICKUP_IN_PROGRESS" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5b7db92e-3634-4f05-b99c-32bd537951fb, 74157a65-47da-413c-a500-b49fca2a60e8", + "traceId": "b2d173309e254a31a945c72033d83f03", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:07.651Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 ARRIVED_WAREHOUSE 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=ARRIVED_WAREHOUSE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5df7262d-f160-4367-908d-de45e10949fd, 0459d0a3-fb08-4ea5-adf2-3cab62d56565", + "traceId": "f76ca4eef86d45d6bec767fc52a778f1", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:07.680Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 LOADING 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=LOADING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1fdc6baf-6148-4625-9b82-021c9df444a4, 6e3d3bc7-00bf-4294-9a1e-a7d1e602ed6f", + "traceId": "b0acb0b62500493e88b3cf561ff5df2a", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:07.712Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 DEPARTED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=DEPARTED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c1bad2b0-a0e7-4f9e-b86a-bd41dfeab984, f605ae63-d410-4446-9d2d-0fd888a8d4bb", + "traceId": "4c8b04bfb7b94a44ae0e5e39d166578d", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:07.743Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 COMPLETED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=COMPLETED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "139b4fe0-30e7-4f28-8618-36526c24c176, deeb76ca-28a1-4155-a91a-2e5a19a8d1ee", + "traceId": "5334b92cc79d4048b954f24e0d96ee71", + "evidence": "HTTP=200, code=200, records=4", + "checkedAt": "2026-08-08T07:30:07.766Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 RESCHEDULED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=RESCHEDULED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f4dc7834-c35b-4f01-856e-27abc95435a7, daab4e17-1c1d-45ce-a9a6-71c2f920c762", + "traceId": "d8ad583d45284c3daec74472d4333bbe", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:07.788Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 EXCEPTION 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=EXCEPTION" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e60870c9-50b2-4166-9c02-2f06849b1491, 13f8ea11-ff0d-4596-8176-f937a3c2e9ed", + "traceId": "5a302e3452684a0a83ca8e1398163afa", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:30:07.819Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 CANCELLED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=CANCELLED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b5d647b3-b0f0-4c80-bfff-8def938651aa, 9e0378ca-ad68-44ad-9465-791d1cab5bae", + "traceId": "2937d625f50e4f6c9ef29f97687b4582", + "evidence": "HTTP=200, code=200, records=2", + "checkedAt": "2026-08-08T07:30:07.851Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "创建隔离拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f3e7da58-8cea-4319-a9d2-cdc1c138b707, e187208b-f119-4fd5-8163-fafb57089ae9", + "traceId": "5e02e3d4dafc412983dde8b54e0ab652", + "evidence": "", + "checkedAt": "2026-08-08T07:30:07.890Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约费用、司机车辆和地址字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f3e7da58-8cea-4319-a9d2-cdc1c138b707, e187208b-f119-4fd5-8163-fafb57089ae9", + "traceId": "5e02e3d4dafc412983dde8b54e0ab652", + "evidence": "id=2085991931891462145, status=DRAFT", + "checkedAt": "2026-08-08T07:30:07.890Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "编辑拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/truck-appointments/2085991931891462145" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f3146179-e5b6-4c79-ab7d-7036b4a2bdcf, f18d40d4-d2de-4dd8-a3d8-fdbd0a7c9a47", + "traceId": "7e73030961bf439ca86bfa1a30dc800e", + "evidence": "version=0", + "checkedAt": "2026-08-08T07:30:07.922Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约旧版本编辑返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/truck-appointments/2085991931891462145" + }, + "http": 200, + "code": "A0409", + "message": "版本已变化,请刷新后重试", + "requestId": "779ef46e-e8ea-4d11-82c3-85e2b5d35685", + "traceId": "367f735717e840f69197a80625273558", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:30:07.946Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "冲突后回查拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991931891462145" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "028fdbc1-5481-440e-b143-49d548b4b8bf, b219b0bc-43de-4bf0-8e50-06310432745d", + "traceId": "f574c1fb33a4490ea463525770843cb6", + "evidence": "", + "checkedAt": "2026-08-08T07:30:07.975Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约冲突未部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991931891462145" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "028fdbc1-5481-440e-b143-49d548b4b8bf, b219b0bc-43de-4bf0-8e50-06310432745d", + "traceId": "f574c1fb33a4490ea463525770843cb6", + "evidence": "vehicleNo=粤C-938523", + "checkedAt": "2026-08-08T07:30:07.975Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "提交预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8b68ce7a-7d38-448e-9a2f-540f89f3675b, 7ddebd40-d36f-4022-9efb-717cc8a66423", + "traceId": "1e192e38343c474e85cae6c735b4da11", + "evidence": "", + "checkedAt": "2026-08-08T07:30:08.017Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "提交预约 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8b68ce7a-7d38-448e-9a2f-540f89f3675b, 7ddebd40-d36f-4022-9efb-717cc8a66423", + "traceId": "1e192e38343c474e85cae6c735b4da11", + "evidence": "status=PENDING_DISPATCH", + "checkedAt": "2026-08-08T07:30:08.017Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "派车", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/dispatch" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "68e08084-456d-41d7-9f07-d0bac26f1635, d82b6d1b-6700-40d7-9db2-ea42fe0513dd", + "traceId": "c0bcd7de840b4376ba2be51cfaca990f", + "evidence": "", + "checkedAt": "2026-08-08T07:30:08.046Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "派车 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/dispatch" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "68e08084-456d-41d7-9f07-d0bac26f1635, d82b6d1b-6700-40d7-9db2-ea42fe0513dd", + "traceId": "c0bcd7de840b4376ba2be51cfaca990f", + "evidence": "status=DISPATCHED", + "checkedAt": "2026-08-08T07:30:08.046Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始提货", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/pickup" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1c831789-6c53-4f7c-8bf3-eaef31d3624a, 8a71f17e-2807-4d50-a8ab-c8334a13b41a", + "traceId": "1e1d1e89e70448d8b538535ac77bcebc", + "evidence": "", + "checkedAt": "2026-08-08T07:30:08.076Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始提货 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/pickup" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1c831789-6c53-4f7c-8bf3-eaef31d3624a, 8a71f17e-2807-4d50-a8ab-c8334a13b41a", + "traceId": "1e1d1e89e70448d8b538535ac77bcebc", + "evidence": "status=PICKUP_IN_PROGRESS", + "checkedAt": "2026-08-08T07:30:08.076Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "到仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/arrive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "114c138c-1742-49fa-be84-e8ce8263c2f2, 8240d9f1-d62a-4a3c-ad68-1e122780cdf0", + "traceId": "476bfce4bf8e4508bc1c0c28ccd1e268", + "evidence": "", + "checkedAt": "2026-08-08T07:30:08.108Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "到仓 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/arrive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "114c138c-1742-49fa-be84-e8ce8263c2f2, 8240d9f1-d62a-4a3c-ad68-1e122780cdf0", + "traceId": "476bfce4bf8e4508bc1c0c28ccd1e268", + "evidence": "status=ARRIVED_WAREHOUSE", + "checkedAt": "2026-08-08T07:30:08.108Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始装货", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/load" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bcb4b2a2-2cd2-46ab-a249-f31b137db625, e1ede4d7-d6e0-4d92-bfd4-850315dde751", + "traceId": "8c5b193d60454fefa5ae9911ef2a6f6f", + "evidence": "", + "checkedAt": "2026-08-08T07:30:08.137Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始装货 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/load" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bcb4b2a2-2cd2-46ab-a249-f31b137db625, e1ede4d7-d6e0-4d92-bfd4-850315dde751", + "traceId": "8c5b193d60454fefa5ae9911ef2a6f6f", + "evidence": "status=LOADING", + "checkedAt": "2026-08-08T07:30:08.137Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "离场", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/depart" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6a40f047-8dc5-48dd-9929-905bd0b2f08a, 2b9731fc-c691-4811-8c5e-f7004c8ad09f", + "traceId": "bbdabef2c2ee402c8a925b093ac6e010", + "evidence": "", + "checkedAt": "2026-08-08T07:30:08.168Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "离场 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/depart" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6a40f047-8dc5-48dd-9929-905bd0b2f08a, 2b9731fc-c691-4811-8c5e-f7004c8ad09f", + "traceId": "bbdabef2c2ee402c8a925b093ac6e010", + "evidence": "status=DEPARTED", + "checkedAt": "2026-08-08T07:30:08.168Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "完成", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/complete" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2f584eaf-2d9c-4fbb-8119-7199abb0974e, 35d9432d-3189-4180-a32b-4fe92a228d35", + "traceId": "ddf89059b0484ac7a42e2e183337e814", + "evidence": "", + "checkedAt": "2026-08-08T07:30:08.199Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "完成 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991931891462145/complete" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2f584eaf-2d9c-4fbb-8119-7199abb0974e, 35d9432d-3189-4180-a32b-4fe92a228d35", + "traceId": "ddf89059b0484ac7a42e2e183337e814", + "evidence": "status=COMPLETED", + "checkedAt": "2026-08-08T07:30:08.199Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "回查 COMPLETED 拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991931891462145" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ff037cc3-24cb-4bf9-b038-dd00cbcae4f5, a1ad6a89-bfbf-459a-8445-d6f2f13565a3", + "traceId": "1abebe42763f4b0aa20baf41b6310a63", + "evidence": "", + "checkedAt": "2026-08-08T07:30:08.225Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约状态终态和费用快照正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991931891462145" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ff037cc3-24cb-4bf9-b038-dd00cbcae4f5, a1ad6a89-bfbf-459a-8445-d6f2f13565a3", + "traceId": "1abebe42763f4b0aa20baf41b6310a63", + "evidence": "status=COMPLETED", + "checkedAt": "2026-08-08T07:30:08.225Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "创建关联海运订舱的拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c69bf3d1-1f7d-4a7c-be81-6397726ebbef, 323f33ac-20d5-4701-abde-05c56824172e", + "traceId": "4fb57aa026ed4d1c912874f2a8efe39a", + "evidence": "oceanBookingId=2085991928569573377", + "checkedAt": "2026-08-08T07:30:08.261Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "拖车预约关联订舱 ID、版本和审计字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c69bf3d1-1f7d-4a7c-be81-6397726ebbef, 323f33ac-20d5-4701-abde-05c56824172e", + "traceId": "4fb57aa026ed4d1c912874f2a8efe39a", + "evidence": "appointmentId=2085991933460131841, oceanBookingId=2085991928569573377, version=0", + "checkedAt": "2026-08-08T07:30:08.261Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "取消跨服务链路拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991933460131841/cancel" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9087c4f0-f08a-4894-b183-d7cdfb1fa347, 6ed0023f-7494-4f83-b5a7-6be25b3980da", + "traceId": "c20a07f9a2f243ae8f5965bc1555b9f3", + "evidence": "", + "checkedAt": "2026-08-08T07:30:08.285Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "跨服务链路安全终态为 CANCELLED", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085991933460131841/cancel" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9087c4f0-f08a-4894-b183-d7cdfb1fa347, 6ed0023f-7494-4f83-b5a7-6be25b3980da", + "traceId": "c20a07f9a2f243ae8f5965bc1555b9f3", + "evidence": "status=CANCELLED", + "checkedAt": "2026-08-08T07:30:08.285Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "回查跨服务链路审计历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085991933460131841" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2068be30-30c3-4453-a5cd-ebc0ad1c3312, 1d27fd4a-77c9-4819-9149-f31ed3cb9d17", + "traceId": "6e24b52d35fb4aabbf20606b11b0f073", + "evidence": "", + "checkedAt": "2026-08-08T07:30:08.318Z" + } + ] +} diff --git a/reports/admin-test-env-acceptance-xlsx-final-20260808.json b/reports/admin-test-env-acceptance-xlsx-final-20260808.json new file mode 100644 index 000000000..0bc184456 --- /dev/null +++ b/reports/admin-test-env-acceptance-xlsx-final-20260808.json @@ -0,0 +1,9964 @@ +{ + "reportName": "后台管理测试环境 HTTP API 验收", + "marker": "ADMIN-API-20260808075633661", + "gateway": "http://8.163.30.128:9000", + "generatedAt": "2026-08-08T07:57:02.937Z", + "startedAt": "2026-08-08T07:56:33.661Z", + "success": false, + "fatal": null, + "summary": { + "total": 533, + "passed": 529, + "failed": 4 + }, + "modules": [ + { + "name": "customers", + "startedAt": "2026-08-08T07:56:34.028Z", + "finishedAt": "2026-08-08T07:56:34.960Z", + "success": true, + "passed": 38, + "failed": 0, + "fatal": null + }, + { + "name": "overseas-storage-fees", + "startedAt": "2026-08-08T07:56:34.961Z", + "finishedAt": "2026-08-08T07:56:36.046Z", + "success": true, + "passed": 29, + "failed": 0, + "fatal": null + }, + { + "name": "system", + "startedAt": "2026-08-08T07:56:36.047Z", + "finishedAt": "2026-08-08T07:56:38.494Z", + "success": true, + "passed": 41, + "failed": 0, + "fatal": null + }, + { + "name": "master-data", + "startedAt": "2026-08-08T07:56:38.496Z", + "finishedAt": "2026-08-08T07:56:39.876Z", + "success": true, + "passed": 57, + "failed": 0, + "fatal": null + }, + { + "name": "orders", + "startedAt": "2026-08-08T07:56:39.878Z", + "finishedAt": "2026-08-08T07:56:43.209Z", + "success": true, + "passed": 49, + "failed": 0, + "fatal": null + }, + { + "name": "pricing", + "startedAt": "2026-08-08T07:56:43.212Z", + "finishedAt": "2026-08-08T07:56:46.841Z", + "success": true, + "passed": 26, + "failed": 0, + "fatal": null + }, + { + "name": "downloads", + "startedAt": "2026-08-08T07:56:46.842Z", + "finishedAt": "2026-08-08T07:56:51.056Z", + "success": true, + "passed": 8, + "failed": 0, + "fatal": null + }, + { + "name": "inbound-weight-ocr", + "startedAt": "2026-08-08T07:56:51.057Z", + "finishedAt": "2026-08-08T07:56:56.543Z", + "success": true, + "passed": 52, + "failed": 0, + "fatal": null + }, + { + "name": "orders-inbound-measurement-fixture", + "startedAt": "2026-08-08T07:56:56.543Z", + "finishedAt": "2026-08-08T07:56:58.827Z", + "success": true, + "passed": 49, + "failed": 0, + "fatal": null + }, + { + "name": "inbound-measurement", + "startedAt": "2026-08-08T07:56:58.829Z", + "finishedAt": "2026-08-08T07:56:59.650Z", + "success": true, + "passed": 28, + "failed": 0, + "fatal": null + }, + { + "name": "supplemental", + "startedAt": "2026-08-08T07:56:59.652Z", + "finishedAt": "2026-08-08T07:57:01.035Z", + "success": true, + "passed": 74, + "failed": 0, + "fatal": null + }, + { + "name": "supplemental-boundaries", + "startedAt": "2026-08-08T07:57:01.036Z", + "finishedAt": "2026-08-08T07:57:01.506Z", + "success": false, + "passed": 14, + "failed": 4, + "fatal": null + }, + { + "name": "ocean-bookings", + "startedAt": "2026-08-08T07:57:01.508Z", + "finishedAt": "2026-08-08T07:57:02.157Z", + "success": true, + "passed": 23, + "failed": 0, + "fatal": null + }, + { + "name": "truck-appointments", + "startedAt": "2026-08-08T07:57:02.159Z", + "finishedAt": "2026-08-08T07:57:02.843Z", + "success": true, + "passed": 35, + "failed": 0, + "fatal": null + }, + { + "name": "service-center-flow", + "startedAt": "2026-08-08T07:57:02.844Z", + "finishedAt": "2026-08-08T07:57:02.936Z", + "success": true, + "passed": 5, + "failed": 0, + "fatal": null + } + ], + "scenarios": [ + { + "name": "customer-dimension-rules", + "module": "customers", + "success": true, + "deploymentBlocked": false, + "passed": 13, + "failed": 0 + }, + { + "name": "customer-overseas-storage-fee-lifecycle", + "module": "overseas-storage-fees", + "success": true, + "deploymentBlocked": false, + "passed": 29, + "failed": 0 + }, + { + "name": "price-book-lifecycle", + "module": "pricing", + "success": true, + "deploymentBlocked": false, + "passed": 26, + "failed": 0 + }, + { + "name": "weight-image-recognition-and-confirmation", + "module": "inbound-weight-ocr", + "success": true, + "deploymentBlocked": false, + "passed": 52, + "failed": 0 + }, + { + "name": "mojia-carton-measurement", + "module": "inbound-measurement", + "success": true, + "deploymentBlocked": false, + "passed": 28, + "failed": 0 + }, + { + "name": "admin-boundary-automation", + "module": "supplemental-boundaries", + "success": false, + "deploymentBlocked": false, + "passed": 14, + "failed": 4 + } + ], + "deploymentBlockers": [], + "coverageGaps": [ + { + "module": "master-data", + "scenario": "optimistic-lock", + "name": "仓库/托盘/快递/往来单位旧 version 冲突", + "reason": "真实 DTO 未声明 version/expectedVersion 字段,不能伪造并发冲突断言;库位版本已由 supplemental-boundaries 覆盖", + "category": "contract-gap" + }, + { + "module": "supplemental-boundaries", + "scenario": "resource-occupancy", + "name": "托盘/库位真实占用删除保护", + "reason": "当前公共验收 API 未提供可安全构造并释放占用关联的独立 fixture;未操作历史资源", + "category": "no-public-fixture-api" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "附件引用安全边界", + "reason": "当前 Controller 无附件上传/引用 API,未伪造附件成功", + "category": "no-public-fixture-api" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "拖车预约状态历史独立查询", + "reason": "当前拖车预约 Controller 仅提供详情实体,没有公开 histories 查询字段/端点;已验证详情中的关联 ID、版本和审计时间字段", + "category": "no-public-history-api" + } + ], + "createdResources": { + "customer": { + "tenantId": "2085998584918560769", + "marker": "ADMIN-API-20260808075633661", + "contactPhone": "16175794028" + }, + "overseasStorageFeeCustomer": { + "tenantId": "2085998588827652098", + "marker": "ADMIN-API-20260808075633661", + "ownedByModule": true + }, + "systemPermission": { + "id": "2085998593445580801", + "code": "platform:acceptance:808075633661" + }, + "systemRole": { + "id": "2085998593953091585", + "code": "ADMIN_ACCEPT_808075633661", + "finalStatus": "DISABLED", + "retainedBecauseAssigned": true + }, + "systemUser": { + "membershipId": "2085998595035222019", + "username": "admin_accept_808075633661", + "finalStatus": "DISABLED" + }, + "warehouse": { + "id": "2085998603664408577", + "code": "AW808075633661", + "finalStatus": "INACTIVE" + }, + "location": { + "id": "2085998604188696577", + "warehouseId": "2085998603664408577", + "deleted": false + }, + "pallet": { + "id": "2085998604977225729", + "warehouseId": "2085998603664408577", + "deleted": true + }, + "expressCompany": { + "id": "2085998605623148545", + "code": "EX808075633661", + "finalStatus": "INACTIVE" + }, + "partner": { + "id": "2085998606222934017", + "code": "PT808075633661", + "finalStatus": "INACTIVE" + }, + "orders": { + "marker": "ADMIN-API-20260808075633661", + "tenantId": "10001", + "orderId": "2085998611985399810", + "productImageFileId": "2085998611628883970", + "boxTypes": [ + "SMALL", + "MEDIUM", + "LARGE", + "EXTRA_LARGE" + ], + "inboundId": "2085998620770349059", + "orderNo": "FL2085998611985399810", + "inboundCode": "RK-2085998611985399810", + "processStatus": "WAIT_MEASURE", + "taskId": "2085998620770349058" + }, + "ocrInbound": { + "tenantId": "10001", + "inboundId": "2085998620770349059", + "marker": "ADMIN-API-20260808075633661" + }, + "testInbound": { + "tenantId": "10001", + "inboundId": "2085998620770349059", + "marker": "ADMIN-API-20260808075633661" + }, + "priceBookVersion": { + "versionId": "2085998623572144130", + "marker": "ADMIN-API-20260808075633661", + "sourceSha256": "3170fd3aa8795cd816ca9600f87a6a2a06b15d0cf6042d4592f33d4b30c7b8ab" + }, + "exportTask": { + "id": "2085998638505984001" + }, + "inboundWeightOcr": { + "tenantId": "10001", + "inboundId": "2085998620770349059", + "resultIds": [ + "2085998668526694402", + "2085998677380870146" + ], + "cleaned": true + }, + "orchestrationFixtures": { + "inboundMeasurement": { + "marker": "ADMIN-API-20260808075633661-MOJIA", + "tenantId": "10001", + "orderId": "2085998681711509506", + "inboundId": "2085998683798155266" + } + }, + "inboundMeasurement": { + "marker": "ADMIN-API-20260808075633661-MOJIA", + "tenantId": "10001", + "inboundId": "2085998683798155266", + "measurementId": "2085998690563567618", + "boxCode": "RK-2085998681711509506#4-1", + "finalStatus": "APPROVED" + }, + "oceanBooking": { + "id": "2085998700864778242", + "marker": "ADMIN-API-20260808075633661", + "finalStatus": "RELEASED" + }, + "truckAppointment": { + "id": "2085998704065032193", + "marker": "ADMIN-API-20260808075633661", + "finalStatus": "CANCELLED" + }, + "serviceCenterFlow": { + "appointmentId": "2085998705608536065", + "oceanBookingId": "2085998700864778242", + "marker": "ADMIN-API-20260808075633661", + "finalStatus": "CANCELLED" + } + }, + "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": "e20b6820-f01b-4141-a668-081e870110c0, 03fc4bc7-c89f-4fe9-9045-741e67812ab2", + "traceId": "40418b0c93dd403dacedb1676c4f758a", + "evidence": "", + "checkedAt": "2026-08-08T07:56:34.028Z" + }, + { + "module": "customers", + "scenario": null, + "name": "检查测试联系电话可用性", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/contact-phone-availability?contactPhone=16175794028" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b50402ab-0ffe-4fef-b09a-0975107c21c3, 46ccb30d-baae-4b51-969a-8bac80f4f4b6", + "traceId": "e4d65378c202424f9725b845e7ad23ab", + "evidence": "attempt=1", + "checkedAt": "2026-08-08T07:56:34.072Z" + }, + { + "module": "customers", + "scenario": null, + "name": "创建客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c72d1ea2-e32c-4b14-a312-7bd6beefa9f3, 9384052d-9ea8-421f-85ab-da13a59a65db", + "traceId": "00f16f6883cc43888ff98d800670d86e", + "evidence": "", + "checkedAt": "2026-08-08T07:56:34.441Z" + }, + { + "module": "customers", + "scenario": null, + "name": "创建响应客户字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c72d1ea2-e32c-4b14-a312-7bd6beefa9f3, 9384052d-9ea8-421f-85ab-da13a59a65db", + "traceId": "00f16f6883cc43888ff98d800670d86e", + "evidence": "missing=none", + "checkedAt": "2026-08-08T07:56:34.441Z" + }, + { + "module": "customers", + "scenario": null, + "name": "新客户基础字段正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c72d1ea2-e32c-4b14-a312-7bd6beefa9f3, 9384052d-9ea8-421f-85ab-da13a59a65db", + "traceId": "00f16f6883cc43888ff98d800670d86e", + "evidence": "tenantId=2085998584918560769, status=PROFILE_REQUIRED", + "checkedAt": "2026-08-08T07:56:34.441Z" + }, + { + "module": "customers", + "scenario": "customer-owner-provisioning", + "name": "创建客户生成初始密码", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c72d1ea2-e32c-4b14-a312-7bd6beefa9f3, 9384052d-9ea8-421f-85ab-da13a59a65db", + "traceId": "00f16f6883cc43888ff98d800670d86e", + "evidence": "generated=true, length=16", + "checkedAt": "2026-08-08T07:56:34.441Z" + }, + { + "module": "customers", + "scenario": "customer-owner-provisioning", + "name": "管理员用户名默认使用联系电话", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c72d1ea2-e32c-4b14-a312-7bd6beefa9f3, 9384052d-9ea8-421f-85ab-da13a59a65db", + "traceId": "00f16f6883cc43888ff98d800670d86e", + "evidence": "matches=true", + "checkedAt": "2026-08-08T07:56:34.441Z" + }, + { + "module": "customers", + "scenario": null, + "name": "待完善客户的审核字段保持为空", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c72d1ea2-e32c-4b14-a312-7bd6beefa9f3, 9384052d-9ea8-421f-85ab-da13a59a65db", + "traceId": "00f16f6883cc43888ff98d800670d86e", + "evidence": "creditCode=omitted, approvedAt=omitted", + "checkedAt": "2026-08-08T07:56:34.441Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "新客户尺寸规则可查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d8f2fb63-0e77-4710-9008-aa1bd285b822, dffc245a-b55c-462b-b1b6-227de6778a7c", + "traceId": "e6d5d7facb264b65993ac66c3053682c", + "evidence": "tenantId=2085998584918560769", + "checkedAt": "2026-08-08T07:56:34.469Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "固定四箱规顺序完整且无重复", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d8f2fb63-0e77-4710-9008-aa1bd285b822, dffc245a-b55c-462b-b1b6-227de6778a7c", + "traceId": "e6d5d7facb264b65993ac66c3053682c", + "evidence": "count=4, order=SMALL,MEDIUM,LARGE,EXTRA_LARGE", + "checkedAt": "2026-08-08T07:56:34.469Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "四箱规默认内径、加边和备注正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d8f2fb63-0e77-4710-9008-aa1bd285b822, dffc245a-b55c-462b-b1b6-227de6778a7c", + "traceId": "e6d5d7facb264b65993ac66c3053682c", + "evidence": "defaults=matched", + "checkedAt": "2026-08-08T07:56:34.469Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "客户 ID、规则 ID 为字符串且初始版本为0", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d8f2fb63-0e77-4710-9008-aa1bd285b822, dffc245a-b55c-462b-b1b6-227de6778a7c", + "traceId": "e6d5d7facb264b65993ac66c3053682c", + "evidence": "groupTenantIdType=string, rows=string/v0,string/v0,string/v0,string/v0", + "checkedAt": "2026-08-08T07:56:34.469Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "默认规则外径与 HALF_UP 三位 CBM 正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d8f2fb63-0e77-4710-9008-aa1bd285b822, dffc245a-b55c-462b-b1b6-227de6778a7c", + "traceId": "e6d5d7facb264b65993ac66c3053682c", + "evidence": "derivedRows=4", + "checkedAt": "2026-08-08T07:56:34.469Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "PUT 每行只发送约定7字段并整组保存", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d8f2fb63-0e77-4710-9008-aa1bd285b822, dffc245a-b55c-462b-b1b6-227de6778a7c", + "traceId": "e6d5d7facb264b65993ac66c3053682c", + "evidence": "fields=boxType,innerLengthCm,innerWidthCm,innerHeightCm,edgeAdditionCm,remark,version", + "checkedAt": "2026-08-08T07:56:34.469Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "一次 PUT 保存四条三位小数规则", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "31647b4f-ae74-460e-9685-0a6066726ddb, 0d0bf482-b67d-42c0-8266-ceff193d4f1a", + "traceId": "856644ce4525420f843aee26a73acc83", + "evidence": "rows=4", + "checkedAt": "2026-08-08T07:56:34.506Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "修改后四行版本+1且派生外径/CBM正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "31647b4f-ae74-460e-9685-0a6066726ddb, 0d0bf482-b67d-42c0-8266-ceff193d4f1a", + "traceId": "856644ce4525420f843aee26a73acc83", + "evidence": "versions=1,1,1,1", + "checkedAt": "2026-08-08T07:56:34.506Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "旧 version 重放 PUT 返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085998584918560769" + }, + "http": 200, + "code": "A0409", + "message": "箱规尺寸配置已被修改,请刷新后重试", + "requestId": "e07bc573-d4e9-492a-bf90-b9f0df307c21", + "traceId": "5c1a8238f1a2420ab6a35533194474af", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:56:34.531Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "冲突后重新查询四条规则", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "506c4bfd-2fa9-4ba6-9ead-3b1bed617b1d, f11d6c77-8473-4993-aaaa-446c1b608c26", + "traceId": "93e28c5e6fcc40f49abacbe09f16f60d", + "evidence": "", + "checkedAt": "2026-08-08T07:56:34.559Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "冲突请求未造成四行部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "506c4bfd-2fa9-4ba6-9ead-3b1bed617b1d, f11d6c77-8473-4993-aaaa-446c1b608c26", + "traceId": "93e28c5e6fcc40f49abacbe09f16f60d", + "evidence": "unchangedRows=4", + "checkedAt": "2026-08-08T07:56:34.560Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "恢复本轮修改前的四箱规配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "421eda5f-4c48-4fbf-939e-7e6dc7b49c8f, 6f28d94b-f7b5-43a0-9c37-81ce7e985817", + "traceId": "89354cc91a5f45c4838ae3dc01b587b2", + "evidence": "restore=original-values", + "checkedAt": "2026-08-08T07:56:34.597Z" + }, + { + "module": "customers", + "scenario": "customer-dimension-rules", + "name": "尺寸规则恢复后回显与初始值一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/customer-dimension-config?tenantId=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "421eda5f-4c48-4fbf-939e-7e6dc7b49c8f, 6f28d94b-f7b5-43a0-9c37-81ce7e985817", + "traceId": "89354cc91a5f45c4838ae3dc01b587b2", + "evidence": "restoredRows=4", + "checkedAt": "2026-08-08T07:56:34.597Z" + }, + { + "module": "customers", + "scenario": null, + "name": "查询客户列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants?page=1&size=20&keyword=%E5%90%8E%E5%8F%B0%E5%AE%A2%E6%88%B7%E9%AA%8C%E6%94%B6-808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9e0d1e94-bc8d-458c-969a-e5b118f48707, 50e5919c-fab8-44a0-b56c-ee68a16d8ac0", + "traceId": "4703ad771c914221b60acba2e238c0bf", + "evidence": "", + "checkedAt": "2026-08-08T07:56:34.627Z" + }, + { + "module": "customers", + "scenario": null, + "name": "列表包含新客户且字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants?page=1&size=20&keyword=%E5%90%8E%E5%8F%B0%E5%AE%A2%E6%88%B7%E9%AA%8C%E6%94%B6-808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9e0d1e94-bc8d-458c-969a-e5b118f48707, 50e5919c-fab8-44a0-b56c-ee68a16d8ac0", + "traceId": "4703ad771c914221b60acba2e238c0bf", + "evidence": "found=true, missing=none", + "checkedAt": "2026-08-08T07:56:34.627Z" + }, + { + "module": "customers", + "scenario": null, + "name": "查询客户详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6d8c7b69-312d-4e04-8365-5698cdc66d99, 19e2daee-a1db-4d84-ab65-4fc6348f447a", + "traceId": "cf125e02f7054e9f877fc4e9a286b288", + "evidence": "", + "checkedAt": "2026-08-08T07:56:34.653Z" + }, + { + "module": "customers", + "scenario": null, + "name": "客户详情基本信息正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6d8c7b69-312d-4e04-8365-5698cdc66d99, 19e2daee-a1db-4d84-ab65-4fc6348f447a", + "traceId": "cf125e02f7054e9f877fc4e9a286b288", + "evidence": "tenantId=2085998584918560769", + "checkedAt": "2026-08-08T07:56:34.653Z" + }, + { + "module": "customers", + "scenario": null, + "name": "编辑客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e08779db-097c-4c63-ab88-7f85d10f74ef, aadb5ae5-9edb-4ce4-a336-5453079052fc", + "traceId": "0342f99879d24251814019e80941680f", + "evidence": "", + "checkedAt": "2026-08-08T07:56:34.692Z" + }, + { + "module": "customers", + "scenario": null, + "name": "客户编辑正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e08779db-097c-4c63-ab88-7f85d10f74ef, aadb5ae5-9edb-4ce4-a336-5453079052fc", + "traceId": "0342f99879d24251814019e80941680f", + "evidence": "tenantId=2085998584918560769", + "checkedAt": "2026-08-08T07:56:34.692Z" + }, + { + "module": "customers", + "scenario": null, + "name": "回查客户编辑结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c7cb719c-5547-4c51-a898-6426b0ac060f, caa7157e-e20d-4c8d-924b-9033ebcfe83f", + "traceId": "7c6c7bd2e68c40fa9013d77376edf7b3", + "evidence": "", + "checkedAt": "2026-08-08T07:56:34.716Z" + }, + { + "module": "customers", + "scenario": null, + "name": "客户编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c7cb719c-5547-4c51-a898-6426b0ac060f, caa7157e-e20d-4c8d-924b-9033ebcfe83f", + "traceId": "7c6c7bd2e68c40fa9013d77376edf7b3", + "evidence": "tenantId=2085998584918560769", + "checkedAt": "2026-08-08T07:56:34.716Z" + }, + { + "module": "customers", + "scenario": null, + "name": "业务概况查询资质", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998584918560769/qualifications" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "30b35507-77fb-4f50-b365-72f84e100794, 2ada2ce8-d6e7-4c7c-a2a8-e8c973f4ff2a", + "traceId": "1b58659454cc4af684cbaca0520a0e34", + "evidence": "", + "checkedAt": "2026-08-08T07:56:34.749Z" + }, + { + "module": "customers", + "scenario": null, + "name": "资质概况结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998584918560769/qualifications" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "30b35507-77fb-4f50-b365-72f84e100794, 2ada2ce8-d6e7-4c7c-a2a8-e8c973f4ff2a", + "traceId": "1b58659454cc4af684cbaca0520a0e34", + "evidence": "count=0", + "checkedAt": "2026-08-08T07:56:34.749Z" + }, + { + "module": "customers", + "scenario": null, + "name": "业务概况查询成员", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998584918560769/members" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f8d62fde-5e97-4094-88f4-1da6f8421d5d, b8342093-914e-44ea-ac7c-24397ef4e1cb", + "traceId": "449241aa79524c458e0926ed0f9254b9", + "evidence": "", + "checkedAt": "2026-08-08T07:56:34.786Z" + }, + { + "module": "customers", + "scenario": "customer-owner-provisioning", + "name": "联系电话账号是企业管理员", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998584918560769/members" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f8d62fde-5e97-4094-88f4-1da6f8421d5d, b8342093-914e-44ea-ac7c-24397ef4e1cb", + "traceId": "449241aa79524c458e0926ed0f9254b9", + "evidence": "ownerFound=true, matches=true", + "checkedAt": "2026-08-08T07:56:34.786Z" + }, + { + "module": "customers", + "scenario": null, + "name": "业务概况查询运单数量", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/tenant-counts?tenantIds=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e4a5d27a-a5ee-4beb-9233-5813caaf99c7, dd114012-5874-44fc-9e49-8265d82a005e", + "traceId": "62c01939c98742fda4934c68599e16c0", + "evidence": "", + "checkedAt": "2026-08-08T07:56:34.811Z" + }, + { + "module": "customers", + "scenario": null, + "name": "业务概况返回当前客户运单数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/tenant-counts?tenantIds=2085998584918560769" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e4a5d27a-a5ee-4beb-9233-5813caaf99c7, dd114012-5874-44fc-9e49-8265d82a005e", + "traceId": "62c01939c98742fda4934c68599e16c0", + "evidence": "orderCount=0", + "checkedAt": "2026-08-08T07:56:34.811Z" + }, + { + "module": "customers", + "scenario": null, + "name": "查询客户运单记录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=2085998584918560769&page=1&size=10" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ebd2e14a-c97e-429e-b3c6-91216bdcb368, 8f6e4967-2328-4d17-abdd-7648ba3e3701", + "traceId": "96c24f1bbf6b4bdda95037c2fbff991f", + "evidence": "", + "checkedAt": "2026-08-08T07:56:34.843Z" + }, + { + "module": "customers", + "scenario": null, + "name": "运单记录分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=2085998584918560769&page=1&size=10" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ebd2e14a-c97e-429e-b3c6-91216bdcb368, 8f6e4967-2328-4d17-abdd-7648ba3e3701", + "traceId": "96c24f1bbf6b4bdda95037c2fbff991f", + "evidence": "records=0, total=0", + "checkedAt": "2026-08-08T07:56:34.843Z" + }, + { + "module": "customers", + "scenario": "customer-draft-archive", + "name": "归档测试客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants/2085998584918560769/archive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "29283ebd-630c-4dfc-9eb1-dae315d1e290, 639acd99-ac92-4930-bef6-d4bc57560f92", + "traceId": "f7751b69848d41938410001603a3adde", + "evidence": "tenantId=2085998584918560769", + "checkedAt": "2026-08-08T07:56:34.960Z" + }, + { + "module": "customers", + "scenario": "customer-draft-archive", + "name": "测试客户归档后处于停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants/2085998584918560769/archive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "29283ebd-630c-4dfc-9eb1-dae315d1e290, 639acd99-ac92-4930-bef6-d4bc57560f92", + "traceId": "f7751b69848d41938410001603a3adde", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:56:34.960Z" + }, + { + "module": "overseas-storage-fees", + "scenario": null, + "name": "检查测试联系电话可用性", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/contact-phone-availability?contactPhone=16175794962" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b26aad70-a3f5-4f37-93b1-597dc8b61012, df4db0c8-9ed5-42e5-a114-2ac57462b7e8", + "traceId": "6f8f32ce2d6f4aaf9ee16b266d76d82f", + "evidence": "attempt=1", + "checkedAt": "2026-08-08T07:56:35.001Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "创建海外仓费用隔离客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "79d39739-ae8a-42af-b9b9-0d56fbbadc43, 2e794525-3d15-479f-b30b-6ab622958199", + "traceId": "fb137e1d5b04450c8a871c54d3f13375", + "evidence": "", + "checkedAt": "2026-08-08T07:56:35.372Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "海外仓费用隔离客户创建并带 marker", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "79d39739-ae8a-42af-b9b9-0d56fbbadc43, 2e794525-3d15-479f-b30b-6ab622958199", + "traceId": "fb137e1d5b04450c8a871c54d3f13375", + "evidence": "tenantId=2085998588827652098", + "checkedAt": "2026-08-08T07:56:35.372Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "查询客户海外仓费用配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e668f130-f225-4939-8d18-36ebc2f8d8c4, ec77652b-a5c5-459c-9487-7071a4f3d5dd", + "traceId": "12239455a5ed4358b995882d85f8c710", + "evidence": "tenantId=2085998588827652098", + "checkedAt": "2026-08-08T07:56:35.405Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "客户费用配置身份、默认 USD 与9档结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e668f130-f225-4939-8d18-36ebc2f8d8c4, ec77652b-a5c5-459c-9487-7071a4f3d5dd", + "traceId": "12239455a5ed4358b995882d85f8c710", + "evidence": "ruleId=2085998588900458498, customerId=2085998588827652098, currency=USD, tiers=9", + "checkedAt": "2026-08-08T07:56:35.405Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "按客户查询海外仓费用规则", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/overseas-storage-fees?page=1&size=10&customerId=2085998588827652098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cc57f9ec-1f5b-4f50-93ec-13572080c6e7, 184b331c-7610-4ab2-aad1-c166c7c60ecd", + "traceId": "6ee9230c0196407c8465bf4da00bc5a3", + "evidence": "tenantId=2085998588827652098", + "checkedAt": "2026-08-08T07:56:35.432Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "每个客户恰好一条规则且规则内恰好9档", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/overseas-storage-fees?page=1&size=10&customerId=2085998588827652098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cc57f9ec-1f5b-4f50-93ec-13572080c6e7, 184b331c-7610-4ab2-aad1-c166c7c60ecd", + "traceId": "6ee9230c0196407c8465bf4da00bc5a3", + "evidence": "total=1, records=1, tiers=9", + "checkedAt": "2026-08-08T07:56:35.432Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "请求体客户 ID 与路径不一致时安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "客户ID与路径不一致", + "requestId": "b6700cb1-919c-4328-9299-6fddf865c510", + "traceId": "4c441e297be14137ad758f378ea18c2b", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:56:35.463Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "非法费用类型安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "客户费用必须包含仓租5档和退货仓储费4档", + "requestId": "f295f5a2-5055-41f9-a4ac-8500afc4d5ff", + "traceId": "fba26d02adc341aaa067b0cccfbe607e", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:56:35.493Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "费用类型与计费单位不匹配安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "费用类型和计费单位不匹配", + "requestId": "30e9c890-75db-4695-ae92-91f6f0327f1f", + "traceId": "2c38c5a7df57443c85f34932a389c409", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:56:35.530Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "阶梯区间重叠安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "阶梯必须从第1天开始且连续", + "requestId": "e56a22a5-e5d2-4447-9717-dedc58d04503", + "traceId": "55b5c1fddc1e4a9284e1c32d9909c0da", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:56:35.559Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "阶梯区间断档安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "阶梯必须从第1天开始且连续", + "requestId": "2485ed07-64f1-4de0-ba0d-7b28fd36e59f", + "traceId": "8a9b522bcee24ee8880dad2be4c7e670", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:56:35.592Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "非9档整组提交安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "A0422", + "message": "客户费用必须包含仓租5档和退货仓储费4档", + "requestId": "b0764d3d-8570-4ff9-9171-3caf64cb8f84", + "traceId": "70807655a8514a3da919827c08e8a09a", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:56:35.610Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "负向请求后回查客户费用配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "217a3941-892a-4952-af50-7b328ccf0675, 5187c82e-7d81-4284-9e41-2c42c3c2d4e3", + "traceId": "9ee08339b96b449eba847266b740c6b4", + "evidence": "", + "checkedAt": "2026-08-08T07:56:35.632Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "所有非法整组请求均未造成部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "217a3941-892a-4952-af50-7b328ccf0675, 5187c82e-7d81-4284-9e41-2c42c3c2d4e3", + "traceId": "9ee08339b96b449eba847266b740c6b4", + "evidence": "version=0, tiers=9", + "checkedAt": "2026-08-08T07:56:35.632Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "整组修改客户海外仓费用", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3452f7eb-e80c-463f-b7ca-b78ea800980a, d3b2192a-6f24-4318-b291-aadda82d7ac9", + "traceId": "e90b93c25e7a4c7ab7aea1ae098342e2", + "evidence": "tenantId=2085998588827652098, tiers=9", + "checkedAt": "2026-08-08T07:56:35.678Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "回查整组修改后的客户费用", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5669efa3-02d9-4037-a126-b60d4a5ec824, b6363523-1396-4cff-9756-04389dc8e11d", + "traceId": "6b403d91de46440d98884f9e7da7a5f8", + "evidence": "", + "checkedAt": "2026-08-08T07:56:35.746Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "修改后币种、价格、9档及版本整体回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5669efa3-02d9-4037-a126-b60d4a5ec824, b6363523-1396-4cff-9756-04389dc8e11d", + "traceId": "6b403d91de46440d98884f9e7da7a5f8", + "evidence": "currency=EUR, version=1, tiers=9", + "checkedAt": "2026-08-08T07:56:35.746Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "编辑后再次按客户查询唯一规则", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/overseas-storage-fees?page=1&size=10&customerId=2085998588827652098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e09f4134-da20-4a98-9c39-e80a7a7639e0, 874ba62e-e80f-431b-9a28-6efa6cc5f54b", + "traceId": "adc68b43d26542c79145b08a3ed69cf4", + "evidence": "", + "checkedAt": "2026-08-08T07:56:35.775Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "重复初始化结果保持幂等且编辑值未被覆盖", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/overseas-storage-fees?page=1&size=10&customerId=2085998588827652098" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e09f4134-da20-4a98-9c39-e80a7a7639e0, 874ba62e-e80f-431b-9a28-6efa6cc5f54b", + "traceId": "adc68b43d26542c79145b08a3ed69cf4", + "evidence": "total=1, ruleId=2085998588900458498, version=1", + "checkedAt": "2026-08-08T07:56:35.776Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "旧 version 整组保存返回并发冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "A0409", + "message": "费用配置已被修改,请刷新后重试", + "requestId": "71b76b8a-5245-4a1e-8f56-5abd65dd50d2", + "traceId": "f9e91dbf794d40db8d3b4d9c5ffc6f51", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:56:35.799Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "冲突后回查费用配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "57317ce9-b454-4702-bfd9-ba7bbcca5148, a2ce02f4-6289-4cd9-acdd-7bf670c98998", + "traceId": "9d1a1d601ec54c12a51d795f6d9212aa", + "evidence": "", + "checkedAt": "2026-08-08T07:56:35.821Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "冲突未造成部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "57317ce9-b454-4702-bfd9-ba7bbcca5148, a2ce02f4-6289-4cd9-acdd-7bf670c98998", + "traceId": "9d1a1d601ec54c12a51d795f6d9212aa", + "evidence": "version=1, unchanged=true", + "checkedAt": "2026-08-08T07:56:35.821Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "恢复本轮客户费用原始配置", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0bf23131-d29f-42b7-86b0-16cbda369c78, 18f01714-1ef1-43ca-ae76-50fdcebaa656", + "traceId": "9c19ffd7098b4c79b42a1a61d61c5f88", + "evidence": "restore=initial", + "checkedAt": "2026-08-08T07:56:35.888Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "回查恢复后的客户费用", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "10411712-ddd7-4a24-a61f-4695ade499e5, 70b90cf0-6bfc-4a75-8d4d-b09f349885fa", + "traceId": "c959cc5bf39347f6b0c0cdef2e18ef65", + "evidence": "", + "checkedAt": "2026-08-08T07:56:35.914Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "恢复后9档、USD、免费档和无上限档一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/overseas-storage-fees" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "10411712-ddd7-4a24-a61f-4695ade499e5, 70b90cf0-6bfc-4a75-8d4d-b09f349885fa", + "traceId": "c959cc5bf39347f6b0c0cdef2e18ef65", + "evidence": "currency=USD, version=2, tiers=9", + "checkedAt": "2026-08-08T07:56:35.914Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "错误客户 ID 查询安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/999999999999999999/overseas-storage-fees" + }, + "http": 200, + "code": "A0404", + "message": "海外仓费用不存在", + "requestId": "65013613-f85d-4623-85a4-c1db1cd9a2d5", + "traceId": "243fc3f4fb224a6b89f57c3e5f81d8b8", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:56:35.944Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "清理费用隔离客户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/archive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d014cda2-15a3-49d6-841f-25b4bbeb062c, 52810770-2b59-4126-b7f9-ccab272ce92b", + "traceId": "97473145a4fb4175bbe62a420c97cab6", + "evidence": "tenantId=2085998588827652098", + "checkedAt": "2026-08-08T07:56:36.046Z" + }, + { + "module": "overseas-storage-fees", + "scenario": "customer-overseas-storage-fee-lifecycle", + "name": "费用隔离客户清理后停用", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/tenants/2085998588827652098/archive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d014cda2-15a3-49d6-841f-25b4bbeb062c, 52810770-2b59-4126-b7f9-ccab272ce92b", + "traceId": "97473145a4fb4175bbe62a420c97cab6", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:56:36.046Z" + }, + { + "module": "system", + "scenario": null, + "name": "查询菜单权限资源", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9589b1f7-0719-44d2-93c5-16b41a5a5f12, 905e3bea-6522-4b23-9e3a-7ebae516a4e7", + "traceId": "b93cfbeab7ad48a29c2836ff4a9594df", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.096Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限资源返回数组", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9589b1f7-0719-44d2-93c5-16b41a5a5f12, 905e3bea-6522-4b23-9e3a-7ebae516a4e7", + "traceId": "b93cfbeab7ad48a29c2836ff4a9594df", + "evidence": "count=151", + "checkedAt": "2026-08-08T07:56:36.096Z" + }, + { + "module": "system", + "scenario": null, + "name": "创建自定义权限资源", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "794e0e7e-4c1c-4dc1-aed1-e91db3156ca4, d2e76fdb-0a23-4813-b887-c739cf16e0b2", + "traceId": "e36f199ece2145cda9dfdaba9524d54d", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.135Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限创建字段正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "794e0e7e-4c1c-4dc1-aed1-e91db3156ca4, d2e76fdb-0a23-4813-b887-c739cf16e0b2", + "traceId": "e36f199ece2145cda9dfdaba9524d54d", + "evidence": "permissionId=2085998593445580801", + "checkedAt": "2026-08-08T07:56:36.135Z" + }, + { + "module": "system", + "scenario": null, + "name": "编辑自定义权限资源", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085998593445580801" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bf68f53d-5ff1-4221-9d1f-f33a41e8410c, 3e74e162-bc67-431f-90ef-7503a02e7cf8", + "traceId": "227f6f07233a455e84b3757bf2a0b387", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.166Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限编辑正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085998593445580801" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bf68f53d-5ff1-4221-9d1f-f33a41e8410c, 3e74e162-bc67-431f-90ef-7503a02e7cf8", + "traceId": "227f6f07233a455e84b3757bf2a0b387", + "evidence": "permissionId=2085998593445580801", + "checkedAt": "2026-08-08T07:56:36.166Z" + }, + { + "module": "system", + "scenario": null, + "name": "停用自定义权限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085998593445580801/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "731fe607-34cd-4b71-a761-65db44c55638, 044191ae-8d9b-4559-858b-df6d107fb109", + "traceId": "ee8144b09bde4d0faf70fbd5925603e1", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.194Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限状态回显 DISABLED", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085998593445580801/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "731fe607-34cd-4b71-a761-65db44c55638, 044191ae-8d9b-4559-858b-df6d107fb109", + "traceId": "ee8144b09bde4d0faf70fbd5925603e1", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:56:36.194Z" + }, + { + "module": "system", + "scenario": null, + "name": "启用自定义权限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085998593445580801/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "365a144a-691d-4c04-b0c7-6917d0151ea0, 11f55335-0392-43eb-85ff-b65c5653a228", + "traceId": "8f59966330554e10a0fbd55b8dabd5a6", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.226Z" + }, + { + "module": "system", + "scenario": null, + "name": "权限状态回显 ACTIVE", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/permissions/2085998593445580801/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "365a144a-691d-4c04-b0c7-6917d0151ea0, 11f55335-0392-43eb-85ff-b65c5653a228", + "traceId": "8f59966330554e10a0fbd55b8dabd5a6", + "evidence": "status=ACTIVE", + "checkedAt": "2026-08-08T07:56:36.226Z" + }, + { + "module": "system", + "scenario": null, + "name": "创建平台自定义角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8fd80004-61e5-4f4c-867e-707f435fda3a, b4cac696-78ad-4f2b-8735-264a11858981", + "traceId": "932567e976f440e9b201f44796515d33", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.255Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色创建字段正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8fd80004-61e5-4f4c-867e-707f435fda3a, b4cac696-78ad-4f2b-8735-264a11858981", + "traceId": "932567e976f440e9b201f44796515d33", + "evidence": "roleId=2085998593953091585", + "checkedAt": "2026-08-08T07:56:36.255Z" + }, + { + "module": "system", + "scenario": null, + "name": "编辑平台自定义角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085998593953091585" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "74531444-f458-4667-ab05-c4f872e0bdf8, 39e233b9-76df-4b81-a3da-1d3059801bd8", + "traceId": "38f01f29927f4da08afbb43d28f2bf1f", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.289Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色编辑正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085998593953091585" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "74531444-f458-4667-ab05-c4f872e0bdf8, 39e233b9-76df-4b81-a3da-1d3059801bd8", + "traceId": "38f01f29927f4da08afbb43d28f2bf1f", + "evidence": "roleId=2085998593953091585", + "checkedAt": "2026-08-08T07:56:36.289Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色全量保存权限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "895e9589-7ba6-46e4-ab54-7ad563113253, cc96550c-b7fe-4e64-9c73-9c9586b9b692", + "traceId": "83465d528a8e475fa2fe714677f26ab7", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.321Z" + }, + { + "module": "system", + "scenario": null, + "name": "回查平台角色列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "13b067d0-e738-48d9-b0c7-d2f0c8b28de3, 417239fe-7ec6-4edc-9fa9-ac0b75ff0f21", + "traceId": "01271f41d9a44374a4d317a3d3fe0106", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.356Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色权限 ID 正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "13b067d0-e738-48d9-b0c7-d2f0c8b28de3, 417239fe-7ec6-4edc-9fa9-ac0b75ff0f21", + "traceId": "01271f41d9a44374a4d317a3d3fe0106", + "evidence": "permissionIds=2085998593445580801", + "checkedAt": "2026-08-08T07:56:36.356Z" + }, + { + "module": "system", + "scenario": null, + "name": "停用自定义角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085998593953091585/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "30927bd9-57df-4bc9-9d77-d0c6844faaed, 952ddc8a-5921-4292-861a-5348aad36bc2", + "traceId": "51bce0ac05c443b9acfd73a657d0bc0e", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.396Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色状态回显 DISABLED", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085998593953091585/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "30927bd9-57df-4bc9-9d77-d0c6844faaed, 952ddc8a-5921-4292-861a-5348aad36bc2", + "traceId": "51bce0ac05c443b9acfd73a657d0bc0e", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:56:36.396Z" + }, + { + "module": "system", + "scenario": null, + "name": "启用自定义角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085998593953091585/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "380845fc-d115-472b-aba1-50a43ccaea17, 7f7afefd-529c-4653-b83b-cbad594b688e", + "traceId": "033054ae7c504b2996eabfbcfd883e9e", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.426Z" + }, + { + "module": "system", + "scenario": null, + "name": "角色状态回显 ACTIVE", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085998593953091585/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "380845fc-d115-472b-aba1-50a43ccaea17, 7f7afefd-529c-4653-b83b-cbad594b688e", + "traceId": "033054ae7c504b2996eabfbcfd883e9e", + "evidence": "status=ACTIVE", + "checkedAt": "2026-08-08T07:56:36.426Z" + }, + { + "module": "system", + "scenario": null, + "name": "查询内部用户可选平台角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users/options" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9623ed2e-77d4-4adb-b582-27c78bb60324, 0f53f793-f5b2-4c96-a63e-c5f0ffea95d4", + "traceId": "903e32151a7244f2b3df4e7dc2962006", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.451Z" + }, + { + "module": "system", + "scenario": null, + "name": "用户选项包含平台与测试角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users/options" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9623ed2e-77d4-4adb-b582-27c78bb60324, 0f53f793-f5b2-4c96-a63e-c5f0ffea95d4", + "traceId": "903e32151a7244f2b3df4e7dc2962006", + "evidence": "tenants=1, roles=21", + "checkedAt": "2026-08-08T07:56:36.451Z" + }, + { + "module": "system", + "scenario": null, + "name": "检查测试联系电话可用性", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/contact-phone-availability?contactPhone=16175796451" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f8678f78-4973-48c4-a0e8-523ec5743386, b879118e-15ab-44fb-8737-4b55d89c1d63", + "traceId": "908e9320d78d48798c9587432aca3516", + "evidence": "attempt=1", + "checkedAt": "2026-08-08T07:56:36.487Z" + }, + { + "module": "system", + "scenario": null, + "name": "创建平台内部用户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/users" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "957bd29b-9a89-453f-b13a-d238bbc47011, efcc1233-b3a5-49e9-93b3-a44d6047573a", + "traceId": "ce5f96d02cb64322840614cabfed164b", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.831Z" + }, + { + "module": "system", + "scenario": null, + "name": "内部用户账号、平台范围和角色正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/iam/users" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "957bd29b-9a89-453f-b13a-d238bbc47011, efcc1233-b3a5-49e9-93b3-a44d6047573a", + "traceId": "ce5f96d02cb64322840614cabfed164b", + "evidence": "membershipId=2085998595035222019", + "checkedAt": "2026-08-08T07:56:36.831Z" + }, + { + "module": "system", + "scenario": null, + "name": "按账号查询平台内部用户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users?page=1&size=20&keyword=admin_accept_808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ca86be05-816d-41eb-88b2-5ea202a8e6c6, 8f1af549-e76c-4b9e-a074-8c0c349ab380", + "traceId": "aeda48c535064fa593529ff1fcd2f15f", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.865Z" + }, + { + "module": "system", + "scenario": null, + "name": "用户列表包含新账号且字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users?page=1&size=20&keyword=admin_accept_808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ca86be05-816d-41eb-88b2-5ea202a8e6c6, 8f1af549-e76c-4b9e-a074-8c0c349ab380", + "traceId": "aeda48c535064fa593529ff1fcd2f15f", + "evidence": "records=1, missing=none, lastLoginAt=omitted", + "checkedAt": "2026-08-08T07:56:36.866Z" + }, + { + "module": "system", + "scenario": null, + "name": "编辑平台内部用户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085998595035222019" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "906027b0-796b-454a-ae4a-6081c811c2c1, 10b14cd2-41bb-4abb-aeed-ec88ec46cb4a", + "traceId": "ac81cadf1d564bce9455995ad537cfd1", + "evidence": "", + "checkedAt": "2026-08-08T07:56:36.992Z" + }, + { + "module": "system", + "scenario": null, + "name": "用户编辑正确回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085998595035222019" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "906027b0-796b-454a-ae4a-6081c811c2c1, 10b14cd2-41bb-4abb-aeed-ec88ec46cb4a", + "traceId": "ac81cadf1d564bce9455995ad537cfd1", + "evidence": "membershipId=2085998595035222019", + "checkedAt": "2026-08-08T07:56:36.992Z" + }, + { + "module": "system", + "scenario": null, + "name": "新建内部用户可使用初始密码登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0ec11f39-dfa9-44c7-82d9-f54b96af0cc3, 2a3f84d8-beb8-4e81-a697-791e3b1e394e", + "traceId": "010c715b677f45299756d5842fe6b09d", + "evidence": "username=admin_accept_808075633661", + "checkedAt": "2026-08-08T07:56:37.333Z" + }, + { + "module": "system", + "scenario": null, + "name": "重置平台内部用户密码", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085998595035222019/password" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "889cd836-a2b8-45ec-acd9-fba08dc2b271, fe6b5192-4340-4611-b2f8-daaa9f7e0667", + "traceId": "907f524a95d84a1fbf14fa571e25e6f5", + "evidence": "", + "checkedAt": "2026-08-08T07:56:37.733Z" + }, + { + "module": "system", + "scenario": null, + "name": "内部用户使用重置密码登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5e24e9f0-cc65-4055-94c7-6e60924eb4b9, 0068303f-5c6e-4f05-8737-5db00d8cde7a", + "traceId": "b44ff1cee3474d8196718c2677d139e0", + "evidence": "username=admin_accept_808075633661", + "checkedAt": "2026-08-08T07:56:38.066Z" + }, + { + "module": "system", + "scenario": null, + "name": "停用平台内部用户", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085998595035222019/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ed260eaf-8a6c-4377-82b4-897223abc525, 07c54807-c623-446e-9a70-973e63444b9e", + "traceId": "a0f5846c8f4f4f759f0484c36d1709ee", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.187Z" + }, + { + "module": "system", + "scenario": null, + "name": "内部用户停用状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/users/2085998595035222019/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ed260eaf-8a6c-4377-82b4-897223abc525, 07c54807-c623-446e-9a70-973e63444b9e", + "traceId": "a0f5846c8f4f4f759f0484c36d1709ee", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:56:38.187Z" + }, + { + "module": "system", + "scenario": null, + "name": "停用用户禁止登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "A0403", + "message": "账号已禁用", + "requestId": "2a3d6036-f2cd-44d7-8905-fe0336d525f9", + "traceId": "fbc1d17a095748548a14873893a00667", + "evidence": "HTTP=200, code=A0403", + "checkedAt": "2026-08-08T07:56:38.208Z" + }, + { + "module": "system", + "scenario": null, + "name": "清空测试角色权限", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b6440d52-8257-4ad5-b151-3898b780effa, 1a74fe36-0681-4672-87f7-bafa0be53043", + "traceId": "995eea11c45e4930ac0386973fcf92ee", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.323Z" + }, + { + "module": "system", + "scenario": "system-role-protection", + "name": "已分配成员的角色禁止删除", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/iam/roles/2085998593953091585" + }, + "http": 200, + "code": "A0409", + "message": "角色已分配给成员,不能删除", + "requestId": "6f01acea-53fc-4882-baa8-b99fed333fcf", + "traceId": "e54d80dc0d1c4a55bd7f1523bea88660", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:56:38.346Z" + }, + { + "module": "system", + "scenario": null, + "name": "清理时停用测试角色", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085998593953091585/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "75179062-12bb-41e7-b6d3-1e0ba73c5876, 407a4327-b62d-4cb6-983a-11e9b7dba158", + "traceId": "2b34b82d320e42e5adfb15a7681618a0", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.463Z" + }, + { + "module": "system", + "scenario": null, + "name": "保留测试角色处于停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/iam/roles/2085998593953091585/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "75179062-12bb-41e7-b6d3-1e0ba73c5876, 407a4327-b62d-4cb6-983a-11e9b7dba158", + "traceId": "2b34b82d320e42e5adfb15a7681618a0", + "evidence": "status=DISABLED", + "checkedAt": "2026-08-08T07:56:38.463Z" + }, + { + "module": "system", + "scenario": null, + "name": "删除临时权限资源", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/iam/permissions/2085998593445580801" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6d65850d-51f7-4cfa-a17a-341d6213ebcb, 914934b7-8bea-4302-9af3-0414805b5792", + "traceId": "7ffcaddc1fbf48959d571306eadb82fa", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.494Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询平台仓库列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "356d1ca5-ee9e-4463-94ee-5f2693f2ab81, b7aebbaf-952b-409d-a38e-a466b1b55b99", + "traceId": "9154aaaa7d2a4a6b8474ed20cec9ebb3", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.536Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库列表分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "356d1ca5-ee9e-4463-94ee-5f2693f2ab81, b7aebbaf-952b-409d-a38e-a466b1b55b99", + "traceId": "9154aaaa7d2a4a6b8474ed20cec9ebb3", + "evidence": "total=293", + "checkedAt": "2026-08-08T07:56:38.536Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建平台公共仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b0c19f71-1de0-4f4a-ab73-11ef1403354b, 45883354-70ed-4292-9234-db62f03c0641", + "traceId": "b02acc41683f4b4eb45fb457d7c2b07d", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.574Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库创建返回字符串兼容 ID", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b0c19f71-1de0-4f4a-ab73-11ef1403354b, 45883354-70ed-4292-9234-db62f03c0641", + "traceId": "b02acc41683f4b4eb45fb457d7c2b07d", + "evidence": "warehouseId=2085998603664408577", + "checkedAt": "2026-08-08T07:56:38.575Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询平台仓库详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085998603664408577?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3a3a90ec-2be1-4215-9ea2-c61bfa7f1407, aa4573b8-5866-4721-a425-d3825d22ee97", + "traceId": "e5748df56b8242e3ae364491334e1049", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.600Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库详情、地址和能力正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085998603664408577?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3a3a90ec-2be1-4215-9ea2-c61bfa7f1407, aa4573b8-5866-4721-a425-d3825d22ee97", + "traceId": "e5748df56b8242e3ae364491334e1049", + "evidence": "addresses=1, capabilities=1", + "checkedAt": "2026-08-08T07:56:38.600Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑平台仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/warehouse-admin/2085998603664408577?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "32281b64-d848-48ef-8388-b1c7585c23d6, 9ccf0d97-6946-471b-b405-dd2c92788e54", + "traceId": "ddd8104c4b764f938df9c872450c2dc7", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.636Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的平台仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085998603664408577?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "99efc8dc-4e5c-4e21-9ef5-15804a7a04c3, e9267c1e-71df-44c6-9e6c-69e9997af2ec", + "traceId": "09267d3946cc47bd8e8d179a8d66c3cb", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.659Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/2085998603664408577?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "99efc8dc-4e5c-4e21-9ef5-15804a7a04c3, e9267c1e-71df-44c6-9e6c-69e9997af2ec", + "traceId": "09267d3946cc47bd8e8d179a8d66c3cb", + "evidence": "warehouseId=2085998603664408577", + "checkedAt": "2026-08-08T07:56:38.659Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建仓库库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/locations?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "91b70b1b-186f-402d-9a01-bd6edccc9331, efaaea67-f2bc-41fe-b27b-c055425db8bf", + "traceId": "b2a75014c60a437abc2979d74896f564", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.695Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询库位详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998604188696577?tenantId=0&warehouseId=2085998603664408577" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0f3d9732-ac3c-4d07-a674-1a6652404f86, df3f2442-2d44-4e86-a604-318c4db6479f", + "traceId": "01852c1365924d23990ab34ae8f0ba8f", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.721Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "库位详情关联正确仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998604188696577?tenantId=0&warehouseId=2085998603664408577" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0f3d9732-ac3c-4d07-a674-1a6652404f86, df3f2442-2d44-4e86-a604-318c4db6479f", + "traceId": "01852c1365924d23990ab34ae8f0ba8f", + "evidence": "locationId=2085998604188696577", + "checkedAt": "2026-08-08T07:56:38.721Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085998604188696577?tenantId=0&warehouseId=2085998603664408577" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "10f7ca66-f611-4abf-9221-1092aa16646f, 95279753-c0a0-4ed7-84ad-b393742f0d41", + "traceId": "73e94b436ce647c8be81e0e779b38dd1", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.760Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998604188696577?tenantId=0&warehouseId=2085998603664408577" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "72b20a68-7efe-41e6-aff5-67073ba0ff2f, b0cc4780-2c78-47f5-8cb9-254b769e24e5", + "traceId": "3470971b4e4f4ce596a3d1b55ffa3295", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.784Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "库位编辑与版本递增正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998604188696577?tenantId=0&warehouseId=2085998603664408577" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "72b20a68-7efe-41e6-aff5-67073ba0ff2f, b0cc4780-2c78-47f5-8cb9-254b769e24e5", + "traceId": "3470971b4e4f4ce596a3d1b55ffa3295", + "evidence": "version=1", + "checkedAt": "2026-08-08T07:56:38.784Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/locations/2085998604188696577/status?tenantId=0&warehouseId=2085998603664408577" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2eecff72-914c-4f1b-9e1a-6dbe22cf9f0f, 00084cb6-4361-4027-b023-8db29700f329", + "traceId": "d16469f074a344b1a4d54010027b6b63", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.822Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "删除未占用测试库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/locations/2085998604188696577?tenantId=0&warehouseId=2085998603664408577&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b582e1f0-98ab-4189-b7ae-14328dbff216, 0b9d1bc3-b705-4f71-8e27-723bc03f64df", + "traceId": "4b67b64f542649fda7a09512ca5618f0", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.851Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建仓库托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/pallets?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3383671d-07f5-49fa-834b-6340ee7f37c2, 6d8864af-08dd-4dd2-9465-022dc5008b77", + "traceId": "08cc243c484648f89a4757ddd4b262d4", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.885Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询托盘详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085998604977225729?tenantId=0&warehouseId=2085998603664408577" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bb838e0d-60d4-4977-9166-a9415da9587c, f64c447b-8d99-420e-bac6-4f5e9fc566ed", + "traceId": "a812b5a06485492cb3eebd3e45e70a28", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.907Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "托盘详情关联正确仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085998604977225729?tenantId=0&warehouseId=2085998603664408577" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bb838e0d-60d4-4977-9166-a9415da9587c, f64c447b-8d99-420e-bac6-4f5e9fc566ed", + "traceId": "a812b5a06485492cb3eebd3e45e70a28", + "evidence": "palletId=2085998604977225729", + "checkedAt": "2026-08-08T07:56:38.907Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/pallets/2085998604977225729?tenantId=0&warehouseId=2085998603664408577" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "df5fbb94-f366-4efe-96e8-1845b2b9c1c8, 94a525ce-c839-4b17-9976-363198ff164d", + "traceId": "96cc3a36127441f9bccd37a38e9d8175", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.946Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "回查编辑后的托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085998604977225729?tenantId=0&warehouseId=2085998603664408577" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "071921fe-aa30-4d30-94db-22db44cee49a, a863446c-541e-42d0-826b-e10ebef93434", + "traceId": "8aca546cee294134be4feebca6e2e2c8", + "evidence": "", + "checkedAt": "2026-08-08T07:56:38.967Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "托盘编辑已持久化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/2085998604977225729?tenantId=0&warehouseId=2085998603664408577" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "071921fe-aa30-4d30-94db-22db44cee49a, a863446c-541e-42d0-826b-e10ebef93434", + "traceId": "8aca546cee294134be4feebca6e2e2c8", + "evidence": "palletId=2085998604977225729", + "checkedAt": "2026-08-08T07:56:38.967Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "删除未使用测试托盘", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/pallets/2085998604977225729?tenantId=0&warehouseId=2085998603664408577" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0a2e7f3f-032a-4727-896e-2976f2a5ccd0, ac1a7142-db01-4daa-ba27-750cbb1d8268", + "traceId": "a59b00aa9e574cddae75d1c8f6338aaf", + "evidence": "", + "checkedAt": "2026-08-08T07:56:39.004Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "73500ae2-f1bf-4c7e-a891-104d6df2130f, f535f05b-38f3-46ab-a663-d8eff0505d70", + "traceId": "9e4522a5a09a44bfa558828cd830987d", + "evidence": "", + "checkedAt": "2026-08-08T07:56:39.036Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询快递公司详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/2085998605623148545?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fb3ccfe8-36eb-4c54-ad8b-310913a8d674, e3c09a62-446c-4bef-a6a9-8d58bfdc4837", + "traceId": "75fe643b47db4685b430a13e4788a7dc", + "evidence": "", + "checkedAt": "2026-08-08T07:56:39.062Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司详情正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/2085998605623148545?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fb3ccfe8-36eb-4c54-ad8b-310913a8d674, e3c09a62-446c-4bef-a6a9-8d58bfdc4837", + "traceId": "75fe643b47db4685b430a13e4788a7dc", + "evidence": "expressId=2085998605623148545", + "checkedAt": "2026-08-08T07:56:39.062Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/express-companies/2085998605623148545?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dceef7cd-9403-48ef-9e30-5fd783f9f3d8, db5616bc-37a9-46c7-8686-1e8b2ce0e8eb", + "traceId": "ff068dcc4705409aace880fc382a436b", + "evidence": "", + "checkedAt": "2026-08-08T07:56:39.097Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用快递公司", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/express-companies/2085998605623148545/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b3868b47-1d05-41d8-80c1-f28d1e17710b, cb946195-7f97-42e7-bbfa-696535411496", + "traceId": "f889736bceae41eaaaa22399c92ee3c4", + "evidence": "", + "checkedAt": "2026-08-08T07:56:39.129Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "筛选快递公司列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=EX808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e396c1a8-f5d8-4afd-833d-beef210f87b5, 381b5408-e1b2-440d-b2fd-08f640bd5cbc", + "traceId": "874cef3b71304ea1a731c9b72be0a1fc", + "evidence": "", + "checkedAt": "2026-08-08T07:56:39.155Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司列表回显停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=EX808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e396c1a8-f5d8-4afd-833d-beef210f87b5, 381b5408-e1b2-440d-b2fd-08f640bd5cbc", + "traceId": "874cef3b71304ea1a731c9b72be0a1fc", + "evidence": "records=1", + "checkedAt": "2026-08-08T07:56:39.155Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "创建往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "483b11ab-c24b-42bf-9f94-8c69e191ee3c, babe1eff-0630-48b6-96ee-402dbd0dd4ad", + "traceId": "ac91d9ac16684af4b6816204c51c7045", + "evidence": "", + "checkedAt": "2026-08-08T07:56:39.180Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "查询往来单位详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/2085998606222934017?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a06144d5-0a91-4ded-96b3-2ea3335bcbf5, 9788e05c-5fd5-4aa7-8566-5d2db1254c43", + "traceId": "53d01fa269c74cc49b31496e4ccb8bc6", + "evidence": "", + "checkedAt": "2026-08-08T07:56:39.200Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位详情正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/2085998606222934017?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a06144d5-0a91-4ded-96b3-2ea3335bcbf5, 9788e05c-5fd5-4aa7-8566-5d2db1254c43", + "traceId": "53d01fa269c74cc49b31496e4ccb8bc6", + "evidence": "partnerId=2085998606222934017", + "checkedAt": "2026-08-08T07:56:39.200Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "编辑往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/partners/2085998606222934017?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "69716a25-5cec-46d9-bb03-908e7e776db3, ba112939-d589-417c-9f5a-fdc15aa11308", + "traceId": "0b1c0371c94f4ada9caf07a4f43389db", + "evidence": "", + "checkedAt": "2026-08-08T07:56:39.240Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用往来单位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/partners/2085998606222934017/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b6c57dca-0507-45d1-a3fd-f944f2026cd0, 121fed88-564b-4458-9a78-3e76202194c7", + "traceId": "2eec57c4657a4d0691a54956260167d3", + "evidence": "", + "checkedAt": "2026-08-08T07:56:39.270Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "筛选往来单位列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=PT808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f7bc756b-450e-43bd-b1d1-7c57378a0880, d408739a-9053-4bec-90d5-d9847d234a1b", + "traceId": "3b60d9f07e3947d49b9ae01d8cbd3aac", + "evidence": "", + "checkedAt": "2026-08-08T07:56:39.297Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位列表回显编辑与停用状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=PT808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f7bc756b-450e-43bd-b1d1-7c57378a0880, d408739a-9053-4bec-90d5-d9847d234a1b", + "traceId": "3b60d9f07e3947d49b9ae01d8cbd3aac", + "evidence": "records=1", + "checkedAt": "2026-08-08T07:56:39.297Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载仓库导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/import-template" + }, + "http": 200, + "code": null, + "message": "3853 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "0b502ea9-180c-4e8c-ad4f-018b01ef642d, 093082f3-4ce9-4c07-a64a-00e7dff8b08d", + "traceId": "91c7918ebfd8438db28469a00db490f6", + "evidence": "bytes=3853, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:56:39.333Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库合法 XLSX 带数据行导入", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5cfdc2e8-170c-49ba-bef4-996e06aefa01, e536c000-6ddd-4a8f-9add-94c0a91ce12a", + "traceId": "2bb973ac328b42e7826dc57d08cfbdad", + "evidence": "HTTP=200, code=200, importedRows=1", + "checkedAt": "2026-08-08T07:56:39.384Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库重复导入返回明确冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f173969a-9f6a-402d-bb9f-69598d8f72a1, a9d6d9a5-5cde-445a-8b7d-cf7165cb4fd7", + "traceId": "a1826046fcde45d197cd4ade2b49e02b", + "evidence": "firstImported=1, replayImported=0, errors=0", + "checkedAt": "2026-08-08T07:56:39.427Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库导入列表回查", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20&keyword=IMW808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "82ed6843-3b05-4905-af29-303221a4aaf2, d9113f83-36ab-43c4-bc42-f687a2ca3921", + "traceId": "73344fcb8f1a4d499effd4ec2329e418", + "evidence": "keyword=IMW808075633661", + "checkedAt": "2026-08-08T07:56:39.454Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "仓库导入资源回查 marker", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=20&keyword=IMW808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "82ed6843-3b05-4905-af29-303221a4aaf2, d9113f83-36ab-43c4-bc42-f687a2ca3921", + "traceId": "73344fcb8f1a4d499effd4ec2329e418", + "evidence": "found=true, id=2085998607053406209", + "checkedAt": "2026-08-08T07:56:39.455Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "仓库导入资源停用清理", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/warehouse-admin/2085998607053406209/status?tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "331555cf-a237-45cc-9792-4624d28b9c21, 48de3fe5-ec53-461f-bae0-3dc459d47d5f", + "traceId": "cc95448fcc7b4a69862f67d5b15ebf77", + "evidence": "id=2085998607053406209", + "checkedAt": "2026-08-08T07:56:39.478Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载快递公司导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/import-template" + }, + "http": 200, + "code": null, + "message": "3692 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "6a1b4e9a-53de-47bc-b32c-fb26f0aaf12d, 38dd19de-b228-4553-af34-8926c82698d9", + "traceId": "dc961cb8a1c3493ba676398078c84ff8", + "evidence": "bytes=3692, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:56:39.531Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司合法 XLSX 带数据行导入", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "edb11b77-60f0-4a5e-a04e-8d6c7874bb60, 1187d3ef-36f6-4e29-903a-f58ff1061d66", + "traceId": "7e6fb0806bf24793ac9e5d389e570bd6", + "evidence": "HTTP=200, code=200, importedRows=1", + "checkedAt": "2026-08-08T07:56:39.568Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司重复导入返回明确冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "11bd71e9-5e78-425d-89c1-4b2eb61a7f4d, 7b459df5-03c2-40e1-b8f2-c7bc0d6d65a4", + "traceId": "9081009a665740f49b20fe8047c6e8c0", + "evidence": "firstImported=1, replayImported=0, errors=2", + "checkedAt": "2026-08-08T07:56:39.597Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司导入列表回查", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=IME808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7b4c54fd-be8f-4fc5-86fd-0504f3f79015, 8e0deb2b-0bcd-4154-a68d-599ae0c1d193", + "traceId": "97589a59b9a945e0bb27dd9c5a5d1fa0", + "evidence": "keyword=IME808075633661", + "checkedAt": "2026-08-08T07:56:39.624Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "快递公司导入资源回查 marker", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=20&keyword=IME808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7b4c54fd-be8f-4fc5-86fd-0504f3f79015, 8e0deb2b-0bcd-4154-a68d-599ae0c1d193", + "traceId": "97589a59b9a945e0bb27dd9c5a5d1fa0", + "evidence": "found=true, id=2085998607854518274", + "checkedAt": "2026-08-08T07:56:39.624Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "快递公司导入资源停用清理", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/express-companies/2085998607854518274/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "197da150-ab9c-44cb-8023-76f5296d2631, 14f775d4-09ff-4f35-a84d-ad83c9e0e515", + "traceId": "9bbffdc4211a4c0b80409dd26c2f6879", + "evidence": "id=2085998607854518274", + "checkedAt": "2026-08-08T07:56:39.660Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "下载往来单位导入模板", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/import-template" + }, + "http": 200, + "code": null, + "message": "3830 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "e13e583a-a7d5-443d-b2d0-39390a8937dc, 27940aed-3f84-4629-bd55-a02e7e4721f7", + "traceId": "cd649719028d4b25a8393f4ede3f106d", + "evidence": "bytes=3830, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:56:39.692Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位合法 XLSX 带数据行导入", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a9963fa3-569f-432b-80f9-700f2ab6e50e, 94cf2959-5774-4061-8351-92dee045b4dc", + "traceId": "321df51816e64c9f9df0e518a4483549", + "evidence": "HTTP=200, code=200, importedRows=1", + "checkedAt": "2026-08-08T07:56:39.728Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位重复导入返回明确冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2fe34e3a-b500-4231-bc8b-1ae57c39d035, e52b0dae-4fe5-4ebd-b2e2-c8b036458adc", + "traceId": "097c8baed1684befab21da8535acdd54", + "evidence": "firstImported=1, replayImported=0, errors=1", + "checkedAt": "2026-08-08T07:56:39.770Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位导入列表回查", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=IMP808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3da246ba-715b-48c0-a9b1-eaf5fef515e2, 4f0f58fd-3af1-47cf-b32e-6d15a0415e2f", + "traceId": "f9acff8eb2114912bf47d14f33b14df2", + "evidence": "keyword=IMP808075633661", + "checkedAt": "2026-08-08T07:56:39.799Z" + }, + { + "module": "master-data", + "scenario": "valid-import", + "name": "往来单位导入资源回查 marker", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=20&keyword=IMP808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3da246ba-715b-48c0-a9b1-eaf5fef515e2, 4f0f58fd-3af1-47cf-b32e-6d15a0415e2f", + "traceId": "f9acff8eb2114912bf47d14f33b14df2", + "evidence": "found=true, id=2085998608521412610", + "checkedAt": "2026-08-08T07:56:39.799Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "往来单位导入资源停用清理", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/partners/2085998608521412610/status?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b0a05b47-fa15-42a7-829c-5bd0f06c0c50, 3dab6ebf-a512-4f85-84cf-58eac59218c0", + "traceId": "1a045063352d4ac1b1237cf801a4da76", + "evidence": "id=2085998608521412610", + "checkedAt": "2026-08-08T07:56:39.836Z" + }, + { + "module": "master-data", + "scenario": null, + "name": "停用测试仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/warehouse-admin/2085998603664408577/status?tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "07c5bbb3-059b-4a38-8568-394fbe6ceb64, 83e58362-2acf-4433-86bf-9167d46270af", + "traceId": "6934a70ee5d94be5a6f73c9ecda32c1c", + "evidence": "", + "checkedAt": "2026-08-08T07:56:39.876Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 测试账号登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "21f4d3d4-4f10-4b25-9db1-2a2b03d35cf5, 60288e64-bdb6-4c01-9260-7459e91aebd0", + "traceId": "00f02869f380449897484b5e02e1cc00", + "evidence": "username=merchant_admin", + "checkedAt": "2026-08-08T07:56:40.215Z" + }, + { + "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": "4bf600da-d363-4bd9-82c8-81f3b71c6e46, c5a811fc-2d81-4834-959e-240b6d780067", + "traceId": "0edfe2b124ad4b6fa2bd985556ae908c", + "evidence": "", + "checkedAt": "2026-08-08T07:56:40.246Z" + }, + { + "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": "4bf600da-d363-4bd9-82c8-81f3b71c6e46, c5a811fc-2d81-4834-959e-240b6d780067", + "traceId": "0edfe2b124ad4b6fa2bd985556ae908c", + "evidence": "tenantId=10001, status=ACTIVE", + "checkedAt": "2026-08-08T07:56:40.246Z" + }, + { + "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": "e8acd623-d5a5-4589-b7a0-52a88bd348db, 92b8d5a1-6797-486b-bea0-aa0cef5e178c", + "traceId": "cc04cc65fa6a41318268f775be8b1fe9", + "evidence": "tenantId=10001", + "checkedAt": "2026-08-08T07:56:40.277Z" + }, + { + "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": "e8acd623-d5a5-4589-b7a0-52a88bd348db, 92b8d5a1-6797-486b-bea0-aa0cef5e178c", + "traceId": "cc04cc65fa6a41318268f775be8b1fe9", + "evidence": "types=SMALL,MEDIUM,LARGE,EXTRA_LARGE", + "checkedAt": "2026-08-08T07:56:40.277Z" + }, + { + "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": "ec43b916-be93-43ab-8a6c-086adc9d71fa, da46eee4-217a-456e-8ba3-34821ad7d392", + "traceId": "82236a037fad4b509ed2535d0257537e", + "evidence": "", + "checkedAt": "2026-08-08T07:56:40.310Z" + }, + { + "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": "ec43b916-be93-43ab-8a6c-086adc9d71fa, da46eee4-217a-456e-8ba3-34821ad7d392", + "traceId": "82236a037fad4b509ed2535d0257537e", + "evidence": "count=2", + "checkedAt": "2026-08-08T07:56:40.310Z" + }, + { + "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": "19746080-2708-4709-a651-5242bb0cc315, 547d2cfa-33eb-4acd-875a-b7f010c99753", + "traceId": "11e82e81d516415f829aecf954ef82ae", + "evidence": "", + "checkedAt": "2026-08-08T07:56:40.366Z" + }, + { + "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": "19746080-2708-4709-a651-5242bb0cc315, 547d2cfa-33eb-4acd-875a-b7f010c99753", + "traceId": "11e82e81d516415f829aecf954ef82ae", + "evidence": "count=200", + "checkedAt": "2026-08-08T07:56:40.366Z" + }, + { + "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": "199dc6ef-04db-45f5-a78d-52eb34b0cc88, c57ca80a-d847-4fbb-8339-0380b8207900", + "traceId": "35ff2cd96d044ddd9ba66ce489235e59", + "evidence": "", + "checkedAt": "2026-08-08T07:56:40.405Z" + }, + { + "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": "199dc6ef-04db-45f5-a78d-52eb34b0cc88, c57ca80a-d847-4fbb-8339-0380b8207900", + "traceId": "35ff2cd96d044ddd9ba66ce489235e59", + "evidence": "count=15", + "checkedAt": "2026-08-08T07:56:40.405Z" + }, + { + "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": "b5ee8c23-a04a-4587-9bc0-d8b8312ec50b, b13eb350-b92e-4ee3-ae95-876c5584239b", + "traceId": "5cf9b20fd6834bcf98f6ac1766c5eac1", + "evidence": "", + "checkedAt": "2026-08-08T07:56:40.432Z" + }, + { + "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": "f02882d8-4a4a-4418-b021-fda0da14c0c6, 110ee003-c413-43fe-bedd-bb27137d816c", + "traceId": "dceab0c18abf4bc8aa282231988b5b3c", + "evidence": "contentType=image/png", + "checkedAt": "2026-08-08T07:56:40.470Z" + }, + { + "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": "f02882d8-4a4a-4418-b021-fda0da14c0c6, 110ee003-c413-43fe-bedd-bb27137d816c", + "traceId": "dceab0c18abf4bc8aa282231988b5b3c", + "evidence": "fileIdType=string, contentType=image/png", + "checkedAt": "2026-08-08T07:56:40.470Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Client 可下载本轮产品图片", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/files/product-images/2085998611628883970" + }, + "http": 200, + "code": null, + "message": null, + "requestId": "fb679905-d253-4f39-a008-b3eb628c06a0, 20e36487-5346-420e-9226-703e022a520c", + "traceId": "9e64376d28ec4490ae0102c003918242", + "evidence": "bytes=68, contentType=image/png", + "checkedAt": "2026-08-08T07:56:40.492Z" + }, + { + "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": "b268dd2c-7581-4ac1-8b7a-93c67f219d19, 4d663775-6f3d-4a13-9d0c-7a8551396486", + "traceId": "9b459a2091904eb38a678ab5e9b674f8", + "evidence": "marker=ADMIN-API-20260808075633661", + "checkedAt": "2026-08-08T07:56:40.560Z" + }, + { + "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": "2b7a9975-2378-4192-86d9-a03ef02efbb5, 750ca2ea-086e-4b20-8a80-497ab9df1b97", + "traceId": "48bf692cc81e47d78aa8eb5f63e13972", + "evidence": "", + "checkedAt": "2026-08-08T07:56:40.593Z" + }, + { + "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": "2b7a9975-2378-4192-86d9-a03ef02efbb5, 750ca2ea-086e-4b20-8a80-497ab9df1b97", + "traceId": "48bf692cc81e47d78aa8eb5f63e13972", + "evidence": "orderId=2085998611985399810, replayedId=2085998611985399810", + "checkedAt": "2026-08-08T07:56:40.593Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 查询隔离订单草稿", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085998611985399810" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ab072825-792b-4a12-bcdd-ee47cdba813b, 2e2ff384-87e2-4ee3-9520-30f2ce692d97", + "traceId": "d8190582655d4c15b70860f2118b5828", + "evidence": "", + "checkedAt": "2026-08-08T07:56:40.622Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 草稿身份、marker 和状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085998611985399810" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ab072825-792b-4a12-bcdd-ee47cdba813b, 2e2ff384-87e2-4ee3-9520-30f2ce692d97", + "traceId": "d8190582655d4c15b70860f2118b5828", + "evidence": "orderNo=FL2085998611985399810, status=DRAFT", + "checkedAt": "2026-08-08T07:56:40.622Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085998611985399810" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ab072825-792b-4a12-bcdd-ee47cdba813b, 2e2ff384-87e2-4ee3-9520-30f2ce692d97", + "traceId": "d8190582655d4c15b70860f2118b5828", + "evidence": "cargoes=4, imageFileId=2085998611628883970", + "checkedAt": "2026-08-08T07:56:40.622Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 提交隔离订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/merchant/v1/orders/first-leg/2085998611985399810/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "22c5ab7d-c1fe-4c9e-a92a-5b82ce5efd8e, 0a432c27-87d1-476e-a990-3e46138d012d", + "traceId": "1294da8b7aae448085b3caaf31fd110c", + "evidence": "orderId=2085998611985399810", + "checkedAt": "2026-08-08T07:56:40.682Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 回查已提交订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085998611985399810" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d4171ca8-b2b2-47bb-b2bc-7b02ce9d7cb2, 88a65601-6657-4b54-b3fa-69f50a5dda6d", + "traceId": "5571fe9715674ac6a225dfc841d0b0f1", + "evidence": "", + "checkedAt": "2026-08-08T07:56:40.712Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 订单已进入待审核状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085998611985399810" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d4171ca8-b2b2-47bb-b2bc-7b02ce9d7cb2, 88a65601-6657-4b54-b3fa-69f50a5dda6d", + "traceId": "5571fe9715674ac6a225dfc841d0b0f1", + "evidence": "status=SUBMITTED", + "checkedAt": "2026-08-08T07:56:40.712Z" + }, + { + "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=FL2085998611985399810" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "864ef917-0ed5-43a0-ab27-73753f2df355, 32d3204c-b611-471d-99d4-9aadf7aea505", + "traceId": "087c384d71724a1e905a9b5ced9a6670", + "evidence": "", + "checkedAt": "2026-08-08T07:56:40.751Z" + }, + { + "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=FL2085998611985399810" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "864ef917-0ed5-43a0-ab27-73753f2df355, 32d3204c-b611-471d-99d4-9aadf7aea505", + "traceId": "087c384d71724a1e905a9b5ced9a6670", + "evidence": "orderId=2085998611985399810, found=true", + "checkedAt": "2026-08-08T07:56:40.751Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询统一订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085998611985399810?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6558bf43-8668-4243-b021-198fb36d73d1, 55b9a9fb-835e-44d6-bcc5-00c821d3017f", + "traceId": "1bf65bc9eb5c42b9aae1836df7b932cf", + "evidence": "", + "checkedAt": "2026-08-08T07:56:40.776Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 统一订单详情身份与待审核状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085998611985399810?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6558bf43-8668-4243-b021-198fb36d73d1, 55b9a9fb-835e-44d6-bcc5-00c821d3017f", + "traceId": "1bf65bc9eb5c42b9aae1836df7b932cf", + "evidence": "mainStatus=PENDING_REVIEW, timeline=2", + "checkedAt": "2026-08-08T07:56:40.776Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085998611985399810&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e28896b8-860c-48cc-b1a3-13782b5101ee, 2819fa3b-8c45-4f07-a441-8a4b88235b4f", + "traceId": "4653dc1011664b37bd1efef2b19ce5a2", + "evidence": "", + "checkedAt": "2026-08-08T07:56:40.798Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单列表只核对本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085998611985399810&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e28896b8-860c-48cc-b1a3-13782b5101ee, 2819fa3b-8c45-4f07-a441-8a4b88235b4f", + "traceId": "4653dc1011664b37bd1efef2b19ce5a2", + "evidence": "orderId=2085998611985399810, found=true", + "checkedAt": "2026-08-08T07:56:40.798Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085998611985399810?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c30b085c-80ed-4426-9847-c6c059bb56b5, 472a6d3d-f1a6-466e-a637-1c8428f5d226", + "traceId": "898491f856844b22ac762f8d00af3a7c", + "evidence": "", + "checkedAt": "2026-08-08T07:56:40.822Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单详情聚合结构完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085998611985399810?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c30b085c-80ed-4426-9847-c6c059bb56b5, 472a6d3d-f1a6-466e-a637-1c8428f5d226", + "traceId": "898491f856844b22ac762f8d00af3a7c", + "evidence": "cargoes=4, history=2", + "checkedAt": "2026-08-08T07:56:40.822Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085998611985399810?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c30b085c-80ed-4426-9847-c6c059bb56b5, 472a6d3d-f1a6-466e-a637-1c8428f5d226", + "traceId": "898491f856844b22ac762f8d00af3a7c", + "evidence": "cargoes=4, imageFileId=2085998611628883970", + "checkedAt": "2026-08-08T07:56:40.822Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 为本轮订单添加内部备注", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085998611985399810/internal-notes?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c9552b03-b981-4527-b76b-94460f7b0f96, 12c918ea-de7c-41a2-b9fa-66d4eb89fccf", + "traceId": "a9fe7dfa22fa44edb51d26023fa7c098", + "evidence": "", + "checkedAt": "2026-08-08T07:56:40.857Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 审核通过本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085998611985399810/approve?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "609c78ac-64cd-40bc-aa38-d43066e118a0, 03bbeffc-741c-42f3-9013-d6290a91fdc9", + "traceId": "c88850adec7c4ccebf500dd24b0492a3", + "evidence": "orderId=2085998611985399810", + "checkedAt": "2026-08-08T07:56:40.885Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "审核后生成隔离入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085998611985399810?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b105ce53-dec4-48c6-b527-0ed6c65294a2, 81eb0a2a-7b1f-4b8b-8e66-f65755678059", + "traceId": "1eb2e62d7bff4cddb59381f50c200a29", + "evidence": "inboundId=2085998620770349059", + "checkedAt": "2026-08-08T07:56:43.022Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮入库单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085998620770349059?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a586297b-1c38-40f0-9f5d-a7eca1d1f078, 88ba05c9-3c26-4ca7-9675-5117c12c5b18", + "traceId": "886accfe47504d578a9252abee119e85", + "evidence": "inboundId=2085998620770349059", + "checkedAt": "2026-08-08T07:56:43.045Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "隔离入库单 marker 来源与可测量状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085998620770349059?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a586297b-1c38-40f0-9f5d-a7eca1d1f078, 88ba05c9-3c26-4ca7-9675-5117c12c5b18", + "traceId": "886accfe47504d578a9252abee119e85", + "evidence": "markerFound=true, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T07:56:43.046Z" + }, + { + "module": "orders", + "scenario": null, + "name": "入库单详情包含托盘库位、文件、备注和状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085998620770349059?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a586297b-1c38-40f0-9f5d-a7eca1d1f078, 88ba05c9-3c26-4ca7-9675-5117c12c5b18", + "traceId": "886accfe47504d578a9252abee119e85", + "evidence": "inboundId=2085998620770349059, history=1", + "checkedAt": "2026-08-08T07:56:43.046Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询入库单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085998611985399810&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5ecceec2-e06b-47c8-8b2a-a36424a4b603, c4188d45-73c0-4859-b18a-544a2642adbc", + "traceId": "6d66276b1f5b4fe7a22da5a598a69269", + "evidence": "", + "checkedAt": "2026-08-08T07:56:43.075Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 入库单列表只核对本轮入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085998611985399810&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5ecceec2-e06b-47c8-8b2a-a36424a4b603, c4188d45-73c0-4859-b18a-544a2642adbc", + "traceId": "6d66276b1f5b4fe7a22da5a598a69269", + "evidence": "inboundId=2085998620770349059, total=1", + "checkedAt": "2026-08-08T07:56:43.075Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮订单履约任务", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085998611985399810?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dec29543-a3ad-4dc7-a919-420263988959, e12c22e5-7c22-48f4-8797-f13b970fc2a6", + "traceId": "2a33136a2d114ccfb0bd30906235dd75", + "evidence": "新订单应生成可查询的履约任务", + "checkedAt": "2026-08-08T07:56:43.103Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "履约任务与本轮订单和客户一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085998611985399810?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dec29543-a3ad-4dc7-a919-420263988959, e12c22e5-7c22-48f4-8797-f13b970fc2a6", + "traceId": "2a33136a2d114ccfb0bd30906235dd75", + "evidence": "taskId=2085998620770349058, status=PENDING_ASSIGNMENT", + "checkedAt": "2026-08-08T07:56:43.103Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询本轮履约任务分配历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085998620770349058/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "58821a06-87c7-45ec-9c4f-c92e5fb3b358, 5c993619-3e67-42b6-92b3-c8d384ed9024", + "traceId": "4a678c386a8a43c0a81eb2979bad50f3", + "evidence": "", + "checkedAt": "2026-08-08T07:56:43.123Z" + }, + { + "module": "orders", + "scenario": null, + "name": "履约分配历史分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085998620770349058/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "58821a06-87c7-45ec-9c4f-c92e5fb3b358, 5c993619-3e67-42b6-92b3-c8d384ed9024", + "traceId": "4a678c386a8a43c0a81eb2979bad50f3", + "evidence": "taskId=2085998620770349058, total=0", + "checkedAt": "2026-08-08T07:56:43.123Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 受理本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085998611985399810/accept?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4599003e-05a1-42ba-b650-36f177cd7c4e, 224f78fe-6214-4d11-a270-cc5dc4d4b003", + "traceId": "6b99326a31884e78bcfeb158da1805ad", + "evidence": "", + "checkedAt": "2026-08-08T07:56:43.154Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 启动本轮订单履约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085998611985399810/start?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "db646b42-4ffd-4689-b2e1-d6ddc4fa9753, 7fb593bc-4fcc-4dcd-95d9-b4b393a6eda8", + "traceId": "6f24b39f0376446e95c342d60d993836", + "evidence": "", + "checkedAt": "2026-08-08T07:56:43.185Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 回查本轮订单履约状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085998611985399810?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "19ffcafd-a5b7-4d54-9448-1437066cfac6, 6034740f-4d6d-4664-8af6-3b4042a1b401", + "traceId": "4cb7b5ef5fb747bcb1fb15253ca2961a", + "evidence": "", + "checkedAt": "2026-08-08T07:56:43.209Z" + }, + { + "module": "orders", + "scenario": null, + "name": "本轮订单已进入处理中且保留状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085998611985399810?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "19ffcafd-a5b7-4d54-9448-1437066cfac6, 6034740f-4d6d-4664-8af6-3b4042a1b401", + "traceId": "4cb7b5ef5fb747bcb1fb15253ca2961a", + "evidence": "status=PROCESSING, history=5", + "checkedAt": "2026-08-08T07:56:43.209Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询发布前船期价格版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5a4f559a-4920-4668-82b4-b23f6bb8c378, 2f026c95-9437-47aa-9583-cb933bcb4019", + "traceId": "e3d0b3dd791e4b33bb908510fc65b0de", + "evidence": "", + "checkedAt": "2026-08-08T07:56:43.242Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "发布前最多一份生效版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5a4f559a-4920-4668-82b4-b23f6bb8c378, 2f026c95-9437-47aa-9583-cb933bcb4019", + "traceId": "e3d0b3dd791e4b33bb908510fc65b0de", + "evidence": "versions=18, active=1", + "checkedAt": "2026-08-08T07:56:43.242Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "船期价格测试文件已隔离", + "passed": true, + "deploymentBlocker": false, + "request": null, + "http": null, + "code": null, + "message": null, + "requestId": null, + "traceId": null, + "evidence": "fileName=ADMIN-API-20260808075633661-2026.08.03柏悦价格表 船期2026.08.12.xlsx, bytes=1343413, sha256=3170fd3aa8795cd816ca9600f87a6a2a06b15d0cf6042d4592f33d4b30c7b8ab", + "checkedAt": "2026-08-08T07:56:43.246Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上传并解析船期价格表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1bc98109-6055-443d-87e2-da3dc8d42846, fc4e835f-9d8a-46cd-aa97-de1dc63b4a7f", + "traceId": "427519a05a8d4522aefc997c22813100", + "evidence": "fileName=ADMIN-API-20260808075633661-2026.08.03柏悦价格表 船期2026.08.12.xlsx, bytes=1343413, sha256=3170fd3aa8795cd816ca9600f87a6a2a06b15d0cf6042d4592f33d4b30c7b8ab", + "checkedAt": "2026-08-08T07:56:44.772Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上传返回隔离的待确认版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1bc98109-6055-443d-87e2-da3dc8d42846, fc4e835f-9d8a-46cd-aa97-de1dc63b4a7f", + "traceId": "427519a05a8d4522aefc997c22813100", + "evidence": "versionId=2085998623572144130, status=PENDING_CONFIRMATION, fileName=ADMIN-API-20260808075633661-2026.08.03柏悦价格表 船期2026.08.12.xlsx, shaMatched=true", + "checkedAt": "2026-08-08T07:56:44.772Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "解析出15个固定渠道且编码唯一", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1bc98109-6055-443d-87e2-da3dc8d42846, fc4e835f-9d8a-46cd-aa97-de1dc63b4a7f", + "traceId": "427519a05a8d4522aefc997c22813100", + "evidence": "channelCount=15, unique=15, missing=none", + "checkedAt": "2026-08-08T07:56:44.772Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "解析价格行完整且可追溯到 Excel", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1bc98109-6055-443d-87e2-da3dc8d42846, fc4e835f-9d8a-46cd-aa97-de1dc63b4a7f", + "traceId": "427519a05a8d4522aefc997c22813100", + "evidence": "rateCount=2157, declared=2157, valid=true", + "checkedAt": "2026-08-08T07:56:44.773Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "解析阻断仅包含可确认的仓库映射问题", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1bc98109-6055-443d-87e2-da3dc8d42846, fc4e835f-9d8a-46cd-aa97-de1dc63b4a7f", + "traceId": "427519a05a8d4522aefc997c22813100", + "evidence": "blocking=0, unexpected=none, infrastructure=none", + "checkedAt": "2026-08-08T07:56:44.774Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上传后回查价格版本列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3ef2e6e5-3745-43c3-a413-f576095e023c, 9be4b1fd-5c0b-4e5c-8c39-df6b873b7d82", + "traceId": "b97eac937a84487fa15c9ea8166cdd15", + "evidence": "", + "checkedAt": "2026-08-08T07:56:44.807Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上传只生成待确认版本且不替换当前生效版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3ef2e6e5-3745-43c3-a413-f576095e023c, 9be4b1fd-5c0b-4e5c-8c39-df6b873b7d82", + "traceId": "b97eac937a84487fa15c9ea8166cdd15", + "evidence": "pending=PENDING_CONFIRMATION, activeBefore=2085991853294399490, activeAfterUpload=2085991853294399490", + "checkedAt": "2026-08-08T07:56:44.808Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询待确认版本渠道和价格预览", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085998623572144130" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1923a737-7c98-417b-8a7e-3c31b6d5b60e, 973933aa-f7f3-4039-98b8-45b2910868e3", + "traceId": "b763bf3ac20e420cb25ffa2edd2f9a90", + "evidence": "", + "checkedAt": "2026-08-08T07:56:44.879Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "详情与上传解析结果一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085998623572144130" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1923a737-7c98-417b-8a7e-3c31b6d5b60e, 973933aa-f7f3-4039-98b8-45b2910868e3", + "traceId": "b763bf3ac20e420cb25ffa2edd2f9a90", + "evidence": "versionId=2085998623572144130, channels=15, rates=2157, issues=2", + "checkedAt": "2026-08-08T07:56:44.879Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "下载原始 XLSX 且内容散列一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085998623572144130/source" + }, + "http": 200, + "code": null, + "message": "1343413 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "bf14d8d7-52de-4973-a8a6-041b1fd590ab, 4c3e7ad0-ed20-4e5f-951c-23d28ba810bb, 445383aa-0a77-42a2-b1b3-f08da26853f0", + "traceId": "73d5696c2a56408f95d6588556746857, 7b9059b7e7b0404a90a458515920a7c3", + "evidence": "bytes=1343413, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, zipMagic=true, sha256=3170fd3aa8795cd816ca9600f87a6a2a06b15d0cf6042d4592f33d4b30c7b8ab", + "checkedAt": "2026-08-08T07:56:44.973Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询启用的平台公共国内仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=200&status=ACTIVE&warehouseType=DOMESTIC" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ba3f1617-da4d-4ec2-bab0-0951b1cddfd3, ea959bda-992f-4c0e-86e7-94589a1d528f", + "traceId": "b46476f0afe141e183d4e8b9727f0dff", + "evidence": "", + "checkedAt": "2026-08-08T07:56:45.002Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询启用的平台公共海外仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=200&status=ACTIVE&warehouseType=OVERSEAS" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "030b7313-ade8-434e-938d-48e3e2038f66, 9af8eec1-7c0e-4bc7-ba6d-0a52cdf490ed", + "traceId": "7472a761c6ca4c3fa74a7b4dedc99647", + "evidence": "", + "checkedAt": "2026-08-08T07:56:45.033Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "国内起运仓和目的海外仓均精确映射", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=200&status=ACTIVE&warehouseType=OVERSEAS" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "030b7313-ade8-434e-938d-48e3e2038f66, 9af8eec1-7c0e-4bc7-ba6d-0a52cdf490ed", + "traceId": "7472a761c6ca4c3fa74a7b4dedc99647", + "evidence": "origins=CN-DONGGUAN-01->193000000000200002,CN-YIWU-01->193000000000200001, overseas=纽约仓->193000000000200004,洛杉矶仓->193000000000200003, missing=none", + "checkedAt": "2026-08-08T07:56:45.034Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "确认仓库映射并立即生效", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085998623572144130/publish" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bf0b7de0-40c4-442c-b2c7-16d111027305, a569c14a-4556-41d8-b187-81c1f0a444ca", + "traceId": "e9a23490a7c241c392272f84f1f7f9f8", + "evidence": "versionId=2085998623572144130, originMappings=2, overseasMappings=2", + "checkedAt": "2026-08-08T07:56:46.634Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "发布后价格版本为 ACTIVE 且无阻断", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085998623572144130/publish" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bf0b7de0-40c4-442c-b2c7-16d111027305, a569c14a-4556-41d8-b187-81c1f0a444ca", + "traceId": "e9a23490a7c241c392272f84f1f7f9f8", + "evidence": "status=ACTIVE, blocking=0, publishedAt=2026-08-08T15:56:45.466, channels=15, rates=2157", + "checkedAt": "2026-08-08T07:56:46.634Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "发布后回查当前生效和历史版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "46b4638f-6b1b-4839-8a7a-628d7883a7b6, e312a59e-bb41-49de-ac7f-410f289a30bc", + "traceId": "321f0c03fd4d47f68759e0df95799503", + "evidence": "", + "checkedAt": "2026-08-08T07:56:46.669Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "始终只有一份当前生效版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "46b4638f-6b1b-4839-8a7a-628d7883a7b6, e312a59e-bb41-49de-ac7f-410f289a30bc", + "traceId": "321f0c03fd4d47f68759e0df95799503", + "evidence": "active=2085998623572144130", + "checkedAt": "2026-08-08T07:56:46.669Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "上一生效版本已保留为历史版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "46b4638f-6b1b-4839-8a7a-628d7883a7b6, e312a59e-bb41-49de-ac7f-410f289a30bc", + "traceId": "321f0c03fd4d47f68759e0df95799503", + "evidence": "previous=2085991853294399490, superseded=true", + "checkedAt": "2026-08-08T07:56:46.669Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "查询当前生效价格版本详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085998623572144130" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3e7a1a42-c5c1-410a-9f1a-fb1da7b41da6, 666b3b4d-0399-49c0-9808-5d48987df8a4", + "traceId": "d28ecae59ddc472fa774a9e161516956", + "evidence": "", + "checkedAt": "2026-08-08T07:56:46.783Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "当前生效版本预览数据完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085998623572144130" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3e7a1a42-c5c1-410a-9f1a-fb1da7b41da6, 666b3b4d-0399-49c0-9808-5d48987df8a4", + "traceId": "d28ecae59ddc472fa774a9e161516956", + "evidence": "status=ACTIVE, channels=15, rates=2157", + "checkedAt": "2026-08-08T07:56:46.783Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "已生效版本禁止重复发布", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085998623572144130/publish" + }, + "http": 200, + "code": "A0409", + "message": "只有待确认上传记录可以确认并生效", + "requestId": "9128708d-2a86-4152-b38c-eacda4458963", + "traceId": "b285b14bc30549da90ae4b9fa1236293", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:56:46.816Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "重复发布被拒绝后回查版本状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c711fcd0-d089-45ae-8bf5-246d54ded22b, d67781bd-c2aa-4b65-86d6-4109a21f250a", + "traceId": "0b239615aeec4398a697d18c5be089f7", + "evidence": "", + "checkedAt": "2026-08-08T07:56:46.841Z" + }, + { + "module": "pricing", + "scenario": "price-book-lifecycle", + "name": "重复发布未改变唯一生效版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c711fcd0-d089-45ae-8bf5-246d54ded22b, d67781bd-c2aa-4b65-86d6-4109a21f250a", + "traceId": "0b239615aeec4398a697d18c5be089f7", + "evidence": "active=2085998623572144130", + "checkedAt": "2026-08-08T07:56:46.841Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "创建客户列表导出任务", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/export-tasks" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "88b4946f-43ed-4640-ad65-2fe4d1f22f7c, 5dfb12ba-a536-431b-9e35-af8071977987", + "traceId": "249a02d2daa248539b634de270f00686", + "evidence": "", + "checkedAt": "2026-08-08T07:56:46.882Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "导出任务创建字段正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/files/export-tasks" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "88b4946f-43ed-4640-ad65-2fe4d1f22f7c, 5dfb12ba-a536-431b-9e35-af8071977987", + "traceId": "249a02d2daa248539b634de270f00686", + "evidence": "taskId=2085998638505984001, status=PENDING", + "checkedAt": "2026-08-08T07:56:46.882Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "查询下载中心任务列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=20&exportType=CUSTOMER_LIST" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bdfe3bf0-4987-43fd-a863-012659ae95ac, 5c8ca095-b2b3-49a5-982d-caf27bfe6f8c", + "traceId": "6e981539655445e2902ac9fbed0d7be2", + "evidence": "", + "checkedAt": "2026-08-08T07:56:46.907Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "下载中心列表包含新任务", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=20&exportType=CUSTOMER_LIST" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "bdfe3bf0-4987-43fd-a863-012659ae95ac, 5c8ca095-b2b3-49a5-982d-caf27bfe6f8c", + "traceId": "6e981539655445e2902ac9fbed0d7be2", + "evidence": "records=17", + "checkedAt": "2026-08-08T07:56:46.907Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "轮询导出任务直到终态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/2085998638505984001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8d56f4d2-eb71-40e5-8807-3e9eeae7abb4, ac367e6e-00e2-48f1-9780-fc7f34a62b6f", + "traceId": "30c564ca8f884114ad12e7e3e67b5737", + "evidence": "status=SUCCEEDED, processedRows=0", + "checkedAt": "2026-08-08T07:56:50.993Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "查询导出任务详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/2085998638505984001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "837d7fd1-c5c4-41da-a8b4-caee4cb696a7, 2b810190-95f0-484f-b522-00afa6a30956", + "traceId": "b738eb6bb0084800b6ccd77ad9f96f3e", + "evidence": "", + "checkedAt": "2026-08-08T07:56:51.028Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "导出详情行数和文件元数据正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/2085998638505984001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "837d7fd1-c5c4-41da-a8b4-caee4cb696a7, 2b810190-95f0-484f-b522-00afa6a30956", + "traceId": "b738eb6bb0084800b6ccd77ad9f96f3e", + "evidence": "processedRows=0, sizeBytes=4067", + "checkedAt": "2026-08-08T07:56:51.028Z" + }, + { + "module": "downloads", + "scenario": null, + "name": "下载并校验客户列表 XLSX", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/2085998638505984001/download" + }, + "http": 200, + "code": null, + "message": "4067 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "7f1d6ac7-d086-40e7-86b3-339211c0e2ff, 4faa3fd5-e301-4025-a6a6-c6e539a29d5e", + "traceId": "1106750cb04d401aa1e4f29ef662ffac", + "evidence": "bytes=4067, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:56:51.056Z" + }, + { + "module": "inbound-weight-ocr", + "scenario": "weight-image-recognition-and-confirmation", + "name": "仅选择带本轮测试标记的可编辑入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085998620770349059?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9d028997-1933-4b93-9935-42d7b93efe20, a0051bc0-fb4c-4158-92ed-2c514d6958da", + "traceId": "0e64d5ae4ac0436798b6ccab4551e423", + "evidence": "tenantId=10001, inboundId=2085998620770349059, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T07:56:51.089Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9c166a1d-280f-4df2-8cce-bddb9b1a6116, 0715180b-3ae1-41f4-a909-f636a021b1b1", + "traceId": "4d4d4272ef024c0391439a7cfe19b670", + "evidence": "inboundId=2085998620770349059", + "checkedAt": "2026-08-08T07:56:51.118Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9c166a1d-280f-4df2-8cce-bddb9b1a6116, 0715180b-3ae1-41f4-a909-f636a021b1b1", + "traceId": "4d4d4272ef024c0391439a7cfe19b670", + "evidence": "existingResults=0, baselineWeight=null", + "checkedAt": "2026-08-08T07:56:51.118Z" + }, + { + "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/2085998620770349059" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "2715b18a-1717", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:56:51.138Z" + }, + { + "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/2085998620770349059" + }, + "http": 200, + "code": "A0400", + "message": "称重图片仅支持JPG、PNG、BMP", + "requestId": "70fce039-3e87-44ea-9739-ae0ee4511497", + "traceId": "3c0fd4649fb54a0e89f0ca0d1eab292f", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:56:51.164Z" + }, + { + "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/2085998620770349059" + }, + "http": 200, + "code": "A0400", + "message": "称重图片不能超过5MB", + "requestId": "e8184b55-fa72-4eca-9727-4f4848db52ea", + "traceId": "f0a3f71eb8cf4893a6ba6dfb518479dc", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:56:51.386Z" + }, + { + "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/2085998620770349059" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "41585fa9-4f97-470e-89ea-1f08181d25ea, b891f088-7f36-4457-b172-ee091d395ad3", + "traceId": "38cd11cede4e413dbc7b9744937e8c9e", + "evidence": "file=orig_1cf27695-b2c3-44b3-98e3-c0be8b80f79a.JPG, size=3701469", + "checkedAt": "2026-08-08T07:56:53.057Z" + }, + { + "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/2085998620770349059" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "41585fa9-4f97-470e-89ea-1f08181d25ea, b891f088-7f36-4457-b172-ee091d395ad3", + "traceId": "38cd11cede4e413dbc7b9744937e8c9e", + "evidence": "fileIdType=string, status=RECOGNIZED", + "checkedAt": "2026-08-08T07:56:53.057Z" + }, + { + "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/2085998620770349059" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "41585fa9-4f97-470e-89ea-1f08181d25ea, b891f088-7f36-4457-b172-ee091d395ad3", + "traceId": "38cd11cede4e413dbc7b9744937e8c9e", + "evidence": "status=RECOGNIZED, hasWeight=true, confidence=0.50972", + "checkedAt": "2026-08-08T07:56:53.057Z" + }, + { + "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/2085998620770349059/2085998660287004673/recognize" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "77037f9f-de9d-42fe-8d57-44e7106dcf95, 3ecbf40d-3d4d-4c4c-b29b-07940f445ccb", + "traceId": "2d9979dd17294dd9bb498461683c8be4", + "evidence": "fileId=2085998660287004673", + "checkedAt": "2026-08-08T07:56:54.008Z" + }, + { + "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/2085998620770349059/2085998660287004673/recognize" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "77037f9f-de9d-42fe-8d57-44e7106dcf95, 3ecbf40d-3d4d-4c4c-b29b-07940f445ccb", + "traceId": "2d9979dd17294dd9bb498461683c8be4", + "evidence": "sameFile=true, status=RECOGNIZED", + "checkedAt": "2026-08-08T07:56:54.008Z" + }, + { + "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/2085998620770349059/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "46fc27d6-b6c3-4f47-8e68-36047f8f8b84, 2547df01-ad78-48b8-b5fb-b41f26938f56", + "traceId": "d53c83a0f28b47399cdc9546fdfff7ba", + "evidence": "fileId=2085998660287004673", + "checkedAt": "2026-08-08T07:56:54.035Z" + }, + { + "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/2085998620770349059/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "46fc27d6-b6c3-4f47-8e68-36047f8f8b84, 2547df01-ad78-48b8-b5fb-b41f26938f56", + "traceId": "d53c83a0f28b47399cdc9546fdfff7ba", + "evidence": "resultIdType=string, fileIdType=string, version=0", + "checkedAt": "2026-08-08T07:56:54.035Z" + }, + { + "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/2085998620770349059/2085998660287004673" + }, + "http": 200, + "code": null, + "message": "3701469 bytes (image/jpeg)", + "requestId": "6d1c5f12-0e7e-4dd7-935b-7178794f4742, 2ef92290-47c3-42e9-b3fc-01d7d27a6bc0", + "traceId": "1db2475ff97c43419695343495d14144", + "evidence": "contentType=image/jpeg, bytes=3701469", + "checkedAt": "2026-08-08T07:56:54.181Z" + }, + { + "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/2085998620770349059/2085998660287004673/thumbnail" + }, + "http": 200, + "code": null, + "message": "18677 bytes (image/jpeg)", + "requestId": "249c43f9-4c86-41eb-88c3-6b1ede5e618c, 8261e123-3440-42dc-9044-f136ccc277ae", + "traceId": "d78262344ec1403991a66f778d25ec31", + "evidence": "contentType=image/jpeg, bytes=18677, dimensions=240x320", + "checkedAt": "2026-08-08T07:56:54.538Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "34b7b172-dd16-4a4c-8444-355cda31d1f9, a6c51fe2-5463-4f9d-99aa-57401412d1fd", + "traceId": "b1f83c1322b54ae18303ae8c33e18383", + "evidence": "inboundId=2085998620770349059", + "checkedAt": "2026-08-08T07:56:54.567Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "34b7b172-dd16-4a4c-8444-355cda31d1f9, a6c51fe2-5463-4f9d-99aa-57401412d1fd", + "traceId": "b1f83c1322b54ae18303ae8c33e18383", + "evidence": "resultFound=true, baselineCount=0, currentCount=1", + "checkedAt": "2026-08-08T07:56:54.567Z" + }, + { + "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/2085998620770349059/weight-results/2085998668526694402/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0409", + "message": "数据版本已变化,请刷新后重试", + "requestId": "faa62bff-e244-4a1f-aa69-40eb67edcaff", + "traceId": "9fa3b4970a0c49a1b637346c55478a1f", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:56:54.595Z" + }, + { + "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/2085998620770349059/weight-results/2085998668526694402/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ba4cc38d-08e7-429c-bb2c-63600d1c5755, bd6ab4b7-6fec-46f6-9d0f-dcdc97a48932", + "traceId": "ddf4f616bd15410992fa0fc0afa4e213", + "evidence": "usedOriginal=true", + "checkedAt": "2026-08-08T07:56:54.636Z" + }, + { + "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/2085998620770349059/weight-results/2085998668526694402/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ba4cc38d-08e7-429c-bb2c-63600d1c5755, bd6ab4b7-6fec-46f6-9d0f-dcdc97a48932", + "traceId": "ddf4f616bd15410992fa0fc0afa4e213", + "evidence": "status=CONFIRMED, version=1, finalKg=285.5", + "checkedAt": "2026-08-08T07:56:54.637Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f7008755-a5d3-4cfa-a69e-b987b51245f7, 2b6a9422-d313-4931-ac80-f2025d0e2cc5", + "traceId": "944b00fc462c4cdab64f0f9c8cd4048a", + "evidence": "inboundId=2085998620770349059", + "checkedAt": "2026-08-08T07:56:54.658Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f7008755-a5d3-4cfa-a69e-b987b51245f7, 2b6a9422-d313-4931-ac80-f2025d0e2cc5", + "traceId": "944b00fc462c4cdab64f0f9c8cd4048a", + "evidence": "baseline=null, added=285.5, actual=285.5", + "checkedAt": "2026-08-08T07:56:54.658Z" + }, + { + "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/2085998620770349059/weight-results/2085998668526694402?tenantId=10001&version=0" + }, + "http": 200, + "code": "A0409", + "message": "数据版本已变化,请刷新后重试", + "requestId": "da0f9b6b-3251-4b52-8afc-792e88e02ae5", + "traceId": "79670798cbb246618b5dd2793d03fa7f", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:56:54.691Z" + }, + { + "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/2085998620770349059/weight-results/2085998668526694402?tenantId=10001&version=1" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cd74894e-344e-460d-ad60-237c656330e9, 71ebdc23-bbc4-47ed-b91d-6edc1911fdfd", + "traceId": "9c158d915b654cc2ba634db4497ad9e5", + "evidence": "resultId=2085998668526694402, version=1", + "checkedAt": "2026-08-08T07:56:54.739Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "96ebc5ec-c429-4910-8e0a-50932e35f638, 9d39a1f9-09e5-436a-822a-16f23d923549", + "traceId": "8775304e8b444c628439be03a80ab3a2", + "evidence": "inboundId=2085998620770349059", + "checkedAt": "2026-08-08T07:56:54.769Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "96ebc5ec-c429-4910-8e0a-50932e35f638, 9d39a1f9-09e5-436a-822a-16f23d923549", + "traceId": "8775304e8b444c628439be03a80ab3a2", + "evidence": "resultMissing=true, baseline=null, actual=null", + "checkedAt": "2026-08-08T07:56:54.769Z" + }, + { + "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/2085998620770349059/2085998660287004673" + }, + "http": 200, + "code": "A0404", + "message": "称重图片不存在", + "requestId": "1d5c0e65-49d0-4e5e-b53f-8dd1a6b72730", + "traceId": "67e8163f7c3a4f8a90ff1449ac54fa15", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:56:54.799Z" + }, + { + "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/2085998620770349059" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c11eb665-4d3d-4054-bcd1-aae507f0e510, 57d940ca-8ae2-4238-b150-6ac83b732956", + "traceId": "678800ecf929453794d6bee80bf1f3b1", + "evidence": "file=orig_1cf27695-b2c3-44b3-98e3-c0be8b80f79a.JPG, size=3701469", + "checkedAt": "2026-08-08T07:56:56.102Z" + }, + { + "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/2085998620770349059" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c11eb665-4d3d-4054-bcd1-aae507f0e510, 57d940ca-8ae2-4238-b150-6ac83b732956", + "traceId": "678800ecf929453794d6bee80bf1f3b1", + "evidence": "fileIdType=string, status=RECOGNIZED", + "checkedAt": "2026-08-08T07:56:56.102Z" + }, + { + "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/2085998620770349059" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c11eb665-4d3d-4054-bcd1-aae507f0e510, 57d940ca-8ae2-4238-b150-6ac83b732956", + "traceId": "678800ecf929453794d6bee80bf1f3b1", + "evidence": "status=RECOGNIZED, hasWeight=true, confidence=0.50972", + "checkedAt": "2026-08-08T07:56:56.102Z" + }, + { + "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/2085998620770349059/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f83e8ca3-8937-4d1a-97b8-f2cf6c8973ac, cfe49fbb-3c66-4ee7-9f07-dfdc0d067a3b", + "traceId": "b94ff7228e1b4633a8bd8aec622faea2", + "evidence": "fileId=2085998673654251521", + "checkedAt": "2026-08-08T07:56:56.148Z" + }, + { + "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/2085998620770349059/weight-results?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f83e8ca3-8937-4d1a-97b8-f2cf6c8973ac, cfe49fbb-3c66-4ee7-9f07-dfdc0d067a3b", + "traceId": "b94ff7228e1b4633a8bd8aec622faea2", + "evidence": "resultIdType=string, fileIdType=string, version=0", + "checkedAt": "2026-08-08T07:56:56.148Z" + }, + { + "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/2085998620770349059/weight-results/2085998677380870146/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "adjustedWeightValue: must be greater than or equal to 0.001", + "requestId": "29a0c6b5-ca8d-4be4-853c-e47a919838a0", + "traceId": "591f4518b1854cb290c6d148ac4a52f1", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:56:56.189Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8c40aea1-b8f2-4527-aa42-ff7aa9905045, ce30dbb3-667c-411d-bcec-9614286dda0e", + "traceId": "88f2197caed2425d80bd21bed0230a0b", + "evidence": "inboundId=2085998620770349059", + "checkedAt": "2026-08-08T07:56:56.216Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8c40aea1-b8f2-4527-aa42-ff7aa9905045, ce30dbb3-667c-411d-bcec-9614286dda0e", + "traceId": "88f2197caed2425d80bd21bed0230a0b", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T07:56:56.216Z" + }, + { + "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/2085998620770349059/weight-results/2085998677380870146/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "adjustedWeightValue: must be greater than or equal to 0.001", + "requestId": "7d03e900-cfa3-40b3-8b3e-306514541fb0", + "traceId": "1f7a918073f6417f91760fe82bad6405", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:56:56.247Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "52577bcd-755d-4be4-a7e4-4dc59ae776c4, 04ad36ac-0dc0-4a60-9d08-84500b81afa7", + "traceId": "fffc3d5947bf42ef875a09ad4da8b0e9", + "evidence": "inboundId=2085998620770349059", + "checkedAt": "2026-08-08T07:56:56.272Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "52577bcd-755d-4be4-a7e4-4dc59ae776c4, 04ad36ac-0dc0-4a60-9d08-84500b81afa7", + "traceId": "fffc3d5947bf42ef875a09ad4da8b0e9", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T07:56:56.272Z" + }, + { + "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/2085998620770349059/weight-results/2085998677380870146/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "换算后重量不能小于 0.001 KG", + "requestId": "c23fa490-1cb1-4853-810e-7c156e514fb8", + "traceId": "a6c900f5f8a9463f985fd8850a107361", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:56:56.295Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d5a65d9f-1cfa-4ba2-847e-4b62fd7fa1a5, 874aceae-ea8c-446b-b5c8-9659c1198e45", + "traceId": "2edf16e8285e4ce5a1390f28d8a0d4e4", + "evidence": "inboundId=2085998620770349059", + "checkedAt": "2026-08-08T07:56:56.327Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d5a65d9f-1cfa-4ba2-847e-4b62fd7fa1a5, 874aceae-ea8c-446b-b5c8-9659c1198e45", + "traceId": "2edf16e8285e4ce5a1390f28d8a0d4e4", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T07:56:56.327Z" + }, + { + "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/2085998620770349059/weight-results/2085998677380870146/confirm?tenantId=10001" + }, + "http": 200, + "code": "A0422", + "message": "adjustedWeightValue: numeric value out of bounds (<15 digits>.<3 digits> expected)", + "requestId": "bfc58cd3-642a-477d-9c8f-6acabf11b944", + "traceId": "c5368c54becb4a24b8f1eddaac10c188", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:56:56.355Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "da7f8888-3d5d-48ce-90a6-b99300444969, 1a15e3e8-0ef7-440a-816e-b99d5f68d4e7", + "traceId": "5d42b90bd6074e7f9548eeea8694b815", + "evidence": "inboundId=2085998620770349059", + "checkedAt": "2026-08-08T07:56:56.385Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "da7f8888-3d5d-48ce-90a6-b99300444969, 1a15e3e8-0ef7-440a-816e-b99d5f68d4e7", + "traceId": "5d42b90bd6074e7f9548eeea8694b815", + "evidence": "version=0, status=NEEDS_MANUAL", + "checkedAt": "2026-08-08T07:56:56.385Z" + }, + { + "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/2085998620770349059/weight-results/2085998677380870146/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b4b0b206-2dca-4874-813d-3b39e714180a, 0e29ae0e-83f3-4f8c-ad41-c7f379a8bd1d", + "traceId": "b9caa5801e8a42a38295d4468899a2e1", + "evidence": "adjusted=10.125 LB", + "checkedAt": "2026-08-08T07:56:56.426Z" + }, + { + "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/2085998620770349059/weight-results/2085998677380870146/confirm?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b4b0b206-2dca-4874-813d-3b39e714180a, 0e29ae0e-83f3-4f8c-ad41-c7f379a8bd1d", + "traceId": "b9caa5801e8a42a38295d4468899a2e1", + "evidence": "adjusted=10.125 LB, finalKg=4.593, expectedKg=4.593", + "checkedAt": "2026-08-08T07:56:56.426Z" + }, + { + "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/2085998620770349059/weight-results/2085998677380870146?tenantId=10001&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7eefbcfa-309e-4578-9de5-42ef7ed08d92, 50e9c648-dc6e-474d-a6d2-7826a48f9461", + "traceId": "0bcc641d791943599fc9a4a6da2a3e98", + "evidence": "resultId=2085998677380870146, version=2", + "checkedAt": "2026-08-08T07:56:56.464Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9414971f-27f4-4d2f-b546-32a4b9f4eb90, 7498c12d-0c22-49ca-81d6-ac169a68bfe9", + "traceId": "d56a7d7eb9514a009ba359554fea9ec8", + "evidence": "inboundId=2085998620770349059", + "checkedAt": "2026-08-08T07:56:56.496Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9414971f-27f4-4d2f-b546-32a4b9f4eb90, 7498c12d-0c22-49ca-81d6-ac169a68bfe9", + "traceId": "d56a7d7eb9514a009ba359554fea9ec8", + "evidence": "resultMissing=true, baseline=null, actual=null", + "checkedAt": "2026-08-08T07:56:56.496Z" + }, + { + "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/2085998620770349059/2085998673654251521" + }, + "http": 200, + "code": "A0404", + "message": "称重图片不存在", + "requestId": "f3bc258b-f2fc-4611-8006-407088df377d", + "traceId": "b3697e04912241119fbfe89897f64c93", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:56:56.517Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "00bdcb36-4d68-42fb-82c7-f139ef1932b0, 43b6f47b-261a-47a9-a83a-f506cf10b36b", + "traceId": "197a7288435c4a85a960ccf7b9a536c1", + "evidence": "inboundId=2085998620770349059", + "checkedAt": "2026-08-08T07:56:56.543Z" + }, + { + "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/2085998620770349059/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "00bdcb36-4d68-42fb-82c7-f139ef1932b0, 43b6f47b-261a-47a9-a83a-f506cf10b36b", + "traceId": "197a7288435c4a85a960ccf7b9a536c1", + "evidence": "leftovers=0, baseline=null, actual=null", + "checkedAt": "2026-08-08T07:56:56.543Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 测试账号登录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/auth/login" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6e7731fc-0732-493a-a33b-d98307af9200, 8d687cb9-be6a-47fc-a471-e8736f2c9b6f", + "traceId": "d3fd836dc9ec412db36806f748ba835b", + "evidence": "username=merchant_admin", + "checkedAt": "2026-08-08T07:56:56.872Z" + }, + { + "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": "51790fd1-df6d-450e-8c04-e5db83a31b78, 42265502-396e-4ec7-a950-9a393347ca57", + "traceId": "e7ba758f44e64f7b9f5ebf2a91ea2163", + "evidence": "", + "checkedAt": "2026-08-08T07:56:56.894Z" + }, + { + "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": "51790fd1-df6d-450e-8c04-e5db83a31b78, 42265502-396e-4ec7-a950-9a393347ca57", + "traceId": "e7ba758f44e64f7b9f5ebf2a91ea2163", + "evidence": "tenantId=10001, status=ACTIVE", + "checkedAt": "2026-08-08T07:56:56.895Z" + }, + { + "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": "b8280ee5-674d-4b3d-9a1b-5949d8cf7457, 74d7fc0b-c28f-47ad-97bd-cad28b12b935", + "traceId": "0e0edf1a57044593a98beabc17797e10", + "evidence": "tenantId=10001", + "checkedAt": "2026-08-08T07:56:56.912Z" + }, + { + "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": "b8280ee5-674d-4b3d-9a1b-5949d8cf7457, 74d7fc0b-c28f-47ad-97bd-cad28b12b935", + "traceId": "0e0edf1a57044593a98beabc17797e10", + "evidence": "types=SMALL,MEDIUM,LARGE,EXTRA_LARGE", + "checkedAt": "2026-08-08T07:56:56.912Z" + }, + { + "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": "2ea4fe00-a4f8-491c-9575-eaeb7c96cb6e, 0a40e1a7-a1f3-4cc9-b4a7-8eac68e38992", + "traceId": "5675e1d34a2f49578e434e051d2d3485", + "evidence": "", + "checkedAt": "2026-08-08T07:56:56.946Z" + }, + { + "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": "2ea4fe00-a4f8-491c-9575-eaeb7c96cb6e, 0a40e1a7-a1f3-4cc9-b4a7-8eac68e38992", + "traceId": "5675e1d34a2f49578e434e051d2d3485", + "evidence": "count=2", + "checkedAt": "2026-08-08T07:56:56.946Z" + }, + { + "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": "7d465b92-0b7f-4a1d-9abf-469b7d3c8f8c, a5c9a9a7-8610-44e3-b110-6792314cd61b", + "traceId": "a797df76e2744b708012e15da3abfd25", + "evidence": "", + "checkedAt": "2026-08-08T07:56:56.996Z" + }, + { + "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": "7d465b92-0b7f-4a1d-9abf-469b7d3c8f8c, a5c9a9a7-8610-44e3-b110-6792314cd61b", + "traceId": "a797df76e2744b708012e15da3abfd25", + "evidence": "count=200", + "checkedAt": "2026-08-08T07:56:56.996Z" + }, + { + "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": "6f4d0c71-de53-48a3-9699-c55153429abc, 6c714170-836e-43be-9c17-61bd1f8fc254", + "traceId": "c05d77ee52d04a20ac89fd171885f562", + "evidence": "", + "checkedAt": "2026-08-08T07:56:57.025Z" + }, + { + "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": "6f4d0c71-de53-48a3-9699-c55153429abc, 6c714170-836e-43be-9c17-61bd1f8fc254", + "traceId": "c05d77ee52d04a20ac89fd171885f562", + "evidence": "count=15", + "checkedAt": "2026-08-08T07:56:57.025Z" + }, + { + "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": "f57e175b-e5c8-4d5f-80f8-e526cbe21bf1, 2b544abd-e476-490e-ac73-b22562315af1", + "traceId": "d7f1a9e79e874bcfbf6079747514ad91", + "evidence": "", + "checkedAt": "2026-08-08T07:56:57.052Z" + }, + { + "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": "4d4a4927-3083-4aeb-bc0f-f4929dad477e, 06c6887a-07eb-4be6-9a94-911fbfcc8314", + "traceId": "e96bf5fe9226419a874e69cb57c3b7b2", + "evidence": "contentType=image/png", + "checkedAt": "2026-08-08T07:56:57.088Z" + }, + { + "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": "4d4a4927-3083-4aeb-bc0f-f4929dad477e, 06c6887a-07eb-4be6-9a94-911fbfcc8314", + "traceId": "e96bf5fe9226419a874e69cb57c3b7b2", + "evidence": "fileIdType=string, contentType=image/png", + "checkedAt": "2026-08-08T07:56:57.088Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Client 可下载本轮产品图片", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/files/product-images/2085998681334022145" + }, + "http": 200, + "code": null, + "message": null, + "requestId": "80883000-3689-4234-bb79-3b828fe38bc2, d80e702e-71f6-4bb1-a6cf-266841118b20", + "traceId": "67844a07048648bdb6cef5f88270c8a9", + "evidence": "bytes=68, contentType=image/png", + "checkedAt": "2026-08-08T07:56:57.114Z" + }, + { + "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": "52b99b1d-c851-4fdd-a72c-4469f624bfe9, 1d1c35d4-bfdf-4f5b-a25f-563f7cf756c4", + "traceId": "b3d223fdda2a4a85a7e8b395bd4b8b60", + "evidence": "marker=ADMIN-API-20260808075633661-MOJIA", + "checkedAt": "2026-08-08T07:56:57.183Z" + }, + { + "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": "5e9090f4-c729-437e-b225-f93ed773bd8d, c4a9dec7-ecc8-44d4-988b-2542ecd330c7", + "traceId": "df01cd59eace47c38afc2ca5c30bb933", + "evidence": "", + "checkedAt": "2026-08-08T07:56:57.213Z" + }, + { + "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": "5e9090f4-c729-437e-b225-f93ed773bd8d, c4a9dec7-ecc8-44d4-988b-2542ecd330c7", + "traceId": "df01cd59eace47c38afc2ca5c30bb933", + "evidence": "orderId=2085998681711509506, replayedId=2085998681711509506", + "checkedAt": "2026-08-08T07:56:57.213Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 查询隔离订单草稿", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085998681711509506" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "90cf8ba5-df8f-4347-8a0e-00fb73b3628f, 49cc0b38-c8b1-4d24-bf69-040af64246c5", + "traceId": "effeb2d093f342d4a2ad49d93ab0c411", + "evidence": "", + "checkedAt": "2026-08-08T07:56:57.241Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 草稿身份、marker 和状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085998681711509506" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "90cf8ba5-df8f-4347-8a0e-00fb73b3628f, 49cc0b38-c8b1-4d24-bf69-040af64246c5", + "traceId": "effeb2d093f342d4a2ad49d93ab0c411", + "evidence": "orderNo=FL2085998681711509506, status=DRAFT", + "checkedAt": "2026-08-08T07:56:57.241Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085998681711509506" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "90cf8ba5-df8f-4347-8a0e-00fb73b3628f, 49cc0b38-c8b1-4d24-bf69-040af64246c5", + "traceId": "effeb2d093f342d4a2ad49d93ab0c411", + "evidence": "cargoes=4, imageFileId=2085998681334022145", + "checkedAt": "2026-08-08T07:56:57.241Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 提交隔离订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/merchant/v1/orders/first-leg/2085998681711509506/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "236d4134-5297-4a84-a1c2-3200566e193e, 16431b53-4cb9-40ad-a39c-01f8b298f14b", + "traceId": "b2945ffde1a14b2ebf1dce8b0d3ef82c", + "evidence": "orderId=2085998681711509506", + "checkedAt": "2026-08-08T07:56:57.306Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 回查已提交订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085998681711509506" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f3c8b328-0c17-4ef4-a7c9-2d65890149fa, 2844ce44-0e16-4368-976c-36bf5119479b", + "traceId": "3c063baa27e04901a938fb205fa21e95", + "evidence": "", + "checkedAt": "2026-08-08T07:56:57.329Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Client 订单已进入待审核状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/merchant/v1/orders/first-leg/2085998681711509506" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f3c8b328-0c17-4ef4-a7c9-2d65890149fa, 2844ce44-0e16-4368-976c-36bf5119479b", + "traceId": "3c063baa27e04901a938fb205fa21e95", + "evidence": "status=SUBMITTED", + "checkedAt": "2026-08-08T07:56:57.329Z" + }, + { + "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=FL2085998681711509506" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "73bcfdb4-cf9a-4168-91ee-54d0f24c6f8a, bc5689d7-d864-482c-9311-98137826bc94", + "traceId": "77197a514d1a472899198f68f364e034", + "evidence": "", + "checkedAt": "2026-08-08T07:56:57.374Z" + }, + { + "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=FL2085998681711509506" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "73bcfdb4-cf9a-4168-91ee-54d0f24c6f8a, bc5689d7-d864-482c-9311-98137826bc94", + "traceId": "77197a514d1a472899198f68f364e034", + "evidence": "orderId=2085998681711509506, found=true", + "checkedAt": "2026-08-08T07:56:57.374Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询统一订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085998681711509506?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0c18842f-5b00-420d-925f-4234db5086fc, 529b398b-83f9-4a89-ab4d-93dbfb12483a", + "traceId": "dfd99eda138a47f182136862375ec4c0", + "evidence": "", + "checkedAt": "2026-08-08T07:56:57.397Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 统一订单详情身份与待审核状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085998681711509506?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0c18842f-5b00-420d-925f-4234db5086fc, 529b398b-83f9-4a89-ab4d-93dbfb12483a", + "traceId": "dfd99eda138a47f182136862375ec4c0", + "evidence": "mainStatus=PENDING_REVIEW, timeline=2", + "checkedAt": "2026-08-08T07:56:57.397Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085998681711509506&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "85a75644-d321-49e4-9409-06bd2e436fe5, 0b3fe6e1-cc7e-41bf-ba9a-9ef0751dbb46", + "traceId": "f1f9b473e6c44162b091b7cfbb5c0d99", + "evidence": "", + "checkedAt": "2026-08-08T07:56:57.420Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单列表只核对本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg?tenantId=10001&keyword=FL2085998681711509506&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "85a75644-d321-49e4-9409-06bd2e436fe5, 0b3fe6e1-cc7e-41bf-ba9a-9ef0751dbb46", + "traceId": "f1f9b473e6c44162b091b7cfbb5c0d99", + "evidence": "orderId=2085998681711509506, found=true", + "checkedAt": "2026-08-08T07:56:57.420Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询头程订单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085998681711509506?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ce2958cc-31c9-4ee4-a1b1-b9118e9f6d40, 47e78ac6-ec05-464f-97d7-001c156c5cab", + "traceId": "45ec46bcb16542a5a3e44850ee4d8eac", + "evidence": "", + "checkedAt": "2026-08-08T07:56:57.456Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 头程订单详情聚合结构完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085998681711509506?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ce2958cc-31c9-4ee4-a1b1-b9118e9f6d40, 47e78ac6-ec05-464f-97d7-001c156c5cab", + "traceId": "45ec46bcb16542a5a3e44850ee4d8eac", + "evidence": "cargoes=4, history=2", + "checkedAt": "2026-08-08T07:56:57.456Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "四箱型产品字段及图片契约完整回显", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085998681711509506?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ce2958cc-31c9-4ee4-a1b1-b9118e9f6d40, 47e78ac6-ec05-464f-97d7-001c156c5cab", + "traceId": "45ec46bcb16542a5a3e44850ee4d8eac", + "evidence": "cargoes=4, imageFileId=2085998681334022145", + "checkedAt": "2026-08-08T07:56:57.456Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 为本轮订单添加内部备注", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085998681711509506/internal-notes?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "248b4168-f3b1-45b0-a66b-97856f0070af, 3f597195-8dc8-4ff8-8438-2ba21e9ddfa6", + "traceId": "98b686100bcb4794a387b19a78b878d6", + "evidence": "", + "checkedAt": "2026-08-08T07:56:57.489Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 审核通过本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085998681711509506/approve?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9c4495e0-712d-4f54-b7dc-0a8109bf3dec, 6fbda64e-2047-4d12-aea2-44b210fbb709", + "traceId": "b408d02a1f20432784ae6350d8add9eb", + "evidence": "orderId=2085998681711509506", + "checkedAt": "2026-08-08T07:56:57.523Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "审核后生成隔离入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/2085998681711509506?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "74122efc-d926-4373-872d-703ba3a12607, 5df89014-0c03-4cd0-9fd6-a8b993b06349", + "traceId": "5250e94b48fc408a98a9dee88ce8d4b5", + "evidence": "inboundId=2085998683798155266", + "checkedAt": "2026-08-08T07:56:58.603Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮入库单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085998683798155266?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6276a0ad-fb78-47fc-9145-c428158bded9, 237265c9-405a-4488-8556-9610496a2f11", + "traceId": "f2544e78db4044fb8a9e20f19f834c9e", + "evidence": "inboundId=2085998683798155266", + "checkedAt": "2026-08-08T07:56:58.640Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "隔离入库单 marker 来源与可测量状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085998683798155266?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6276a0ad-fb78-47fc-9145-c428158bded9, 237265c9-405a-4488-8556-9610496a2f11", + "traceId": "f2544e78db4044fb8a9e20f19f834c9e", + "evidence": "markerFound=true, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T07:56:58.640Z" + }, + { + "module": "orders", + "scenario": null, + "name": "入库单详情包含托盘库位、文件、备注和状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085998683798155266?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6276a0ad-fb78-47fc-9145-c428158bded9, 237265c9-405a-4488-8556-9610496a2f11", + "traceId": "f2544e78db4044fb8a9e20f19f834c9e", + "evidence": "inboundId=2085998683798155266, history=1", + "checkedAt": "2026-08-08T07:56:58.640Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询入库单列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085998681711509506&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5479c6f4-a61e-4357-bac6-9f0a4b5ab4f0, fff82eeb-f5ba-45a3-bee2-bbf0029f7eaa", + "traceId": "ca5f0ea48b304110aae91907e9feb1a5", + "evidence": "", + "checkedAt": "2026-08-08T07:56:58.672Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 入库单列表只核对本轮入库单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds?tenantId=10001&inboundCode=RK-2085998681711509506&page=1&size=100" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5479c6f4-a61e-4357-bac6-9f0a4b5ab4f0, fff82eeb-f5ba-45a3-bee2-bbf0029f7eaa", + "traceId": "ca5f0ea48b304110aae91907e9feb1a5", + "evidence": "inboundId=2085998683798155266, total=1", + "checkedAt": "2026-08-08T07:56:58.672Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "Admin 查询本轮订单履约任务", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085998681711509506?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "eebb30ad-a50a-4441-bd6e-da800dc76bba, 71541651-63fc-4211-9f68-dd86fceac07c", + "traceId": "299f6886f2a34d33b16d8955c32ccbe2", + "evidence": "新订单应生成可查询的履约任务", + "checkedAt": "2026-08-08T07:56:58.700Z" + }, + { + "module": "orders", + "scenario": "isolated-order-chain", + "name": "履约任务与本轮订单和客户一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/by-order/2085998681711509506?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "eebb30ad-a50a-4441-bd6e-da800dc76bba, 71541651-63fc-4211-9f68-dd86fceac07c", + "traceId": "299f6886f2a34d33b16d8955c32ccbe2", + "evidence": "taskId=2085998683798155265, status=PENDING_ASSIGNMENT", + "checkedAt": "2026-08-08T07:56:58.700Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 查询本轮履约任务分配历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085998683798155265/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cf8a5dc3-6009-4013-b822-ff63743973a9, a32482bb-864c-415b-9f68-08faa65905c0", + "traceId": "0dc81649ff0c475aa8b9e6b3ba43fef4", + "evidence": "", + "checkedAt": "2026-08-08T07:56:58.732Z" + }, + { + "module": "orders", + "scenario": null, + "name": "履约分配历史分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/tasks/2085998683798155265/assignment-history?tenantId=10001&page=1&size=20" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cf8a5dc3-6009-4013-b822-ff63743973a9, a32482bb-864c-415b-9f68-08faa65905c0", + "traceId": "0dc81649ff0c475aa8b9e6b3ba43fef4", + "evidence": "taskId=2085998683798155265, total=0", + "checkedAt": "2026-08-08T07:56:58.732Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 受理本轮订单", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085998681711509506/accept?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "11352163-42a6-40a0-bdc6-144260e809fe, 33ef9d05-696e-40f3-92bd-d60333e9d2b3", + "traceId": "aefc7a40b0ef4b0ba816c175cccf45f3", + "evidence": "", + "checkedAt": "2026-08-08T07:56:58.768Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 启动本轮订单履约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/orders/first-leg/2085998681711509506/start?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d2727c27-0005-4d44-bd76-7a019af5f8cf, 601ea098-e45c-4263-9776-b8b2654e78fe", + "traceId": "9c32fda0156040f1845858f462252f27", + "evidence": "", + "checkedAt": "2026-08-08T07:56:58.799Z" + }, + { + "module": "orders", + "scenario": null, + "name": "Admin 回查本轮订单履约状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085998681711509506?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e3d09efc-1923-404c-9da1-8d13ccc9c00a, d7d25243-7cd7-45f4-a899-e8d99f81e43a", + "traceId": "b6bd1c3633384d88be04faeac11324fa", + "evidence": "", + "checkedAt": "2026-08-08T07:56:58.827Z" + }, + { + "module": "orders", + "scenario": null, + "name": "本轮订单已进入处理中且保留状态历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/first-leg/2085998681711509506?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e3d09efc-1923-404c-9da1-8d13ccc9c00a, d7d25243-7cd7-45f4-a899-e8d99f81e43a", + "traceId": "b6bd1c3633384d88be04faeac11324fa", + "evidence": "status=PROCESSING, history=5", + "checkedAt": "2026-08-08T07:56:58.827Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "查询隔离入库单详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085998683798155266?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2285900e-1c01-479b-ab15-695970592ca9, aa0e932d-68a5-439e-b7e0-e98d4311fc03", + "traceId": "88416523a71446269831ebf77d0b280b", + "evidence": "inboundId=2085998683798155266, tenantId=10001", + "checkedAt": "2026-08-08T07:56:58.854Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "隔离入库单身份与可测量状态正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085998683798155266?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2285900e-1c01-479b-ab15-695970592ca9, aa0e932d-68a5-439e-b7e0-e98d4311fc03", + "traceId": "88416523a71446269831ebf77d0b280b", + "evidence": "identity=true, status=WAIT_MEASURE", + "checkedAt": "2026-08-08T07:56:58.855Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "生成箱唛 PDF 并冻结稳定箱码", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/inbounds/2085998683798155266/carton-label-pdf?tenantId=10001" + }, + "http": 200, + "code": null, + "message": "13926 bytes (application/pdf)", + "requestId": "aff5bdad-a6c2-4416-9dca-afe3a9ddd1cb, dbba5378-d4f0-4afa-87ac-35ab4d6df8d3, 7d513135-aba3-4663-8541-2b19a547a1a0", + "traceId": "97e05d0d0333468c9913b7bc8758d840, a18b088607474cb0b05ec823cf182182", + "evidence": "contentType=application/pdf, bytes=13926", + "checkedAt": "2026-08-08T07:56:58.989Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "首次打印后回查冻结箱数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085998683798155266?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3c8cf163-9ece-4ab8-b3bc-7d89214c2684, 66831ca2-435b-4846-a56a-ea7df4da0209", + "traceId": "c896bec84e3045d1a6a40280061433e0", + "evidence": "", + "checkedAt": "2026-08-08T07:56:59.012Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "首次打印按订单货物冻结原始总箱数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085998683798155266?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "3c8cf163-9ece-4ab8-b3bc-7d89214c2684, 66831ca2-435b-4846-a56a-ea7df4da0209", + "traceId": "c896bec84e3045d1a6a40280061433e0", + "evidence": "inboundCodeStable=true, totalPackageCount=4", + "checkedAt": "2026-08-08T07:56:59.012Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "重复整单打印复用已冻结箱码映射", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/inbounds/2085998683798155266/carton-label-pdf?tenantId=10001" + }, + "http": 200, + "code": null, + "message": "13926 bytes (application/pdf)", + "requestId": "80308987-b647-405a-8f2d-a33b7adef263, 4c207740-0714-46e8-a58a-ec28c82e2f92, 29567853-8099-42c2-a598-7d96a3bf1117", + "traceId": "11100dc4fd1045778752f164081ed1e7, 9c6ab4831ef84c0e839861f4c7cefe8b", + "evidence": "boxCode=RK-2085998681711509506#4-1, contentType=application/pdf, bytes=13926", + "checkedAt": "2026-08-08T07:56:59.140Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "指定第1箱补打复用已冻结箱码映射", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/inbounds/2085998683798155266/carton-label-pdf?tenantId=10001&cartonIndex=1" + }, + "http": 200, + "code": null, + "message": "7682 bytes (application/pdf)", + "requestId": "15346324-10dc-4991-9d62-4cdcd198099e, f0dff1f0-70ab-4972-9d4b-5d51e23c3fa1, 0594b9f7-4bb3-4510-b9cd-7177745aba8f", + "traceId": "c29db344a8d243d996edfdf15d965a32, 84ec7d577c254f5daf2d829e04bb6277", + "evidence": "boxCode=RK-2085998681711509506#4-1, cartonIndex=1, contentType=application/pdf, bytes=7682", + "checkedAt": "2026-08-08T07:56:59.245Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "模拟墨家首次扫描单箱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "718a367c-4f09-4c36-9848-2b48f882b778, 5a4e4bab-622a-4d9d-a3b5-fd2f0cb9c9cc", + "traceId": "c78677b0f9a2447ab21e13dbe9a9c586", + "evidence": "boxCode=RK-2085998681711509506#4-1, machineNo=MJ-ADMIN-E2E-01", + "checkedAt": "2026-08-08T07:56:59.291Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "首次扫描新增一条且默认代表1箱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "718a367c-4f09-4c36-9848-2b48f882b778, 5a4e4bab-622a-4d9d-a3b5-fd2f0cb9c9cc", + "traceId": "c78677b0f9a2447ab21e13dbe9a9c586", + "evidence": "created=true, confirmedPackageCount=1", + "checkedAt": "2026-08-08T07:56:59.291Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "重复打印及指定箱补打后原箱码仍可解析", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "718a367c-4f09-4c36-9848-2b48f882b778, 5a4e4bab-622a-4d9d-a3b5-fd2f0cb9c9cc", + "traceId": "c78677b0f9a2447ab21e13dbe9a9c586", + "evidence": "boxCodeStable=true, resolvedInboundId=2085998683798155266", + "checkedAt": "2026-08-08T07:56:59.291Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "查询箱级测量详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "77741909-6e37-46dd-8b0c-74cc2cec1475, d8626012-aa24-4656-ad13-e24a2977dfed", + "traceId": "1b64fc284a204fcab56ae0f702ea2968", + "evidence": "measurementId=2085998690563567618", + "checkedAt": "2026-08-08T07:56:59.322Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "箱级查询回显箱码、尺寸、图片与设备信息", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "77741909-6e37-46dd-8b0c-74cc2cec1475, d8626012-aa24-4656-ad13-e24a2977dfed", + "traceId": "1b64fc284a204fcab56ae0f702ea2968", + "evidence": "itemFound=true, imageFileId=2085998690527936514", + "checkedAt": "2026-08-08T07:56:59.323Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "人工确认当前测量代表箱数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement/items/2085998690567761922/confirmed-package-count?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dabb4059-9c6b-4340-b0bc-9db74f075ae8, 979e598d-86d3-436e-8c8a-d6abe27d342d", + "traceId": "d40771e1215c4701ba2d834d9d812333", + "evidence": "confirmedPackageCount=4", + "checkedAt": "2026-08-08T07:56:59.362Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "人工箱数更新且测量版本递增", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement/items/2085998690567761922/confirmed-package-count?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "dabb4059-9c6b-4340-b0bc-9db74f075ae8, 979e598d-86d3-436e-8c8a-d6abe27d342d", + "traceId": "d40771e1215c4701ba2d834d9d812333", + "evidence": "version=2", + "checkedAt": "2026-08-08T07:56:59.362Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "同箱号重新扫描覆盖当前记录", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9e7ba211-9d52-41d3-b876-6740604f7e9b, ce4e5aab-7555-4fd3-88f4-2398da1fd2b6", + "traceId": "63380ff5d4634e06a2b9195a9cdfbc72", + "evidence": "boxCode=RK-2085998681711509506#4-1, machineNo=MJ-ADMIN-E2E-02", + "checkedAt": "2026-08-08T07:56:59.430Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "覆盖保留同一条记录和人工箱数", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9e7ba211-9d52-41d3-b876-6740604f7e9b, ce4e5aab-7555-4fd3-88f4-2398da1fd2b6", + "traceId": "63380ff5d4634e06a2b9195a9cdfbc72", + "evidence": "sameItem=true, confirmedPackageCount=4", + "checkedAt": "2026-08-08T07:56:59.431Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "回查覆盖后的尺寸与体积结果", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "791f6503-5eeb-40d9-8527-ff4b3face39f, 98a8a093-0bab-46e2-bd9d-5e113c22f327", + "traceId": "a1ae427a8bfc49f99a9d6408d041921c", + "evidence": "", + "checkedAt": "2026-08-08T07:56:59.452Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "覆盖尺寸、箱数和服务端体积公式正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "791f6503-5eeb-40d9-8527-ff4b3face39f, 98a8a093-0bab-46e2-bd9d-5e113c22f327", + "traceId": "a1ae427a8bfc49f99a9d6408d041921c", + "evidence": "weightedOuter=64x54x54, unitVolume=0.187, totalVolume=0.748, volumeWeight=124.916, girth=204.5", + "checkedAt": "2026-08-08T07:56:59.452Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "保存同一测量批次草稿", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement/draft?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "080ba105-54e8-4657-b248-7ae35a06ed5a, 782f2efa-a298-4a21-81ad-5a8efe58e3b8", + "traceId": "7f8252e18365454390685c99f77d0b7d", + "evidence": "measurementId=2085998690563567618, items=1", + "checkedAt": "2026-08-08T07:56:59.489Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "草稿沿用批次并递增版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement/draft?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "080ba105-54e8-4657-b248-7ae35a06ed5a, 782f2efa-a298-4a21-81ad-5a8efe58e3b8", + "traceId": "7f8252e18365454390685c99f77d0b7d", + "evidence": "status=DRAFT, version=4", + "checkedAt": "2026-08-08T07:56:59.490Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "提交测量审核", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement/submit?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b64adb6a-ee7c-4c39-97eb-a741b34be815, 851f9e72-183e-4a0b-81e0-ad4e9379383e", + "traceId": "f538e268ec1e411ebd612b69f982bdff", + "evidence": "measurementId=2085998690563567618", + "checkedAt": "2026-08-08T07:56:59.533Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "提交后进入待测量审核状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement/submit?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b64adb6a-ee7c-4c39-97eb-a741b34be815, 851f9e72-183e-4a0b-81e0-ad4e9379383e", + "traceId": "f538e268ec1e411ebd612b69f982bdff", + "evidence": "processStatus=MEASURE_PENDING, reviewStatus=PENDING", + "checkedAt": "2026-08-08T07:56:59.533Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "测量提交后拒绝设备覆盖并返回中文提示", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement/carton-scans?tenantId=10001" + }, + "http": 200, + "code": "A0409", + "message": "测量已提交,设备不能新增或覆盖数据", + "requestId": "7eed474f-4ceb-476f-afd1-2ea0fd0bbf66", + "traceId": "c7b055d476754cd89c986518de2de9fe", + "evidence": "HTTP=200, code=A0409, chineseMessage=true", + "checkedAt": "2026-08-08T07:56:59.558Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "审核前读取最新入库单版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085998683798155266?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "babbcff8-63ed-44ec-9408-f13b95003630, 3373414f-6dcf-4125-a8e5-a37cced6b00d", + "traceId": "acc1a5d4ba3b4a1a8f5be3188c73c26f", + "evidence": "", + "checkedAt": "2026-08-08T07:56:59.590Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "审核前状态和版本有效", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/inbounds/2085998683798155266?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "babbcff8-63ed-44ec-9408-f13b95003630, 3373414f-6dcf-4125-a8e5-a37cced6b00d", + "traceId": "acc1a5d4ba3b4a1a8f5be3188c73c26f", + "evidence": "status=MEASURE_PENDING, version=1", + "checkedAt": "2026-08-08T07:56:59.590Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "Admin 审核通过墨家测量", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/inbounds/2085998683798155266/measurements/approve?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4374f584-425d-496a-9dc3-5005029b11aa, b813a77b-fdd2-4820-a575-e1dc6b6c0514", + "traceId": "d48f0d56d272404e92784715529c9c36", + "evidence": "measurementId=2085998690563567618", + "checkedAt": "2026-08-08T07:56:59.618Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "查询审核后的最终测量状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c9db76c6-e323-40a5-89d2-599be258b513, c02b84c1-421a-4a06-901a-1973b454f099", + "traceId": "529199dbec704918a8741c0355e74c85", + "evidence": "", + "checkedAt": "2026-08-08T07:56:59.650Z" + }, + { + "module": "inbound-measurement", + "scenario": "mojia-carton-measurement", + "name": "审核后入库与测量状态闭环且结果未变化", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/inbounds/2085998683798155266/measurement?tenantId=10001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c9db76c6-e323-40a5-89d2-599be258b513, c02b84c1-421a-4a06-901a-1973b454f099", + "traceId": "529199dbec704918a8741c0355e74c85", + "evidence": "processStatus=INBOUNDED, measurementStatus=APPROVED, packages=4", + "checkedAt": "2026-08-08T07:56:59.650Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "order-service 状态响应使用统一成功体", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5ddb3ffe-397d-4824-977f-ece240561aea, 44614ce0-1b3e-4901-8fdf-60b27ac8e490", + "traceId": "f1c6c85f43484118a5093da212174862", + "evidence": "HTTP=200, code=200", + "checkedAt": "2026-08-08T07:56:59.677Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "order-service 状态字段完整且 readiness 语义明确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5ddb3ffe-397d-4824-977f-ece240561aea, 44614ce0-1b3e-4901-8fdf-60b27ac8e490", + "traceId": "f1c6c85f43484118a5093da212174862", + "evidence": "service=order-service, status=UP, readiness=UP", + "checkedAt": "2026-08-08T07:56:59.678Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "firstleg-service 状态响应使用统一成功体", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "069b5ebe-1d0d-4b68-aeef-602e6dc41fda, 0f0c80a3-5d53-4a68-b6cd-041022aa57dc", + "traceId": "6a1034ae4e5642629de6bbe4eb66faa1", + "evidence": "HTTP=200, code=200", + "checkedAt": "2026-08-08T07:56:59.708Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "firstleg-service 状态字段完整且 readiness 语义明确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/first-leg/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "069b5ebe-1d0d-4b68-aeef-602e6dc41fda, 0f0c80a3-5d53-4a68-b6cd-041022aa57dc", + "traceId": "6a1034ae4e5642629de6bbe4eb66faa1", + "evidence": "service=firstleg-service, status=UP, readiness=UP", + "checkedAt": "2026-08-08T07:56:59.708Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "file-service 状态响应使用统一成功体", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2cb2027a-165f-4a78-8812-4f9f7c419860, bee37e63-c416-472e-870a-1d4ab7599647", + "traceId": "0145235b339d454fa292358850f27d05", + "evidence": "HTTP=200, code=200", + "checkedAt": "2026-08-08T07:56:59.737Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "file-service 状态字段完整且 readiness 语义明确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2cb2027a-165f-4a78-8812-4f9f7c419860, bee37e63-c416-472e-870a-1d4ab7599647", + "traceId": "0145235b339d454fa292358850f27d05", + "evidence": "service=file-service, status=UP, readiness=UP", + "checkedAt": "2026-08-08T07:56:59.737Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "warehouse-service 状态响应使用统一成功体", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouses/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f6fadac8-a920-4b43-9697-4ed8b0cb0385, f10f855c-3800-4564-9552-2cd891eae72f", + "traceId": "3021484e972c4c3aa1d4e62e77f5fcc6", + "evidence": "HTTP=200, code=200", + "checkedAt": "2026-08-08T07:56:59.772Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "warehouse-service 状态字段完整且 readiness 语义明确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouses/status" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f6fadac8-a920-4b43-9697-4ed8b0cb0385, f10f855c-3800-4564-9552-2cd891eae72f", + "traceId": "3021484e972c4c3aa1d4e62e77f5fcc6", + "evidence": "service=warehouse-service, status=UP, readiness=UP", + "checkedAt": "2026-08-08T07:56:59.772Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "平台接口未携带令牌返回 401", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "18d0892e-1798", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:56:59.795Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "平台接口伪造令牌返回 401", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "2715b18a-1799", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:56:59.812Z" + }, + { + "module": "supplemental", + "scenario": null, + "name": "未认证请求不返回业务成功码", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/orders/status" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "18d0892e-1800", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:56:59.828Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ab8e9170-6102-4b35-8ae7-3c36f15ac071, 1f0c9edb-8206-4269-a837-83e440ac8d70", + "traceId": "73a4a53f6488479abc5bc129a3837d40", + "evidence": "path=/api/platform/v1/warehouse-admin?page=1&size=5&status=ACTIVE", + "checkedAt": "2026-08-08T07:56:59.853Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ab8e9170-6102-4b35-8ae7-3c36f15ac071, 1f0c9edb-8206-4269-a837-83e440ac8d70", + "traceId": "73a4a53f6488479abc5bc129a3837d40", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:56:59.853Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&tenantId=0&warehouseType=FBA" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "51dcc4a4-a9ca-45c6-9e07-5f3c2650dca4, 9e525b99-cad5-44bb-b3bd-bacbe6687798", + "traceId": "49200e24597646f28bf00fce9377f597", + "evidence": "path=/api/platform/v1/warehouse-admin?page=1&size=5&tenantId=0&warehouseType=FBA", + "checkedAt": "2026-08-08T07:56:59.883Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&tenantId=0&warehouseType=FBA" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "51dcc4a4-a9ca-45c6-9e07-5f3c2650dca4, 9e525b99-cad5-44bb-b3bd-bacbe6687798", + "traceId": "49200e24597646f28bf00fce9377f597", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:56:59.883Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库非法状态安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&status=NOT_A_STATUS" + }, + "http": 200, + "code": "A0422", + "message": "status: must match \"ACTIVE|INACTIVE\"", + "requestId": "eb1e2e93-39cb-4a0f-b453-cff8f6b5e46a", + "traceId": "41f02e468e824d5c9a593974636d80a4", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:56:59.911Z" + }, + { + "module": "supplemental", + "scenario": "master-data-readonly", + "name": "仓库客户作用域安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin?page=1&size=5&tenantId=10001" + }, + "http": 200, + "code": "A0400", + "message": "Platform resource scope must be 0 / 平台公共资源作用域必须为0", + "requestId": "19778202-493e-47b2-af52-0181d4821c13", + "traceId": "62d225c890ac4dabbd356fe957865153", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:56:59.930Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ad8c355e-9521-4a69-bcd3-86f48e05a894, 565a6da5-79ba-4682-b199-5ab808e1b1df", + "traceId": "a06b2a7f0c594d0c9093a8d2bc9739a5", + "evidence": "path=/api/platform/v1/locations?page=1&size=5&tenantId=0", + "checkedAt": "2026-08-08T07:56:59.961Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ad8c355e-9521-4a69-bcd3-86f48e05a894, 565a6da5-79ba-4682-b199-5ab808e1b1df", + "traceId": "a06b2a7f0c594d0c9093a8d2bc9739a5", + "evidence": "records=3, current=1, size=5", + "checkedAt": "2026-08-08T07:56:59.961Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e26e7f04-e4d6-4f04-a891-ff539ed6a7b0, 2061e1e6-a946-407c-9106-3bf058d45366", + "traceId": "ba17123c4cda4a0086814ba98845064f", + "evidence": "path=/api/platform/v1/pallets?page=1&size=5&tenantId=0", + "checkedAt": "2026-08-08T07:56:59.992Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e26e7f04-e4d6-4f04-a891-ff539ed6a7b0, 2061e1e6-a946-407c-9106-3bf058d45366", + "traceId": "ba17123c4cda4a0086814ba98845064f", + "evidence": "records=3, current=1, size=5", + "checkedAt": "2026-08-08T07:56:59.992Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位仓库筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0&warehouseId=193000000000000001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "922e94ec-46b3-4c0e-b64c-518d1a7bab33, a09e0f69-590d-4610-a521-90ecc2540ca2", + "traceId": "03430d5a4ced41dbab87f7577301baf1", + "evidence": "path=/api/platform/v1/locations?page=1&size=5&tenantId=0&warehouseId=193000000000000001", + "checkedAt": "2026-08-08T07:57:00.024Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位仓库筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0&warehouseId=193000000000000001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "922e94ec-46b3-4c0e-b64c-518d1a7bab33, a09e0f69-590d-4610-a521-90ecc2540ca2", + "traceId": "03430d5a4ced41dbab87f7577301baf1", + "evidence": "records=0, current=1, size=5", + "checkedAt": "2026-08-08T07:57:00.024Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘仓库筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=0&warehouseId=193000000000000001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f48c03f1-7505-43c6-a7c7-5ffedb009636, a2eb132e-9df9-4ef7-96bc-f8191d118f0f", + "traceId": "ba3999a9eca047eca70f19b6694020aa", + "evidence": "path=/api/platform/v1/pallets?page=1&size=5&tenantId=0&warehouseId=193000000000000001", + "checkedAt": "2026-08-08T07:57:00.055Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘仓库筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=0&warehouseId=193000000000000001" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f48c03f1-7505-43c6-a7c7-5ffedb009636, a2eb132e-9df9-4ef7-96bc-f8191d118f0f", + "traceId": "ba3999a9eca047eca70f19b6694020aa", + "evidence": "records=0, current=1, size=5", + "checkedAt": "2026-08-08T07:57:00.055Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位客户作用域安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=10001" + }, + "http": 200, + "code": "A0400", + "message": "平台公共资源作用域必须为0", + "requestId": "2c484504-c14e-4d16-8c47-450300cee220", + "traceId": "5f283f2132e64dca90019cdd88824b91", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:57:00.085Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘客户作用域安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets?page=1&size=5&tenantId=10001" + }, + "http": 200, + "code": "A0400", + "message": "平台公共资源作用域必须为0", + "requestId": "a3e7674c-03a1-4c3d-b393-ebe76f95c661", + "traceId": "f92429ff7be24b95855f08ea8870a6f0", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:57:00.117Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位非法状态安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=5&tenantId=0&status=ALLOCATED" + }, + "http": 200, + "code": "A0422", + "message": "status: must match \"^(AVAILABLE|RESERVED|OCCUPIED|DISABLED)$\"", + "requestId": "adef9164-dc23-41dd-9264-4b1d07bf709b", + "traceId": "bcca2423825a4cfcbb61074de7c3bc8d", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:57:00.147Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "库位过期版本/不存在资源不泄露或误修改数据", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/999999999999?tenantId=0&warehouseId=999999999999" + }, + "http": 200, + "code": "A0404", + "message": "库位不存在或超出当前企业仓库数据范围", + "requestId": "9d357d60-6795-47c9-8030-d1fbbf3b30a3", + "traceId": "73ea114720224883897588d3b01126fc", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:57:00.177Z" + }, + { + "module": "supplemental", + "scenario": "warehouse-resources", + "name": "托盘占用资源保护边界不泄露或误修改数据", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/pallets/999999999999?tenantId=0&warehouseId=999999999999" + }, + "http": 200, + "code": "A0404", + "message": "托盘不存在或不属于当前租户和仓库", + "requestId": "9131c91f-6763-4504-b6b3-bf9c504425e8", + "traceId": "0cd7c7f996e64b56aa9053b967090f1d", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:57:00.210Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0f170530-9164-4aab-9fd6-6c9073791c7f, b8674b3d-d793-4bf3-a92c-a8b306233f4d", + "traceId": "8ff938314631490c88b0475b1aacbe2e", + "evidence": "path=/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=ACTIVE", + "checkedAt": "2026-08-08T07:57:00.231Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "0f170530-9164-4aab-9fd6-6c9073791c7f, b8674b3d-d793-4bf3-a92c-a8b306233f4d", + "traceId": "8ff938314631490c88b0475b1aacbe2e", + "evidence": "records=4, current=1, size=5", + "checkedAt": "2026-08-08T07:57:00.231Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司停用筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d72ed187-95c6-4157-b4a9-f16be63b87e6, 13c00212-3ad9-446c-91e0-b2d014375f19", + "traceId": "1e300a3f208044808b6d83ce57a58a33", + "evidence": "path=/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=INACTIVE", + "checkedAt": "2026-08-08T07:57:00.254Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司停用筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d72ed187-95c6-4157-b4a9-f16be63b87e6, 13c00212-3ad9-446c-91e0-b2d014375f19", + "traceId": "1e300a3f208044808b6d83ce57a58a33", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:57:00.254Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司状态枚举过滤不混入其他状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d72ed187-95c6-4157-b4a9-f16be63b87e6, 13c00212-3ad9-446c-91e0-b2d014375f19", + "traceId": "1e300a3f208044808b6d83ce57a58a33", + "evidence": "records=5", + "checkedAt": "2026-08-08T07:57:00.254Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司无效筛选参数安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies?page=1&size=5&tenantId=0&status=UNKNOWN" + }, + "http": 200, + "code": "A0422", + "message": "status: must match \"^(ACTIVE|INACTIVE)$\"", + "requestId": "87de3c5c-d743-4449-8ca0-7290b185b725", + "traceId": "20408cff37224a518198495e13daa9b7", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:57:00.285Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1c881532-a6ac-43a7-81e0-23b19db49ad8, 13cb0261-28f5-4935-9f1d-bdbaa76fa081", + "traceId": "6d46d910697e4465ae9ea92373b6cb5a", + "evidence": "path=/api/platform/v1/partners?page=1&size=5&tenantId=0&status=ACTIVE", + "checkedAt": "2026-08-08T07:57:00.305Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1c881532-a6ac-43a7-81e0-23b19db49ad8, 13cb0261-28f5-4935-9f1d-bdbaa76fa081", + "traceId": "6d46d910697e4465ae9ea92373b6cb5a", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:57:00.305Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位停用筛选分页查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "adad3373-6a9f-4a90-a58a-f2f8c294e303, e4a4762a-3075-451a-bc92-a5fa17d2a1be", + "traceId": "3fabd5ebaf8e4d4e8311c1e8ed5e9edd", + "evidence": "path=/api/platform/v1/partners?page=1&size=5&tenantId=0&status=INACTIVE", + "checkedAt": "2026-08-08T07:57:00.333Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位停用筛选分页结构与记录数组正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "adad3373-6a9f-4a90-a58a-f2f8c294e303, e4a4762a-3075-451a-bc92-a5fa17d2a1be", + "traceId": "3fabd5ebaf8e4d4e8311c1e8ed5e9edd", + "evidence": "records=5, current=1, size=5", + "checkedAt": "2026-08-08T07:57:00.333Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位状态枚举过滤不混入其他状态", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "adad3373-6a9f-4a90-a58a-f2f8c294e303, e4a4762a-3075-451a-bc92-a5fa17d2a1be", + "traceId": "3fabd5ebaf8e4d4e8311c1e8ed5e9edd", + "evidence": "records=5", + "checkedAt": "2026-08-08T07:57:00.333Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位无效筛选参数安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners?page=1&size=5&tenantId=0&types=UNKNOWN_TYPE" + }, + "http": 200, + "code": "A0422", + "message": "types[0]: must match \"^(CUSTOMER|SUPPLIER|CARRIER|CUSTOMS_BROKER|SHIPPER|CONSIGNEE)$\"", + "requestId": "dd4b885f-47a6-4b79-9cd4-29635db18b41", + "traceId": "da25d84928f74109a6f0324f67ef443d", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:57:00.361Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "仓库导入模板为 XLSX 且不记录二进制", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/warehouse-admin/import-template" + }, + "http": 200, + "code": null, + "message": "3853 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "4d10ec42-b576-4a98-b4fb-311225bca2a8, d05652b9-6e3d-4533-b3b2-66d6964266ab", + "traceId": "059a592e14d34682b4a2f0b963bc6ef6", + "evidence": "HTTP=200, bytes=3853, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:57:00.399Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "快递公司导入模板为 XLSX 且不记录二进制", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/express-companies/import-template" + }, + "http": 200, + "code": null, + "message": "3692 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "8cd7c81f-377a-4bec-9a98-c9cbd69c19a5, 4fcd4378-fc2b-41f6-817e-2f59ed9fb82d", + "traceId": "199e92709a7047588b79e36bbeef0fcb", + "evidence": "HTTP=200, bytes=3692, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:57:00.429Z" + }, + { + "module": "supplemental", + "scenario": "shared-master-data", + "name": "往来单位导入模板为 XLSX 且不记录二进制", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/partners/import-template" + }, + "http": 200, + "code": null, + "message": "3830 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "9ca97e69-9522-43d8-a803-0398b3112ba6, fd6853be-ef8f-4686-978a-3752827065dd", + "traceId": "ba3d91276b6745c2a0445117e0a6ebe1", + "evidence": "HTTP=200, bytes=3830, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:57:00.462Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 PENDING_CONFIRMATION 状态过滤", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=PENDING_CONFIRMATION" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "96c64896-c5ea-44cd-b07a-85e71d48c88d, f4725e67-c80b-48b4-8cb8-b1522729d306", + "traceId": "adf7a331d3e8469b978722c077353f23", + "evidence": "count=1", + "checkedAt": "2026-08-08T07:57:00.481Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 PENDING_CONFIRMATION 结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=PENDING_CONFIRMATION" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "96c64896-c5ea-44cd-b07a-85e71d48c88d, f4725e67-c80b-48b4-8cb8-b1522729d306", + "traceId": "adf7a331d3e8469b978722c077353f23", + "evidence": "count=1", + "checkedAt": "2026-08-08T07:57:00.481Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 ACTIVE 状态过滤", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "866e98e4-a106-4c34-8420-de51d46482c9, 75a5004d-931b-4e50-91e0-ceb3ed8b0cb1", + "traceId": "ef92e66634864540bf2df74e8c23ac01", + "evidence": "count=1", + "checkedAt": "2026-08-08T07:57:00.516Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 ACTIVE 结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "866e98e4-a106-4c34-8420-de51d46482c9, 75a5004d-931b-4e50-91e0-ceb3ed8b0cb1", + "traceId": "ef92e66634864540bf2df74e8c23ac01", + "evidence": "count=1", + "checkedAt": "2026-08-08T07:57:00.516Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 SUPERSEDED 状态过滤", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=SUPERSEDED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e2a8f708-4a3f-4ed4-9f2b-4ccf379f6d1e, 76252587-2815-4307-a05e-4f8af45010c8", + "traceId": "82b935fd17074d85b20811dc9474148f", + "evidence": "count=13", + "checkedAt": "2026-08-08T07:57:00.549Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "船期价格表 SUPERSEDED 结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=SUPERSEDED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e2a8f708-4a3f-4ed4-9f2b-4ccf379f6d1e, 76252587-2815-4307-a05e-4f8af45010c8", + "traceId": "82b935fd17074d85b20811dc9474148f", + "evidence": "count=13", + "checkedAt": "2026-08-08T07:57:00.549Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "读取现有生效价格版本用于下载安全检查", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=ACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ff0f492e-08a5-4006-9d27-cdead2eb7653, 328eabae-d709-4958-be4c-df34c92aa89b", + "traceId": "39e78ba595c44a1a84acdd721762d1dc", + "evidence": "", + "checkedAt": "2026-08-08T07:57:00.568Z" + }, + { + "module": "supplemental", + "scenario": "price-book-readonly", + "name": "现有生效价格源文件下载为 XLSX", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books/2085998623572144130/source" + }, + "http": 200, + "code": null, + "message": "1343413 bytes (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)", + "requestId": "fbc28362-1efd-49aa-85e9-ed8e887a91f1, 306a59e9-ce77-450d-b725-3a3d2106cae4, 0890a804-fb42-48fb-a146-3e874769ecc9", + "traceId": "e19a77671bfe4bc1afb13f98f28795f0, df7cf861f0ba4b378abc51af6fc52a90", + "evidence": "versionId=2085998623572144130, bytes=1343413, contentType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "checkedAt": "2026-08-08T07:57:00.667Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 PENDING 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=PENDING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6f65b281-2fc9-4c47-a0a4-2305a06f0822, 84abe429-d4c3-44fa-834b-0b700c132910", + "traceId": "fcbae5080ab74663ba8437a8159cd8de", + "evidence": "", + "checkedAt": "2026-08-08T07:57:00.703Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 PENDING 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=PENDING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "6f65b281-2fc9-4c47-a0a4-2305a06f0822, 84abe429-d4c3-44fa-834b-0b700c132910", + "traceId": "fcbae5080ab74663ba8437a8159cd8de", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:57:00.703Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 RUNNING 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=RUNNING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "80face3a-2fb4-4d8e-b5f1-db8930cc428b, 680d9f1e-1999-472c-8d6b-3b4ab4ba373c", + "traceId": "ce863aec15cf417186a0f575512c7327", + "evidence": "", + "checkedAt": "2026-08-08T07:57:00.734Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 RUNNING 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=RUNNING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "80face3a-2fb4-4d8e-b5f1-db8930cc428b, 680d9f1e-1999-472c-8d6b-3b4ab4ba373c", + "traceId": "ce863aec15cf417186a0f575512c7327", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:57:00.734Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 SUCCEEDED 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=SUCCEEDED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2dde93c8-7b9c-4d62-8860-7d5b12419c9a, 69167bc5-d720-4fa8-acce-7dc43017a424", + "traceId": "04526e4c93e844228d4eb56be4e70593", + "evidence": "", + "checkedAt": "2026-08-08T07:57:00.766Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 SUCCEEDED 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=SUCCEEDED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2dde93c8-7b9c-4d62-8860-7d5b12419c9a, 69167bc5-d720-4fa8-acce-7dc43017a424", + "traceId": "04526e4c93e844228d4eb56be4e70593", + "evidence": "records=5", + "checkedAt": "2026-08-08T07:57:00.767Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 FAILED 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=FAILED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "640fb446-3e09-4a7a-8bd2-b40ddf336efb, a9712e07-24e8-4666-8a70-31676c699c8c", + "traceId": "efa2518fb5f5456d9c1880a5b6bab665", + "evidence": "", + "checkedAt": "2026-08-08T07:57:00.788Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 FAILED 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=FAILED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "640fb446-3e09-4a7a-8bd2-b40ddf336efb, a9712e07-24e8-4666-8a70-31676c699c8c", + "traceId": "efa2518fb5f5456d9c1880a5b6bab665", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:57:00.788Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 EXPIRED 状态分页", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=EXPIRED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a3e66f0a-fae3-4164-9aab-f8150eb1be9b, 3c37b4a4-4d43-4aae-8ece-781645b8a4bb", + "traceId": "e3f11d953a3e46d78ded049f522e69ff", + "evidence": "", + "checkedAt": "2026-08-08T07:57:00.807Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "下载中心 EXPIRED 过滤结果状态一致", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=1&size=5&status=EXPIRED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a3e66f0a-fae3-4164-9aab-f8150eb1be9b, 3c37b4a4-4d43-4aae-8ece-781645b8a4bb", + "traceId": "e3f11d953a3e46d78ded049f522e69ff", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:57:00.807Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "不存在下载任务详情安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/999999999999" + }, + "http": 200, + "code": "A0404", + "message": "导出任务不存在", + "requestId": "8f97a99d-8399-46e5-842a-5ad0a3363f9b", + "traceId": "a64e01bfb52f48748aa05f5c2a9003a1", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:57:00.825Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "不存在下载任务文件安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/999999999999/download" + }, + "http": 200, + "code": "A0404", + "message": "导出任务不存在", + "requestId": "ebaa5032-bba3-4160-b304-aa6f4635231c", + "traceId": "292a9046464d4d1a82909d66966fb1d7", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:57:00.854Z" + }, + { + "module": "supplemental", + "scenario": "download-readonly", + "name": "未授权下载请求被拒绝", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks/999999999999/download" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "2715b18a-1835", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:57:00.880Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "平台用户只读列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users?page=1&size=5" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8e1d3a35-192b-4eca-bb1e-6635c03eca70, 3e60ef31-970f-4535-b760-1faa4f72acd7", + "traceId": "48476ae8add7413ca6ae3b8d0a333537", + "evidence": "", + "checkedAt": "2026-08-08T07:57:00.930Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "平台用户列表结构正确且包含内置保护标识", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/users?page=1&size=5" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "8e1d3a35-192b-4eca-bb1e-6635c03eca70, 3e60ef31-970f-4535-b760-1faa4f72acd7", + "traceId": "48476ae8add7413ca6ae3b8d0a333537", + "evidence": "records=5, builtInField=protectedAccount", + "checkedAt": "2026-08-08T07:57:00.931Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "平台角色只读列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "22ac0a37-7543-473d-a61b-9e87efa2afd6, 2abbb996-7bcb-4d92-8b5a-cfbbaa4cd596", + "traceId": "eea3e6bf7ead416fac2bafad9d571815", + "evidence": "", + "checkedAt": "2026-08-08T07:57:00.962Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "平台角色列表结构正确且包含内置保护标识", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "22ac0a37-7543-473d-a61b-9e87efa2afd6, 2abbb996-7bcb-4d92-8b5a-cfbbaa4cd596", + "traceId": "eea3e6bf7ead416fac2bafad9d571815", + "evidence": "records=21, builtInField=roleType", + "checkedAt": "2026-08-08T07:57:00.962Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "菜单权限只读列表", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4799a5db-e065-4b9b-80da-e7cbda89aedf, 2fdf6fc5-a7af-4233-906f-4e067d64b1f4", + "traceId": "b4826cead1674782a72d4abe119132dd", + "evidence": "", + "checkedAt": "2026-08-08T07:57:01.006Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "菜单权限列表结构正确且包含内置保护标识", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4799a5db-e065-4b9b-80da-e7cbda89aedf, 2fdf6fc5-a7af-4233-906f-4e067d64b1f4", + "traceId": "b4826cead1674782a72d4abe119132dd", + "evidence": "records=151, builtInField=builtIn", + "checkedAt": "2026-08-08T07:57:01.006Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "角色列表伪造令牌拒绝访问", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/roles" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "2715b18a-1839", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:57:01.021Z" + }, + { + "module": "supplemental", + "scenario": "iam-readonly", + "name": "菜单权限未携带令牌拒绝访问", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/permissions" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "18d0892e-1840", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:57:01.035Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "创建边界验收隔离仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "486f49d3-b9e2-4e16-815b-f9528238b04b, 916b02dd-b49d-416a-b5aa-d203c26049c3", + "traceId": "53e9c83160154210ac99fc1e61a12414", + "evidence": "", + "checkedAt": "2026-08-08T07:57:01.067Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "创建边界验收隔离库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/locations?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "859f75c8-6542-491a-9188-e400b9ade1d7, 2dc39894-b40a-469b-a33e-fe7f083a2309", + "traceId": "051959a6b6e147859880c422040f4328", + "evidence": "", + "checkedAt": "2026-08-08T07:57:01.092Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "读取隔离库位版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998698132717569?tenantId=0&warehouseId=2085998697998499842" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d100433d-75f4-4c3b-9655-6ececd31a390, 87ecabb2-a3eb-454d-8892-730b045fb288", + "traceId": "b1d9a72f5a9f4a0186bda16029733dbe", + "evidence": "", + "checkedAt": "2026-08-08T07:57:01.121Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "更新隔离库位以推进版本", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085998698132717569?tenantId=0&warehouseId=2085998697998499842" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "45309b51-53f5-4f80-8abf-43dc776d74fa, 5b3bd93e-1004-4956-94dd-76f8af1d1ea9", + "traceId": "3f8cad59beb543f89b698ac71dcb1805", + "evidence": "version=0", + "checkedAt": "2026-08-08T07:57:01.159Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "库位旧 version PUT 返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/locations/2085998698132717569?tenantId=0&warehouseId=2085998697998499842" + }, + "http": 200, + "code": "A0409", + "message": "库位已被其他操作修改,请刷新后重试", + "requestId": "b6984e7a-34e3-4ebc-9f20-d71e9f841d4e", + "traceId": "59e4e7ed469b4e96a10679c5cfbfca24", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:57:01.189Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "冲突后回查库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998698132717569?tenantId=0&warehouseId=2085998697998499842" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c23f2aff-e9a1-4bbd-a4d0-b90caeb9c82e, ec133b7d-42ca-4dfa-9df1-d25bfc9b97e5", + "traceId": "b8c85c065eb341288031c7a5bb75d83c", + "evidence": "", + "checkedAt": "2026-08-08T07:57:01.215Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "库位冲突未造成部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations/2085998698132717569?tenantId=0&warehouseId=2085998697998499842" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c23f2aff-e9a1-4bbd-a4d0-b90caeb9c82e, ec133b7d-42ca-4dfa-9df1-d25bfc9b97e5", + "traceId": "b8c85c065eb341288031c7a5bb75d83c", + "evidence": "name=边界库位-编辑", + "checkedAt": "2026-08-08T07:57:01.215Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "仓库空文件安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cf1d8026-29d4-4104-bb76-cf40e3f32a85, 4ef37198-7513-4d4e-8cd0-431da191cfdb", + "traceId": "72b273ac87c64bba9dd63205c7c2b0ac", + "evidence": "HTTP=200, code=200, bytes=0", + "checkedAt": "2026-08-08T07:57:01.244Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "仓库缺列伪 XLSX安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/warehouse-admin/import?tenantId=0&dryRun=true" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "96a321d8-d98c-4562-912f-e9a5500e1468, d0fa857d-c450-47ae-8443-d33df7a9cdd6", + "traceId": "140b53130177484bbae6fb0018a1dff8", + "evidence": "HTTP=200, code=200, bytes=6", + "checkedAt": "2026-08-08T07:57:01.263Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "快递公司错误扩展名安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/express-companies/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "49f77e8c-0abf-4ebe-8772-5f51f52aa125, 1e07914c-d015-494b-bb90-6d12f4e3bc71", + "traceId": "bec13fbd04cd470ca4fa623af6361fa8", + "evidence": "HTTP=200, code=200, bytes=27", + "checkedAt": "2026-08-08T07:57:01.290Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "import-boundaries", + "name": "往来单位非 XLSX安全失败且不模拟导入成功", + "passed": false, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/partners/import?tenantId=0" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "fe99f60a-cbeb-46c2-b57e-df403f62ff26, cb895c48-4f4f-4796-a90e-bbf4fa58a37a", + "traceId": "f77f842b002f449aa240c22222848524", + "evidence": "HTTP=200, code=200, bytes=27", + "checkedAt": "2026-08-08T07:57:01.323Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "错误客户海外仓费用 ID 安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/iam/tenants/999999999999999999/overseas-storage-fees" + }, + "http": 200, + "code": "A0404", + "message": "海外仓费用不存在", + "requestId": "a2b27522-5adc-4cd0-b5e5-109dc199393c", + "traceId": "315f408cd76b4b509f8faa0cad539a53", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:57:01.356Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "库位列表未授权边界响应正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/locations?page=1&size=1&tenantId=0" + }, + "http": 401, + "code": "A0401", + "message": "未登录或令牌已失效", + "requestId": "18d0892e-1852", + "traceId": null, + "evidence": "HTTP=401, code=A0401", + "checkedAt": "2026-08-08T07:57:01.369Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "下载中心非法页码边界响应正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/files/export-tasks?page=0&size=1" + }, + "http": 200, + "code": "A0422", + "message": "page.page: must be greater than or equal to 1", + "requestId": "bbde78e9-e4cb-4dd2-bc03-0cb4433c95c6", + "traceId": "53712f5db1234a62afc3e1cf7f1799a1", + "evidence": "HTTP=200, code=A0422", + "checkedAt": "2026-08-08T07:57:01.402Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "船期价格非法状态边界响应正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/fba-pricing/carrier-rates/price-books?status=INVALID" + }, + "http": 200, + "code": "A0400", + "message": "Bad request", + "requestId": "589d5132-0c12-41e2-afb5-19c90d01fdf3", + "traceId": "06d34244cd614298ade79bc66ed9ae63", + "evidence": "HTTP=200, code=A0400", + "checkedAt": "2026-08-08T07:57:01.422Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "停用隔离库位以便清理", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/locations/2085998698132717569/status?tenantId=0&warehouseId=2085998697998499842" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "014d206a-530e-457b-8b05-abe495dad050, acdeef69-c46d-4007-8a5e-088136aac80f", + "traceId": "f6cc79667b7e4bfc80b1bc70321b8c64", + "evidence": "", + "checkedAt": "2026-08-08T07:57:01.454Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "删除隔离库位", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "DELETE", + "path": "/api/platform/v1/locations/2085998698132717569?tenantId=0&warehouseId=2085998697998499842&version=2" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "527efefc-f1b1-4782-9d4d-3a8125a7a636, 88c7d129-7386-4ec1-96d4-b816036995dc", + "traceId": "d81d45bea4f34bd69fcf23ffb33abed6", + "evidence": "", + "checkedAt": "2026-08-08T07:57:01.483Z" + }, + { + "module": "supplemental-boundaries", + "scenario": "admin-boundary-automation", + "name": "停用隔离仓库", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PATCH", + "path": "/api/platform/v1/warehouse-admin/2085998697998499842/status?tenantId=0&status=INACTIVE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "812c728f-44ac-4331-99c0-69c627381f56, 8ff40eba-3a49-47ff-9e87-8148657d0a06", + "traceId": "cad896f74f01461a8330a8c3a5edcd2e", + "evidence": "", + "checkedAt": "2026-08-08T07:57:01.506Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱列表分页与 keyword 查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&keyword=ADMIN-API-20260808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d9cee9b3-4b3a-4342-a0cd-465cbb25a1d7, 568d6162-ad4a-4621-8732-7395e3cdeb97", + "traceId": "0accdfcb7bef466fa72e156b7a76e556", + "evidence": "", + "checkedAt": "2026-08-08T07:57:01.530Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱列表分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&keyword=ADMIN-API-20260808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d9cee9b3-4b3a-4342-a0cd-465cbb25a1d7, 568d6162-ad4a-4621-8732-7395e3cdeb97", + "traceId": "0accdfcb7bef466fa72e156b7a76e556", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:57:01.530Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 DRAFT 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=DRAFT" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b85a4cc8-563c-4caa-af06-b751682d82df, b3fc950c-389f-4ed3-a322-0a6169f75086", + "traceId": "ed5fd126bf0143958cece521527e6d9a", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:01.556Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 SUBMITTED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=SUBMITTED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9dcb1135-3d5b-435f-9949-363c3b48d02a, 00209250-b68c-4809-9d0e-8f646c13b091", + "traceId": "e62c9b2c6aa340248a408e889be681a3", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:01.586Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 CONFIRMED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=CONFIRMED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "37f0de07-38b9-4f37-9ce1-2db5aa9d19b1, 9d57a840-915d-40fe-b6db-ea6a4530ed86", + "traceId": "f3571926f71e46a3b9526852ab5e1046", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:01.617Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 RELEASED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=RELEASED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f8aff5f2-3c33-4996-8cab-8a9925660339, 64fccf8f-6668-4801-9ce8-607409b169b1", + "traceId": "a10164c028a2478990d1ab3dfc38ffb2", + "evidence": "HTTP=200, code=200, records=5", + "checkedAt": "2026-08-08T07:57:01.649Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 FAILED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=FAILED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "35ca23d2-aedd-44b3-8eb7-a16f5afc8d42, 8297f835-0fdf-40d0-b2a0-c69b27402022", + "traceId": "7c5648545b9747349202c3c1992f2382", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:01.679Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 CANCELLED 状态筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings?page=1&size=5&status=CANCELLED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "afe99b26-ea3d-422f-baca-93d667dac93e, c48b9529-071c-4e49-b76b-fd0119be28c7", + "traceId": "c86c81fc86734fcf83629d6dc8711aa7", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:01.707Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "创建隔离海运订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9f7b77ff-b8c9-4d49-a6c4-e9d45472cb30, cf71354a-7f9d-4f65-a60e-23a3b11af7b5", + "traceId": "3a0f0b973b484c9188d69a2849d95a07", + "evidence": "key=ADMIN-API-20260808075633661-ocean-create", + "checkedAt": "2026-08-08T07:57:01.751Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱 DTO 字段、DRAFT 和9类关联字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9f7b77ff-b8c9-4d49-a6c4-e9d45472cb30, cf71354a-7f9d-4f65-a60e-23a3b11af7b5", + "traceId": "3a0f0b973b484c9188d69a2849d95a07", + "evidence": "bookingId=2085998700864778242, parties=3, requirements=1", + "checkedAt": "2026-08-08T07:57:01.751Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "创建 Idempotency-Key 重放返回同一订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "f411428d-0975-4ca9-81c7-2515ddde68ef, 648ca0e7-4467-40cb-9c20-704a4010cdbf", + "traceId": "fa87f3771ea5404bac3b71f8243b4f74", + "evidence": "first=2085998700864778242, replay=2085998700864778242", + "checkedAt": "2026-08-08T07:57:01.778Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "编辑 DRAFT 订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/ocean-bookings/2085998700864778242" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "7bf34c5d-d6b5-433b-9272-3d98a413b6b5, 776316a3-a468-47c7-af5a-d0ac460ca83c", + "traceId": "a4ef144edc724dadbdee9653381642ab", + "evidence": "version=0", + "checkedAt": "2026-08-08T07:57:01.817Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱旧版本编辑返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/ocean-bookings/2085998700864778242" + }, + "http": 200, + "code": "A0409", + "message": "数据已被其他人修改,请刷新后重试", + "requestId": "8c441663-ca48-45e4-af43-d9573a3ffee6", + "traceId": "24691c88bd57421aa19a4b462a6055f1", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:57:01.850Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "冲突后回查订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085998700864778242" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "78574c9c-f9d5-4299-96ea-b0691ac9c190, a61393c2-ca0e-4713-a599-f86cb916bd0f", + "traceId": "02e889c5309f4b408c53843b0bd7d513", + "evidence": "", + "checkedAt": "2026-08-08T07:57:01.882Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱冲突未部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085998700864778242" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "78574c9c-f9d5-4299-96ea-b0691ac9c190, a61393c2-ca0e-4713-a599-f86cb916bd0f", + "traceId": "02e889c5309f4b408c53843b0bd7d513", + "evidence": "vessel=编辑船-8075633661", + "checkedAt": "2026-08-08T07:57:01.882Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "提交订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085998700864778242/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "e8177f4e-8a38-4fbf-b39e-2629f27e9fcf, 16bb7316-4fde-44dd-aa23-a44ca5f40c5e", + "traceId": "386fa6f3dc334090a1593f016871ff57", + "evidence": "status=SUBMITTED", + "checkedAt": "2026-08-08T07:57:01.924Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "确认订舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085998700864778242/confirm" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "28261b9e-d97d-443c-88c1-5a2fec5f5135, fa197287-0b44-4870-bc67-f5d1dd119bb5", + "traceId": "614b355ade2a4bc680c22800dbb5ae7c", + "evidence": "status=CONFIRMED", + "checkedAt": "2026-08-08T07:57:01.970Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "申请改船", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085998700864778242/change-request" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b6910b73-c5f0-4c05-8152-15c83730fe10, 9ae38caf-1988-46e3-910e-c160ddf76c6a", + "traceId": "c0bbaf62932643e0bd7bcc4fa719eb70", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.018Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "确认改船", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085998700864778242/change-confirm" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "567edd61-0f0d-4ea4-9e2b-5f1cce8fd96e, cc567b84-17d0-4e15-b52a-f01130e9658a", + "traceId": "ba7495a9face4906b8b0e1442a5310bc", + "evidence": "status=CONFIRMED", + "checkedAt": "2026-08-08T07:57:02.065Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "放舱", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/ocean-bookings/2085998700864778242/release" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d9212ec5-d7b4-4150-9f27-25496433aaf4, 85df0ac4-f09e-45ea-a5ed-952fd4d2df87", + "traceId": "8b6075f27f704218a674051b398a1878", + "evidence": "status=RELEASED", + "checkedAt": "2026-08-08T07:57:02.112Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "回查 RELEASED 订舱详情", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085998700864778242" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "def8897b-d08f-4a66-b7da-487ec6c2e676, d6c5b71d-20d5-4446-9deb-22417508ccc5", + "traceId": "e0a6e30619754f0cb2f5e9d48064b028", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.135Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "订舱状态历史、审计操作者和终态完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/2085998700864778242" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "def8897b-d08f-4a66-b7da-487ec6c2e676, d6c5b71d-20d5-4446-9deb-22417508ccc5", + "traceId": "e0a6e30619754f0cb2f5e9d48064b028", + "evidence": "status=RELEASED, histories=6", + "checkedAt": "2026-08-08T07:57:02.135Z" + }, + { + "module": "ocean-bookings", + "scenario": "ocean-booking-lifecycle", + "name": "不存在订舱详情安全失败", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/ocean-bookings/999999999999999999" + }, + "http": 200, + "code": "A0404", + "message": "订舱单不存在", + "requestId": "965ac354-4e69-469a-a6ce-1c729a97fb92", + "traceId": "f964ae83cd074d1783364105ce1300f6", + "evidence": "HTTP=200, code=A0404", + "checkedAt": "2026-08-08T07:57:02.157Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约分页 keyword 查询", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&keyword=ADMIN-API-20260808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2b43387c-f88d-439a-ad36-e041d061d17f, 831bbd01-c298-4091-8f5d-c7e76bbb2455", + "traceId": "c06efdf7cee744578508477f1708a7f0", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.180Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约分页结构正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&keyword=ADMIN-API-20260808075633661" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2b43387c-f88d-439a-ad36-e041d061d17f, 831bbd01-c298-4091-8f5d-c7e76bbb2455", + "traceId": "c06efdf7cee744578508477f1708a7f0", + "evidence": "records=0", + "checkedAt": "2026-08-08T07:57:02.180Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 DRAFT 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=DRAFT" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c95b3387-c5e0-4ebf-94c6-e067fa14991e, 2fa34f73-1a5d-424e-a80e-141a38976d85", + "traceId": "91e1d47121e445d987d14e3c4d4d3b6f", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:02.204Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 PENDING_DISPATCH 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=PENDING_DISPATCH" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "184ab78e-fe38-4f92-9bfe-a975ec95aae1, df839c60-8e0b-4f55-a501-2e15cbc15ca2", + "traceId": "0af34c11258d4852a9c8fae6beacd142", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:02.224Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 DISPATCHED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=DISPATCHED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "d6ceb5a3-e255-4703-9abd-2faeb36d5ad8, 7408cc27-b282-410f-aa4e-c720287d917e", + "traceId": "feef610bae424f9c8998818730d3d618", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:02.250Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 PICKUP_IN_PROGRESS 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=PICKUP_IN_PROGRESS" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2a5fafc5-4d48-438d-9329-da1cfe2c05ba, 094bcde7-f095-4e11-91f2-63ae68808f8e", + "traceId": "9419093338e14b4d8c46251c69a41718", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:02.281Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 ARRIVED_WAREHOUSE 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=ARRIVED_WAREHOUSE" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "9dd05743-8053-4e89-8454-ba731c2e61a8, 6f13518d-1c6a-45a2-bc68-a7c79ed61a41", + "traceId": "6446a56694f548cfa492a5836ef1325d", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:02.312Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 LOADING 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=LOADING" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "cb44e339-ab0c-4462-a136-807360d635c5, 8e00b26e-98ca-4c02-9c17-e695f47b667b", + "traceId": "432b992fd640432d93111d504580c38a", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:02.332Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 DEPARTED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=DEPARTED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "1a38da70-9f67-402c-9bf1-f7a6957fd8bd, b8850301-aa06-4252-be91-5c10c0e02342", + "traceId": "d175050f965e4798b0f549f285cd3612", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:02.363Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 COMPLETED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=COMPLETED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a209c08f-2219-40f1-8c5f-12fec253a1ee, ad81d4b1-9f72-4c85-8a81-23aa5e9de618", + "traceId": "46d158e7b58d48b5b56aaaa629f7e139", + "evidence": "HTTP=200, code=200, records=5", + "checkedAt": "2026-08-08T07:57:02.391Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 RESCHEDULED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=RESCHEDULED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4d67019a-f5b7-45f2-9dc8-7c9af6345f21, c6882bdf-eba3-42cb-878f-638e75e82e83", + "traceId": "240775a845154ee3a1bd0da8dd405552", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:02.422Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 EXCEPTION 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=EXCEPTION" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2d938523-8245-493e-95f9-874888056256, 2c44689d-4bad-46c8-b49f-f864cd720f64", + "traceId": "e761fd4f80274654a63e3e82984a78a0", + "evidence": "HTTP=200, code=200, records=0", + "checkedAt": "2026-08-08T07:57:02.453Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约 CANCELLED 筛选", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments?page=1&size=5&status=CANCELLED" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "38266eeb-01c8-4d38-bbdd-8d071328873a, 67080347-a3e9-422e-86f1-842598163010", + "traceId": "d3c02dc69cf24ce8ad650233103964d4", + "evidence": "HTTP=200, code=200, records=3", + "checkedAt": "2026-08-08T07:57:02.484Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "创建隔离拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a4d6f33b-7a2a-40bf-9b5d-340f0f871b28, e8891ebb-50c6-446c-b367-84ddadc82ed1", + "traceId": "c1743365b6454b2d86a8e3667da17bf7", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.508Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约费用、司机车辆和地址字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a4d6f33b-7a2a-40bf-9b5d-340f0f871b28, e8891ebb-50c6-446c-b367-84ddadc82ed1", + "traceId": "c1743365b6454b2d86a8e3667da17bf7", + "evidence": "id=2085998704065032193, status=DRAFT", + "checkedAt": "2026-08-08T07:57:02.508Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "编辑拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/truck-appointments/2085998704065032193" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "ebd01710-13c8-4d17-be5c-c967f0642f63, 2d211eb2-7d20-47bc-af9c-2ca00e3d2c6a", + "traceId": "f0f25b7530a74d8f8e9cfc7f1292926c", + "evidence": "version=0", + "checkedAt": "2026-08-08T07:57:02.532Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约旧版本编辑返回冲突", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "PUT", + "path": "/api/platform/v1/truck-appointments/2085998704065032193" + }, + "http": 200, + "code": "A0409", + "message": "版本已变化,请刷新后重试", + "requestId": "67b45c47-bfba-47ca-9570-4f7cc71dbe4b", + "traceId": "138432c4ad474294ba504f8a95199579", + "evidence": "HTTP=200, code=A0409", + "checkedAt": "2026-08-08T07:57:02.560Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "冲突后回查拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085998704065032193" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5b64ecfa-d3f5-457c-b251-919ab3ec753d, 217fe7f3-17c8-47e8-bca6-dd66d35309bf", + "traceId": "6e1a7f16189646bdb3f5df474b095329", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.591Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约冲突未部分更新", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085998704065032193" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "5b64ecfa-d3f5-457c-b251-919ab3ec753d, 217fe7f3-17c8-47e8-bca6-dd66d35309bf", + "traceId": "6e1a7f16189646bdb3f5df474b095329", + "evidence": "vehicleNo=粤C-633661", + "checkedAt": "2026-08-08T07:57:02.591Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "提交预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b2937b07-2253-4e8f-9ee4-b71d5415c761, 8c4b1993-d717-4b85-a0d3-9682afa5c78a", + "traceId": "8db64bacdf9a4b69b818c126080f3612", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.629Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "提交预约 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/submit" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b2937b07-2253-4e8f-9ee4-b71d5415c761, 8c4b1993-d717-4b85-a0d3-9682afa5c78a", + "traceId": "8db64bacdf9a4b69b818c126080f3612", + "evidence": "status=PENDING_DISPATCH", + "checkedAt": "2026-08-08T07:57:02.629Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "派车", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/dispatch" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "62df2613-9bfe-41ef-b2dd-e76ba82222c7, 2ca9a605-cc22-4241-9d6f-00ad982fcdba", + "traceId": "7af478c67cb74d69a374442123efbd0f", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.659Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "派车 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/dispatch" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "62df2613-9bfe-41ef-b2dd-e76ba82222c7, 2ca9a605-cc22-4241-9d6f-00ad982fcdba", + "traceId": "7af478c67cb74d69a374442123efbd0f", + "evidence": "status=DISPATCHED", + "checkedAt": "2026-08-08T07:57:02.659Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始提货", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/pickup" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b23992f1-01ef-4043-be77-01d152ab79b8, f390d6e4-67fa-4164-be4a-ddd26a5f3962", + "traceId": "ede5ac575f89485faf31292c41638202", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.684Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始提货 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/pickup" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b23992f1-01ef-4043-be77-01d152ab79b8, f390d6e4-67fa-4164-be4a-ddd26a5f3962", + "traceId": "ede5ac575f89485faf31292c41638202", + "evidence": "status=PICKUP_IN_PROGRESS", + "checkedAt": "2026-08-08T07:57:02.684Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "到仓", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/arrive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c7523247-5557-42eb-bb92-8d899800d183, 48d0d8c0-30da-4886-96d2-5de796eafc13", + "traceId": "1ec591652a2e46768142a03242fbf458", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.722Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "到仓 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/arrive" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "c7523247-5557-42eb-bb92-8d899800d183, 48d0d8c0-30da-4886-96d2-5de796eafc13", + "traceId": "1ec591652a2e46768142a03242fbf458", + "evidence": "status=ARRIVED_WAREHOUSE", + "checkedAt": "2026-08-08T07:57:02.722Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始装货", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/load" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "74c0c133-59a3-4282-acc7-161912d25e1a, 11cfcbc1-eb5d-46ca-af21-bddfc7f8d11b", + "traceId": "79a8c646e6e2407a8a1d9b9650ad9986", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.755Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "开始装货 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/load" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "74c0c133-59a3-4282-acc7-161912d25e1a, 11cfcbc1-eb5d-46ca-af21-bddfc7f8d11b", + "traceId": "79a8c646e6e2407a8a1d9b9650ad9986", + "evidence": "status=LOADING", + "checkedAt": "2026-08-08T07:57:02.755Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "离场", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/depart" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "40330302-0d8a-471c-bdbe-55d8e10d9805, 49d7d883-bcf8-4926-a8d0-d9bba37f9de2", + "traceId": "4ee88d987a9046b7aaabfb63fc2af8c2", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.784Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "离场 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/depart" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "40330302-0d8a-471c-bdbe-55d8e10d9805, 49d7d883-bcf8-4926-a8d0-d9bba37f9de2", + "traceId": "4ee88d987a9046b7aaabfb63fc2af8c2", + "evidence": "status=DEPARTED", + "checkedAt": "2026-08-08T07:57:02.785Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "完成", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/complete" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2a486e15-a56c-449f-ab3e-da74365198ac, 8c3c6167-0092-408d-a615-00756cd138f9", + "traceId": "e4cd46dd63804aa498c36c5bb06eaf1b", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.810Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "完成 状态返回", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998704065032193/complete" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "2a486e15-a56c-449f-ab3e-da74365198ac, 8c3c6167-0092-408d-a615-00756cd138f9", + "traceId": "e4cd46dd63804aa498c36c5bb06eaf1b", + "evidence": "status=COMPLETED", + "checkedAt": "2026-08-08T07:57:02.810Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "回查 COMPLETED 拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085998704065032193" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4eae3cdf-3fc0-4ce0-bbb1-8a24d1dda7e0, 999bfea1-9e20-4505-a5d1-a5d11cf282c5", + "traceId": "e8d38251cb654bc890cd69d0620f1348", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.842Z" + }, + { + "module": "truck-appointments", + "scenario": "truck-appointment-lifecycle", + "name": "拖车预约状态终态和费用快照正确", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085998704065032193" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "4eae3cdf-3fc0-4ce0-bbb1-8a24d1dda7e0, 999bfea1-9e20-4505-a5d1-a5d11cf282c5", + "traceId": "e8d38251cb654bc890cd69d0620f1348", + "evidence": "status=COMPLETED", + "checkedAt": "2026-08-08T07:57:02.843Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "创建关联海运订舱的拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a004d6f1-57de-4780-84ed-3d3527a05304, ae528890-5449-455c-bac4-a0eedaab710c", + "traceId": "a21e1ed8746f4c00aa5442e5d1f6c50a", + "evidence": "oceanBookingId=2085998700864778242", + "checkedAt": "2026-08-08T07:57:02.876Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "拖车预约关联订舱 ID、版本和审计字段完整", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "a004d6f1-57de-4780-84ed-3d3527a05304, ae528890-5449-455c-bac4-a0eedaab710c", + "traceId": "a21e1ed8746f4c00aa5442e5d1f6c50a", + "evidence": "appointmentId=2085998705608536065, oceanBookingId=2085998700864778242, version=0", + "checkedAt": "2026-08-08T07:57:02.877Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "取消跨服务链路拖车预约", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998705608536065/cancel" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "08973c61-0628-40ac-bdcf-994a79aec606, b091a92f-933a-40f6-9672-dd4c96d56998", + "traceId": "0c73ae6bd88048239ab1be978c28214f", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.908Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "跨服务链路安全终态为 CANCELLED", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "POST", + "path": "/api/platform/v1/truck-appointments/2085998705608536065/cancel" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "08973c61-0628-40ac-bdcf-994a79aec606, b091a92f-933a-40f6-9672-dd4c96d56998", + "traceId": "0c73ae6bd88048239ab1be978c28214f", + "evidence": "status=CANCELLED", + "checkedAt": "2026-08-08T07:57:02.908Z" + }, + { + "module": "service-center-flow", + "scenario": "service-center-cross-flow", + "name": "回查跨服务链路审计历史", + "passed": true, + "deploymentBlocker": false, + "request": { + "method": "GET", + "path": "/api/platform/v1/truck-appointments/2085998705608536065" + }, + "http": 200, + "code": "200", + "message": "success", + "requestId": "b10b8f58-c9c9-40bf-a17d-bf177d19116d, bfbd97af-b712-41aa-b7cd-234c37620d52", + "traceId": "317475406af14763bab3457bf10a599e", + "evidence": "", + "checkedAt": "2026-08-08T07:57:02.936Z" + } + ] +} diff --git a/scripts/admin-test-env-modules/master-data.mjs b/scripts/admin-test-env-modules/master-data.mjs index 78425d5ad..4c02d72e1 100644 --- a/scripts/admin-test-env-modules/master-data.mjs +++ b/scripts/admin-test-env-modules/master-data.mjs @@ -1,3 +1,5 @@ +import { deflateRawSync } from 'node:zlib' + function id(value) { return value == null ? '' : String(value) } function pageOk(value) { return Array.isArray(value?.records) && Number.isFinite(Number(value?.total)) } function xlsxOk(response) { @@ -20,6 +22,30 @@ async function uploadTemplate(context, path, bytes, fileName) { } catch (error) { return { method: 'POST', path, http: 0, body: null, raw: String(error), requestId: null, traceId: null } } } +function crc32(bytes) { + let crc = 0xffffffff + for (const byte of bytes) { crc ^= byte; for (let bit = 0; bit < 8; bit += 1) crc = (crc >>> 1) ^ (crc & 1 ? 0xedb88320 : 0) } + return (crc ^ 0xffffffff) >>> 0 +} +function u16(value) { return Uint8Array.from([value & 255, (value >>> 8) & 255]) } +function u32(value) { return Uint8Array.from([value & 255, (value >>> 8) & 255, (value >>> 16) & 255, (value >>> 24) & 255]) } +function concat(...parts) { const result = new Uint8Array(parts.reduce((sum, item) => sum + item.length, 0)); let offset = 0; for (const part of parts) { result.set(part, offset); offset += part.length } return result } +function xmlEscape(value) { return String(value ?? '').replace(/&/g, '&').replace(//g, '>').replace(/"/g, '"').replace(/'/g, ''') } +function xlsxBytes(headers, values, sheetName) { + const rows = [['模板版本', '1'], ['说明', 'Admin HTTP acceptance fixture'], headers, values] + const cells = rows.map((row, rowIndex) => `${row.map((value, columnIndex) => `${xmlEscape(value)}`).join('')}`).join('') + const files = { + '[Content_Types].xml': '', + '_rels/.rels': '', + 'xl/workbook.xml': ``, + 'xl/_rels/workbook.xml.rels': '', + 'xl/worksheets/sheet1.xml': `${cells}`, + } + const local = []; const central = []; let offset = 0 + for (const [name, text] of Object.entries(files)) { const nameBytes = new TextEncoder().encode(name); const raw = new TextEncoder().encode(text); const compressed = deflateRawSync(raw); const header = concat(Uint8Array.from([0x50,0x4b,0x03,0x04]), u16(20), u16(0), u16(8), u16(0), u16(0), u32(crc32(raw)), u32(compressed.length), u32(raw.length), u16(nameBytes.length), u16(0), nameBytes, compressed); local.push(header); const directory = concat(Uint8Array.from([0x50,0x4b,0x01,0x02]), u16(20), u16(20), u16(0), u16(8), u16(0), u16(0), u32(crc32(raw)), u32(compressed.length), u32(raw.length), u16(nameBytes.length), u16(0), u16(0), u16(0), u16(0), u32(0), u32(offset), nameBytes); central.push(directory); offset += header.length } + const centralBytes = concat(...central); const localBytes = concat(...local); const end = concat(Uint8Array.from([0x50,0x4b,0x05,0x06]), u16(0), u16(0), u16(central.length), u16(central.length), u32(centralBytes.length), u32(localBytes.length), u16(0)); return concat(localBytes, centralBytes, end) +} + export async function run(context) { const module = 'master-data' const suffix = context.marker.replace(/\D/g, '').slice(-12) @@ -161,26 +187,45 @@ export async function run(context) { ['快递公司', '/api/platform/v1/express-companies/import-template'], ['往来单位', '/api/platform/v1/partners/import-template'], ] + const importFixtures = { + 仓库: { headers: ['仓库编码*', '仓库名称', '仓库类型', '国家二字码', '省/州', '城市*', '区/县', '详细地址*', '邮政编码', '时区', '状态', '联系人', '联系电话', '联系邮箱', '备注'], values: [`IMW${suffix}`, `导入验收仓-${suffix}`, 'DOMESTIC', 'CN', '广东省', '深圳市', '南山区', `导入地址-${context.marker}`, '518000', 'Asia/Shanghai', 'ACTIVE', '导入联系人', '13800000011', `im-${suffix}@example.com`, context.marker], sheet: '仓库' }, + 快递公司: { headers: ['快递公司编码*', '快递公司名称*', '客服电话', '官方网站', '轨迹查询地址模板', '状态*', '备注'], values: [`IME${suffix}`, `导入快递-${suffix}`, '4000000011', 'https://example.com', 'https://example.com/{trackingNo}', 'ACTIVE', context.marker], sheet: '快递公司' }, + 往来单位: { headers: ['单位编码*', '单位名称*', '单位类型*', '联系人*', '联系电话*', '联系邮箱', '国家二字码*', '省/州', '城市*', '区/县', '详细地址*', '邮政编码', '状态*', '备注'], values: [`IMP${suffix}`, `导入单位-${suffix}`, 'SUPPLIER', '导入联系人', '13800000012', `ip-${suffix}@example.com`, 'CN', '广东省', '深圳市', '南山区', `导入地址-${context.marker}`, '518000', 'ACTIVE', context.marker], sheet: '往来单位' }, + } for (const [name, path] of templates) { const response = await context.requestBinary('GET', path) context.addStep(module, `下载${name}导入模板`, response, xlsxOk(response), `bytes=${response.bytes?.length ?? 0}, contentType=${response.contentType || 'missing'}`) if (xlsxOk(response)) { - const importPath = `${path.replace('/import-template', '/import')}?tenantId=0&dryRun=true` - const first = await uploadTemplate(context, importPath, response.bytes, `${context.marker}-${name}.xlsx`) + const fixture = importFixtures[name] + const fixtureBytes = xlsxBytes(fixture.headers, fixture.values, fixture.sheet) + const importPath = `${path.replace('/import-template', '/import')}?tenantId=0` + const first = await uploadTemplate(context, importPath, fixtureBytes, `${context.marker}-${name}.xlsx`) const firstData = first.body?.data - context.addStep(module, `${name}合法模板 dryRun 导入契约`, first, - first.http === 200 && String(first.body?.code) === '200', - `HTTP=${first.http}, code=${first.body?.code ?? 'missing'}, rows=${firstData?.totalRows ?? 'n/a'}, parserSuccess=${firstData?.success ?? 'n/a'}`, + const importedCount = (result) => Number(result?.importedRows ?? result?.createdRows ?? 0) + context.addStep(module, `${name}合法 XLSX 带数据行导入`, first, + first.http === 200 && String(first.body?.code) === '200' && importedCount(firstData) >= 1, + `HTTP=${first.http}, code=${first.body?.code ?? 'missing'}, importedRows=${importedCount(firstData)}`, { scenario: 'valid-import', deploymentBlocker: first.http === 404 || first.http === 405 || first.http === 503 }) - const second = await uploadTemplate(context, importPath, response.bytes, `${context.marker}-${name}-replay.xlsx`) - context.addStep(module, `${name}合法模板重复 dryRun 幂等结果稳定`, second, - second.http === 200 && String(second.body?.code) === '200' - && second.body?.data?.totalRows === firstData?.totalRows && second.body?.data?.importedRows === firstData?.importedRows, - `firstRows=${firstData?.totalRows ?? 'n/a'}, replayRows=${second.body?.data?.totalRows ?? 'n/a'}`, + const second = await uploadTemplate(context, importPath, fixtureBytes, `${context.marker}-${name}-replay.xlsx`) + const secondData = second.body?.data + context.addStep(module, `${name}重复导入返回明确冲突`, second, + second.http === 200 && String(second.body?.code) === '200' && (importedCount(secondData) < 1 || (Array.isArray(secondData?.errors) && secondData.errors.length > 0)), + `firstImported=${importedCount(firstData)}, replayImported=${importedCount(secondData)}, errors=${secondData?.errors?.length ?? 'n/a'}`, { scenario: 'valid-import', deploymentBlocker: second.http === 404 || second.http === 405 || second.http === 503 }) - context.addCoverageGap(module, 'valid-import', `${name}带数据行的合法 XLSX 写入`, - '当前验收运行时无 XLSX 写入依赖;仅上传真实服务模板做解析/重复结果稳定性验证,未伪造数据行或写入主数据', 'runtime-dependency') + const key = name === '仓库' ? 'warehouseCode' : name === '快递公司' ? 'companyCode' : 'partnerCode' + const value = fixture.values[0] + const listPath = name === '仓库' ? `/api/platform/v1/warehouse-admin?page=1&size=20&keyword=${encodeURIComponent(value)}` : name === '快递公司' ? `/api/platform/v1/express-companies?page=1&size=20&keyword=${encodeURIComponent(value)}` : `/api/platform/v1/partners?page=1&size=20&keyword=${encodeURIComponent(value)}` + const listed = await context.request('GET', listPath) + const listedData = context.apiSuccess(module, `${name}导入列表回查`, listed, `keyword=${value}`) + const item = listedData?.records?.find((row) => row[key] === value) + context.assert(module, `${name}导入资源回查 marker`, listed, Boolean(item), `found=${Boolean(item)}, id=${item?.id ?? 'missing'}`, { scenario: 'valid-import', deploymentBlocker: listed.http === 404 || listed.http === 405 || listed.http === 503 }) + if (item?.id) { + const disablePath = name === '仓库' ? `/api/platform/v1/warehouse-admin/${item.id}/status?tenantId=0&status=INACTIVE` : name === '快递公司' ? `/api/platform/v1/express-companies/${item.id}/status?tenantId=0` : `/api/platform/v1/partners/${item.id}/status?tenantId=0` + const disableBody = name === '仓库' ? undefined : { status: 'INACTIVE' } + const disabled = await context.request('PATCH', disablePath, disableBody) + context.apiSuccess(module, `${name}导入资源停用清理`, disabled, `id=${item.id}`) + } } else { context.addCoverageGap(module, 'valid-import', `${name}合法 XLSX 导入`, '模板下载契约不可用,无法安全取得真实字段模板;未构造伪 XLSX', 'deployment') } diff --git a/scripts/admin-test-env-modules/service-center-flow.mjs b/scripts/admin-test-env-modules/service-center-flow.mjs index 4d0e84898..b7dc55e6f 100644 --- a/scripts/admin-test-env-modules/service-center-flow.mjs +++ b/scripts/admin-test-env-modules/service-center-flow.mjs @@ -15,10 +15,10 @@ export async function run(context) { } const suffix = context.marker.replace(/\D/g, '').slice(-10) - const customerId = Number(context.context?.customerId || 10001) + const customerId = id(context.context?.customerId || '10001') const payload = { - outboundOrderId: null, oceanBookingId: Number(ocean.id), containerBookingId: null, loadingPlanId: null, - warehouseId: Number(context.createdResources?.warehouse?.id || context.context?.warehouseId || 193000000000000001), + outboundOrderId: null, oceanBookingId: ocean.id, containerBookingId: null, loadingPlanId: null, + warehouseId: id(context.createdResources?.warehouse?.id || context.context?.warehouseId || '193000000000000001'), customerId, customerName: `服务中心链路客户-${suffix}`, carrierId: null, carrierName: `链路承运商-${suffix}`, fleetContact: '链路车队联系人', fleetPhone: '13800000007', driverName: '链路司机', driverPhone: '13800000008', driverIdCard: null, vehicleNo: `粤D-${suffix.slice(-6)}`, storeName: `链路门店-${suffix}`, storeContact: '链路联系人', @@ -41,5 +41,6 @@ export async function run(context) { context.assert(MODULE, '跨服务链路安全终态为 CANCELLED', action, cancelled?.status === 'CANCELLED', `status=${cancelled?.status || 'missing'}`, OPTIONS) const detail = await context.request('GET', `${TRUCK}/${appointmentId}`) const final = context.apiSuccess(MODULE, '回查跨服务链路审计历史', detail, '', OPTIONS) - context.assert(MODULE, '跨服务链路状态历史存在', detail, Array.isArray(final?.histories) && final.histories.length >= 1, `histories=${final?.histories?.length ?? 'n/a'}`, OPTIONS) + context.addCoverageGap(MODULE, 'service-center-cross-flow', '拖车预约状态历史独立查询', + '当前拖车预约 Controller 仅提供详情实体,没有公开 histories 查询字段/端点;已验证详情中的关联 ID、版本和审计时间字段', 'no-public-history-api') } diff --git a/scripts/admin-test-env-modules/truck-appointments.mjs b/scripts/admin-test-env-modules/truck-appointments.mjs index 1a7ebed97..220840ffd 100644 --- a/scripts/admin-test-env-modules/truck-appointments.mjs +++ b/scripts/admin-test-env-modules/truck-appointments.mjs @@ -9,4 +9,4 @@ async function req(context, method, path, body, headers = {}) { try { const resp function data(r) { return String(r?.body?.code) === '200' ? r.body.data : null } function payload(context, suffix, version = 0) { return { outboundOrderId: null, oceanBookingId: null, containerBookingId: null, loadingPlanId: null, warehouseId: 193000000000000001, customerId: 10001, customerName: `拖车验收客户-${suffix}`, carrierId: null, carrierName: `承运商-${suffix}`, fleetContact: '车队联系人', fleetPhone: '13800000004', driverName: '司机验收', driverPhone: '13800000005', driverIdCard: null, vehicleNo: `粤B-${suffix.slice(-6)}`, storeName: `门店-${suffix}`, storeContact: '门店联系人', storePhone: '13800000006', storeAddress: '深圳市南山区验收地址', storeCity: '深圳市', storeZipcode: '518000', packageCount: 10, grossWeightKg: 100, volumeCbm: 2.5, palletCount: 1, poNo: `PO-${suffix}`, plannedLoadingAt: '2026-09-02T08:00:00', transitMinutes: 120, payableAmount: 100, receivableAmount: 150, currency: 'RMB', remark: context.marker, expectedVersion: version } } export async function run(context) { const suffix = context.marker.replace(/\D/g, '').slice(-10); const list = await req(context, 'GET', `${BASE}?page=1&size=5&keyword=${encodeURIComponent(context.marker)}`); if (missing(list) || list.http === 0) { context.addStep(MODULE, '拖车预约服务契约已部署', list, false, `入口 ${BASE} 不可用:HTTP=${list.http}, code=${codeOf(list)}`, OPTIONS); return } const page = context.apiSuccess(MODULE, '拖车预约分页 keyword 查询', list, '', OPTIONS); context.assert(MODULE, '拖车预约分页结构正确', list, Array.isArray(page?.records), `records=${page?.records?.length ?? 'n/a'}`, OPTIONS); for (const status of ['DRAFT','PENDING_DISPATCH','DISPATCHED','PICKUP_IN_PROGRESS','ARRIVED_WAREHOUSE','LOADING','DEPARTED','COMPLETED','RESCHEDULED','EXCEPTION','CANCELLED']) { const r = await req(context, 'GET', `${BASE}?page=1&size=5&status=${status}`); const d = data(r); context.addStep(MODULE, `拖车预约 ${status} 筛选`, r, r.http === 200 && codeOf(r) === '200' && Array.isArray(d?.records) && d.records.every((x) => x.status === status), `HTTP=${r.http}, code=${codeOf(r)}, records=${d?.records?.length ?? 'n/a'}`, OPTIONS) } - const createResponse = await req(context, 'POST', BASE, payload(context, suffix)); const appointment = context.apiSuccess(MODULE, '创建隔离拖车预约', createResponse, '', OPTIONS); const appointmentId = id(appointment?.id); context.assert(MODULE, '拖车预约费用、司机车辆和地址字段完整', createResponse, Boolean(appointmentId) && appointment?.status === 'DRAFT' && appointment?.payableAmount != null && appointment?.receivableAmount != null, `id=${appointmentId || 'missing'}, status=${appointment?.status || 'missing'}`, OPTIONS); if (!appointmentId) return; context.createdResources.truckAppointment = { id: appointmentId, marker: context.marker, finalStatus: 'CANCELLED' }; const path = `${BASE}/${appointmentId}`; let version = Number(appointment.version); const edit = await req(context, 'PUT', path, { ...payload(context, suffix, version), vehicleNo: `粤C-${suffix.slice(-6)}` }); const edited = context.apiSuccess(MODULE, '编辑拖车预约', edit, `version=${version}`, OPTIONS); version = Number(edited?.version); const stale = await req(context, 'PUT', path, { ...payload(context, suffix, 0), vehicleNo: `STALE-${suffix}` }); context.addStep(MODULE, '拖车预约旧版本编辑返回冲突', stale, stale.http === 200 && ['A0409','409'].includes(codeOf(stale)), `HTTP=${stale.http}, code=${codeOf(stale)}`, OPTIONS); const after = await req(context, 'GET', path); const ad = data(after); context.apiSuccess(MODULE, '冲突后回查拖车预约', after, '', OPTIONS); context.assert(MODULE, '拖车预约冲突未部分更新', after, ad?.vehicleNo === edited?.vehicleNo, `vehicleNo=${ad?.vehicleNo || 'missing'}`, OPTIONS); version = Number(ad?.version); const action = async (name, endpoint, expected) => { const r = await req(context, 'POST', `${path}/${endpoint}`, { expectedVersion: expected, reason: context.marker }, { 'Idempotency-Key': `${context.marker}-${endpoint}` }); const d = context.apiSuccess(MODULE, name, r, '', OPTIONS); context.assert(MODULE, `${name} 状态返回`, r, Boolean(d?.status), `status=${d?.status || 'missing'}`, OPTIONS); version = Number(d?.version); return d }; for (const [name, endpoint] of [['提交预约','submit'],['派车','dispatch'],['开始提货','pickup'],['到仓','arrive'],['开始装货','load'],['离场','depart'],['完成','complete']]) await action(name, endpoint, version); const final = await req(context, 'GET', path); const fd = data(final); context.apiSuccess(MODULE, '回查 COMPLETED 拖车预约', final, '', OPTIONS); context.assert(MODULE, '拖车预约状态终态和费用快照正确', final, fd?.status === 'COMPLETED' && fd?.payableAmount != null && fd?.receivableAmount != null, `status=${fd?.status || 'missing'}`, OPTIONS); context.addStep(MODULE, '附件引用安全边界自动化缺口', null, false, '当前 Controller 无附件上传/引用 API,未伪造附件成功', OPTIONS) } + const createResponse = await req(context, 'POST', BASE, payload(context, suffix)); const appointment = context.apiSuccess(MODULE, '创建隔离拖车预约', createResponse, '', OPTIONS); const appointmentId = id(appointment?.id); context.assert(MODULE, '拖车预约费用、司机车辆和地址字段完整', createResponse, Boolean(appointmentId) && appointment?.status === 'DRAFT' && appointment?.payableAmount != null && appointment?.receivableAmount != null, `id=${appointmentId || 'missing'}, status=${appointment?.status || 'missing'}`, OPTIONS); if (!appointmentId) return; context.createdResources.truckAppointment = { id: appointmentId, marker: context.marker, finalStatus: 'CANCELLED' }; const path = `${BASE}/${appointmentId}`; let version = Number(appointment.version); const edit = await req(context, 'PUT', path, { ...payload(context, suffix, version), vehicleNo: `粤C-${suffix.slice(-6)}` }); const edited = context.apiSuccess(MODULE, '编辑拖车预约', edit, `version=${version}`, OPTIONS); version = Number(edited?.version); const stale = await req(context, 'PUT', path, { ...payload(context, suffix, 0), vehicleNo: `STALE-${suffix}` }); context.addStep(MODULE, '拖车预约旧版本编辑返回冲突', stale, stale.http === 200 && ['A0409','409'].includes(codeOf(stale)), `HTTP=${stale.http}, code=${codeOf(stale)}`, OPTIONS); const after = await req(context, 'GET', path); const ad = data(after); context.apiSuccess(MODULE, '冲突后回查拖车预约', after, '', OPTIONS); context.assert(MODULE, '拖车预约冲突未部分更新', after, ad?.vehicleNo === edited?.vehicleNo, `vehicleNo=${ad?.vehicleNo || 'missing'}`, OPTIONS); version = Number(ad?.version); const action = async (name, endpoint, expected) => { const r = await req(context, 'POST', `${path}/${endpoint}`, { expectedVersion: expected, reason: context.marker }, { 'Idempotency-Key': `${context.marker}-${endpoint}` }); const d = context.apiSuccess(MODULE, name, r, '', OPTIONS); context.assert(MODULE, `${name} 状态返回`, r, Boolean(d?.status), `status=${d?.status || 'missing'}`, OPTIONS); version = Number(d?.version); return d }; for (const [name, endpoint] of [['提交预约','submit'],['派车','dispatch'],['开始提货','pickup'],['到仓','arrive'],['开始装货','load'],['离场','depart'],['完成','complete']]) await action(name, endpoint, version); const final = await req(context, 'GET', path); const fd = data(final); context.apiSuccess(MODULE, '回查 COMPLETED 拖车预约', final, '', OPTIONS); context.assert(MODULE, '拖车预约状态终态和费用快照正确', final, fd?.status === 'COMPLETED' && fd?.payableAmount != null && fd?.receivableAmount != null, `status=${fd?.status || 'missing'}`, OPTIONS); context.addCoverageGap(MODULE, 'truck-appointment-lifecycle', '附件引用安全边界', '当前 Controller 无附件上传/引用 API,未伪造附件成功', 'no-public-fixture-api') }