diff --git a/integration-service/src/main/resources/openapi/lingxing-wms-v1.yaml b/integration-service/src/main/resources/openapi/lingxing-wms-v1.yaml index 36e3e563f..b0aeb8ca7 100644 --- a/integration-service/src/main/resources/openapi/lingxing-wms-v1.yaml +++ b/integration-service/src/main/resources/openapi/lingxing-wms-v1.yaml @@ -159,7 +159,7 @@ components: additionalProperties: false required: [sourceAccount, executionPurpose, rootTaskId, sessionId, attemptId, exclusiveGrantId] properties: - sourceAccount: {type: string, minLength: 1, maxLength: 64, pattern: '^[A-Za-z0-9][A-Za-z0-9._:-]*$', description: Server-configured account alias, never App Key or Secret.} + sourceAccount: {type: string, minLength: 1, maxLength: 64, pattern: '^[A-Za-z0-9][A-Za-z0-9._:-]*$', description: 'Server-configured account alias, never App Key or Secret.'} executionPurpose: {type: string, enum: [VALIDATION, BUSINESS]} rootTaskId: {type: string, minLength: 1, maxLength: 128, pattern: '^[A-Za-z0-9][A-Za-z0-9._:-]*$', description: Stable root control identifier; child tasks share root budget.} sessionId: {type: string, minLength: 1, maxLength: 128, pattern: '^[A-Za-z0-9][A-Za-z0-9._:-]*$', description: Stable session control identifier; reopening or restart does not reset it.} @@ -184,7 +184,7 @@ components: required: [attemptId, actualHttpAttempts, accountPaused] properties: attemptId: {type: string, nullable: true, description: Null only if no valid control context was accepted.} - actualHttpAttempts: {type: integer, minimum: 0, maximum: 1, description: Supplier HTTP attempts actually started, including failed calls; authorization callbacks do not count.} + actualHttpAttempts: {type: integer, minimum: 0, maximum: 1, description: 'Supplier HTTP attempts actually started, including failed calls; authorization callbacks do not count.'} accountPaused: {type: boolean} cooldownUntil: {type: string, format: date-time, nullable: true, description: Account cooldown deadline to persist; valid supplier retry time must not be shortened.} AuthorizationRequest: @@ -262,7 +262,7 @@ components: startTime: {type: string, example: '2026-09-12T08:00:00', description: Source local datetime. Must precede endTime and be no earlier than endTime minus one calendar month. No source timezone inference.} endTime: {type: string, example: '2026-10-12T08:00:00'} current: {type: integer, minimum: 1} - size: {type: integer, minimum: 1, maximum: 100, description: Local request cap, not supplier quota.} + size: {type: integer, minimum: 1, maximum: 100, description: 'Local request cap, not supplier quota.'} LocateRequest: type: object required: [deliveryNo, current, size] @@ -323,7 +323,7 @@ components: properties: productSku: {type: string} productName: {type: string, nullable: true} - actualDeliveryQty: {type: number, nullable: true, description: BigDecimal actual quantity, unknown is null.} + actualDeliveryQty: {type: number, nullable: true, description: 'BigDecimal actual quantity, unknown is null.'} deliveryQty: {type: number, nullable: true, description: Forecast only; never a replacement for actual quantity.} OrderDetail: type: object @@ -396,7 +396,7 @@ components: required: [code, message, data, timestamp] properties: code: {type: string, description: '200 success; A0401 identity; A0422 validation; B0001 or S0503 provider/configuration failure.'} - message: {type: string, description: Sanitized fixed local message, never raw supplier content.} + message: {type: string, description: 'Sanitized fixed local message, never raw supplier content.'} requestId: {type: string, nullable: true} traceId: {type: string, nullable: true} timestamp: {type: string, format: date-time}