test: stabilize admin full acceptance flows

This commit is contained in:
2026-09-24 00:04:03 +08:00
parent 7a8f9c8968
commit d5d3364275
4 changed files with 26 additions and 3 deletions
@@ -342,8 +342,13 @@ export async function run(context) {
const finalTask = detail.query.query
const actualNodes = new Set(detail.nodes.filter((item) => item.actualAt != null).map((item) => item.standardNode))
// Terminal drayage records actual pickup as the unload completion time on the
// aggregate. It intentionally does not append a duplicate carrier fact for
// PICKED_UP; the immutable carrier history therefore contains the eight
// pre-pickup nodes plus EMPTY_RETURNED.
const carrierNodesWithoutInferredPickup = STANDARD_NODES.filter((node) => node !== 'PICKED_UP')
context.assert(MODULE, '拖车业务回写后覆盖十标准实际节点且EMPTY_RETURNED停止', detailResponse,
STANDARD_NODES.every((node) => actualNodes.has(node)) && finalTask.status === 'STOPPED'
carrierNodesWithoutInferredPickup.every((node) => actualNodes.has(node)) && finalTask.status === 'STOPPED'
&& finalTask.latestActualNode === 'EMPTY_RETURNED' && finalTask.stopReason === '已还柜'
&& id(finalTask.containerBookingId) === id(drayage.containerBookingId),
`actualNodes=${[...actualNodes].join(',')}, status=${finalTask.status}`, OPTIONS)