@giveitsmaller/contracts 0.62.0 → 0.65.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -0
- package/accepted-options/accepted-options.json +1 -1
- package/accepted-options/image-output-routes.json +1 -1
- package/asyncapi/README.md +16 -0
- package/asyncapi/events.yaml +201 -7
- package/availability/README.md +25 -0
- package/availability/availability.json +20 -8
- package/code-builder/code-builder-metadata.json +5 -5
- package/dist/openapi/models/AccountLimitEntry.d.ts +1 -1
- package/dist/openapi/models/AccountLimitEntry.js +1 -1
- package/dist/openapi/models/AccountLimits.d.ts +1 -1
- package/dist/openapi/models/AccountLimits.js +1 -1
- package/dist/openapi/models/AccountLimitsLimits.d.ts +1 -1
- package/dist/openapi/models/AccountLimitsLimits.js +1 -1
- package/dist/openapi/models/AccountLimitsSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/AccountLimitsSuccessEnvelope.js +1 -1
- package/dist/openapi/models/AudioWatermarkDecodeRequest.d.ts +1 -1
- package/dist/openapi/models/AudioWatermarkDecodeRequest.js +1 -1
- package/dist/openapi/models/AudioWatermarkDecodeResponse.d.ts +1 -1
- package/dist/openapi/models/AudioWatermarkDecodeResponse.js +1 -1
- package/dist/openapi/models/AuthErrorResponse.d.ts +1 -1
- package/dist/openapi/models/AuthErrorResponse.js +1 -1
- package/dist/openapi/models/AuthErrorType.d.ts +1 -1
- package/dist/openapi/models/AuthErrorType.js +1 -1
- package/dist/openapi/models/AuthRejectionEnvelope.d.ts +1 -1
- package/dist/openapi/models/AuthRejectionEnvelope.js +1 -1
- package/dist/openapi/models/AvailabilityValue.d.ts +1 -1
- package/dist/openapi/models/AvailabilityValue.js +1 -1
- package/dist/openapi/models/BalanceExhaustedResponse.d.ts +1 -1
- package/dist/openapi/models/BalanceExhaustedResponse.js +1 -1
- package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.d.ts +1 -1
- package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.js +1 -1
- package/dist/openapi/models/BillingCheckoutRequest.d.ts +12 -1
- package/dist/openapi/models/BillingCheckoutRequest.js +1 -1
- package/dist/openapi/models/BillingCheckoutSession.d.ts +1 -1
- package/dist/openapi/models/BillingCheckoutSession.js +1 -1
- package/dist/openapi/models/BillingCheckoutSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/BillingCheckoutSuccessEnvelope.js +1 -1
- package/dist/openapi/models/CallbackEventType.d.ts +1 -1
- package/dist/openapi/models/CallbackEventType.js +1 -1
- package/dist/openapi/models/CancelAccountDeletion200Response.d.ts +1 -1
- package/dist/openapi/models/CancelAccountDeletion200Response.js +1 -1
- package/dist/openapi/models/CancelAccountDeletion200ResponseData.d.ts +1 -1
- package/dist/openapi/models/CancelAccountDeletion200ResponseData.js +1 -1
- package/dist/openapi/models/CapabilityCondition.d.ts +1 -1
- package/dist/openapi/models/CapabilityCondition.js +1 -1
- package/dist/openapi/models/CapabilityConditionOneOf.d.ts +1 -1
- package/dist/openapi/models/CapabilityConditionOneOf.js +1 -1
- package/dist/openapi/models/CapabilityConditionOneOf1.d.ts +1 -1
- package/dist/openapi/models/CapabilityConditionOneOf1.js +1 -1
- package/dist/openapi/models/CapabilityConditionOneOf2.d.ts +1 -1
- package/dist/openapi/models/CapabilityConditionOneOf2.js +1 -1
- package/dist/openapi/models/CapabilityConditionOneOf3.d.ts +1 -1
- package/dist/openapi/models/CapabilityConditionOneOf3.js +1 -1
- package/dist/openapi/models/CapabilityConditionOneOf4.d.ts +1 -1
- package/dist/openapi/models/CapabilityConditionOneOf4.js +1 -1
- package/dist/openapi/models/CapabilityConditionOneOf5.d.ts +3 -10
- package/dist/openapi/models/CapabilityConditionOneOf5.js +1 -7
- package/dist/openapi/models/CapabilityConditionOneOf6.d.ts +1 -1
- package/dist/openapi/models/CapabilityConditionOneOf6.js +1 -1
- package/dist/openapi/models/CapabilityConstraint.d.ts +1 -1
- package/dist/openapi/models/CapabilityConstraint.js +1 -1
- package/dist/openapi/models/CapabilityInputSpec.d.ts +1 -1
- package/dist/openapi/models/CapabilityInputSpec.js +1 -1
- package/dist/openapi/models/CapabilityProduces.d.ts +1 -1
- package/dist/openapi/models/CapabilityProduces.js +1 -1
- package/dist/openapi/models/CapabilityProducesOneOf.d.ts +3 -10
- package/dist/openapi/models/CapabilityProducesOneOf.js +1 -7
- package/dist/openapi/models/CapabilityProducesOneOf1.d.ts +1 -1
- package/dist/openapi/models/CapabilityProducesOneOf1.js +1 -1
- package/dist/openapi/models/CapabilityProducesOneOf2.d.ts +1 -1
- package/dist/openapi/models/CapabilityProducesOneOf2.js +1 -1
- package/dist/openapi/models/ChangePasswordRequest.d.ts +1 -1
- package/dist/openapi/models/ChangePasswordRequest.js +1 -1
- package/dist/openapi/models/CodegenSource.d.ts +1 -1
- package/dist/openapi/models/CodegenSource.js +1 -1
- package/dist/openapi/models/CodegenSourceInput.d.ts +1 -1
- package/dist/openapi/models/CodegenSourceInput.js +1 -1
- package/dist/openapi/models/CodegenSourceJob.d.ts +1 -1
- package/dist/openapi/models/CodegenSourceJob.js +1 -1
- package/dist/openapi/models/CodegenSourceJobSource.d.ts +1 -1
- package/dist/openapi/models/CodegenSourceJobSource.js +1 -1
- package/dist/openapi/models/CodegenSourceOperation.d.ts +1 -1
- package/dist/openapi/models/CodegenSourceOperation.js +1 -1
- package/dist/openapi/models/CodegenUploadPlaceholder.d.ts +1 -1
- package/dist/openapi/models/CodegenUploadPlaceholder.js +1 -1
- package/dist/openapi/models/CompositionPlan.d.ts +1 -1
- package/dist/openapi/models/CompositionPlan.js +1 -1
- package/dist/openapi/models/CompositionPlanJob.d.ts +1 -1
- package/dist/openapi/models/CompositionPlanJob.js +1 -1
- package/dist/openapi/models/CompositionPlanOperation.d.ts +1 -1
- package/dist/openapi/models/CompositionPlanOperation.js +1 -1
- package/dist/openapi/models/ConfirmEmailChange200Response.d.ts +1 -1
- package/dist/openapi/models/ConfirmEmailChange200Response.js +1 -1
- package/dist/openapi/models/ConfirmEmailChange200ResponseData.d.ts +1 -1
- package/dist/openapi/models/ConfirmEmailChange200ResponseData.js +1 -1
- package/dist/openapi/models/ConfirmEmailChangeRequest.d.ts +1 -1
- package/dist/openapi/models/ConfirmEmailChangeRequest.js +1 -1
- package/dist/openapi/models/ConnectionSource.d.ts +1 -1
- package/dist/openapi/models/ConnectionSource.js +1 -1
- package/dist/openapi/models/ContactRequest.d.ts +1 -1
- package/dist/openapi/models/ContactRequest.js +1 -1
- package/dist/openapi/models/ContactSubject.d.ts +1 -1
- package/dist/openapi/models/ContactSubject.js +1 -1
- package/dist/openapi/models/ContactValidationErrorResponse.d.ts +1 -1
- package/dist/openapi/models/ContactValidationErrorResponse.js +1 -1
- package/dist/openapi/models/CreateApiKey201Response.d.ts +1 -1
- package/dist/openapi/models/CreateApiKey201Response.js +1 -1
- package/dist/openapi/models/CreateApiKey201ResponseData.d.ts +1 -1
- package/dist/openapi/models/CreateApiKey201ResponseData.js +1 -1
- package/dist/openapi/models/CreateApiKeyRequest.d.ts +1 -1
- package/dist/openapi/models/CreateApiKeyRequest.js +1 -1
- package/dist/openapi/models/CreateBillingCheckoutSession422Response.d.ts +1 -1
- package/dist/openapi/models/CreateBillingCheckoutSession422Response.js +1 -1
- package/dist/openapi/models/CreateExternalImport403Response.d.ts +1 -1
- package/dist/openapi/models/CreateExternalImport403Response.js +1 -1
- package/dist/openapi/models/CreateExternalImport422Response.d.ts +1 -1
- package/dist/openapi/models/CreateExternalImport422Response.js +1 -1
- package/dist/openapi/models/CreateWorkflow401Response.d.ts +1 -1
- package/dist/openapi/models/CreateWorkflow401Response.js +1 -1
- package/dist/openapi/models/CreateWorkflow422Response.d.ts +1 -1
- package/dist/openapi/models/CreateWorkflow422Response.js +1 -1
- package/dist/openapi/models/CreditTransaction.d.ts +1 -1
- package/dist/openapi/models/CreditTransaction.js +1 -1
- package/dist/openapi/models/CreditTransactionSourceBucket.d.ts +1 -1
- package/dist/openapi/models/CreditTransactionSourceBucket.js +1 -1
- package/dist/openapi/models/CreditsBalanceResponse.d.ts +1 -1
- package/dist/openapi/models/CreditsBalanceResponse.js +1 -1
- package/dist/openapi/models/CreditsBalanceSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/CreditsBalanceSuccessEnvelope.js +1 -1
- package/dist/openapi/models/CreditsUsageResponse.d.ts +1 -1
- package/dist/openapi/models/CreditsUsageResponse.js +1 -1
- package/dist/openapi/models/CreditsUsageSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/CreditsUsageSuccessEnvelope.js +1 -1
- package/dist/openapi/models/Delivery.d.ts +1 -1
- package/dist/openapi/models/Delivery.js +1 -1
- package/dist/openapi/models/DeliveryOutputRef.d.ts +1 -1
- package/dist/openapi/models/DeliveryOutputRef.js +1 -1
- package/dist/openapi/models/DeliveryPlan.d.ts +1 -1
- package/dist/openapi/models/DeliveryPlan.js +1 -1
- package/dist/openapi/models/DeliveryPlanOutput.d.ts +1 -1
- package/dist/openapi/models/DeliveryPlanOutput.js +1 -1
- package/dist/openapi/models/DeliveryPlanReason.d.ts +1 -1
- package/dist/openapi/models/DeliveryPlanReason.js +1 -1
- package/dist/openapi/models/DeliverySelection.d.ts +1 -1
- package/dist/openapi/models/DeliverySelection.js +1 -1
- package/dist/openapi/models/DownloadBundle.d.ts +1 -1
- package/dist/openapi/models/DownloadBundle.js +1 -1
- package/dist/openapi/models/DroppedOption.d.ts +1 -1
- package/dist/openapi/models/DroppedOption.js +1 -1
- package/dist/openapi/models/EmailNotify.d.ts +1 -1
- package/dist/openapi/models/EmailNotify.js +1 -1
- package/dist/openapi/models/EmptySuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/EmptySuccessEnvelope.js +1 -1
- package/dist/openapi/models/EndpointProjection.d.ts +44 -9
- package/dist/openapi/models/EndpointProjection.js +4 -1
- package/dist/openapi/models/EndpointProjectionServersInner.d.ts +57 -0
- package/dist/openapi/models/EndpointProjectionServersInner.js +49 -0
- package/dist/openapi/models/ErrorEnvelope.d.ts +1 -1
- package/dist/openapi/models/ErrorEnvelope.js +1 -1
- package/dist/openapi/models/EstimateQuality.d.ts +1 -1
- package/dist/openapi/models/EstimateQuality.js +1 -1
- package/dist/openapi/models/EstimateRange.d.ts +1 -1
- package/dist/openapi/models/EstimateRange.js +1 -1
- package/dist/openapi/models/ExportAccountData200Response.d.ts +1 -1
- package/dist/openapi/models/ExportAccountData200Response.js +1 -1
- package/dist/openapi/models/ExportAccountData200ResponseData.d.ts +1 -1
- package/dist/openapi/models/ExportAccountData200ResponseData.js +1 -1
- package/dist/openapi/models/ExternalDestination.d.ts +1 -1
- package/dist/openapi/models/ExternalDestination.js +1 -1
- package/dist/openapi/models/ExternalImportCreatedResponse.d.ts +1 -1
- package/dist/openapi/models/ExternalImportCreatedResponse.js +1 -1
- package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.js +1 -1
- package/dist/openapi/models/ExternalImportRequest.d.ts +1 -1
- package/dist/openapi/models/ExternalImportRequest.js +1 -1
- package/dist/openapi/models/ExternalImportToken.d.ts +1 -1
- package/dist/openapi/models/ExternalImportToken.js +1 -1
- package/dist/openapi/models/ExternalSource.d.ts +1 -1
- package/dist/openapi/models/ExternalSource.js +1 -1
- package/dist/openapi/models/FeatureNotAvailableResponse.d.ts +1 -1
- package/dist/openapi/models/FeatureNotAvailableResponse.js +1 -1
- package/dist/openapi/models/FeatureTierRestrictedResponse.d.ts +1 -1
- package/dist/openapi/models/FeatureTierRestrictedResponse.js +1 -1
- package/dist/openapi/models/FeatureViolation.d.ts +1 -1
- package/dist/openapi/models/FeatureViolation.js +1 -1
- package/dist/openapi/models/ImageEncodeCapabilities.d.ts +1 -1
- package/dist/openapi/models/ImageEncodeCapabilities.js +1 -1
- package/dist/openapi/models/JobDefinition.d.ts +1 -1
- package/dist/openapi/models/JobDefinition.js +1 -1
- package/dist/openapi/models/JobDownload.d.ts +1 -1
- package/dist/openapi/models/JobDownload.js +1 -1
- package/dist/openapi/models/JobInputV2.d.ts +1 -1
- package/dist/openapi/models/JobInputV2.js +1 -1
- package/dist/openapi/models/JobMediaClass.d.ts +1 -1
- package/dist/openapi/models/JobMediaClass.js +1 -1
- package/dist/openapi/models/JobOutputSource.d.ts +1 -1
- package/dist/openapi/models/JobOutputSource.js +1 -1
- package/dist/openapi/models/JobResponse.d.ts +1 -1
- package/dist/openapi/models/JobResponse.js +1 -1
- package/dist/openapi/models/JobStatus.d.ts +1 -1
- package/dist/openapi/models/JobStatus.js +1 -1
- package/dist/openapi/models/JobType.d.ts +1 -1
- package/dist/openapi/models/JobType.js +1 -1
- package/dist/openapi/models/LivenessResponse.d.ts +1 -1
- package/dist/openapi/models/LivenessResponse.js +1 -1
- package/dist/openapi/models/LoginUser200Response.d.ts +1 -1
- package/dist/openapi/models/LoginUser200Response.js +1 -1
- package/dist/openapi/models/LoginUser200ResponseData.d.ts +1 -1
- package/dist/openapi/models/LoginUser200ResponseData.js +1 -1
- package/dist/openapi/models/LoginUser200ResponseDataUser.d.ts +1 -1
- package/dist/openapi/models/LoginUser200ResponseDataUser.js +1 -1
- package/dist/openapi/models/LoginUser401Response.d.ts +1 -1
- package/dist/openapi/models/LoginUser401Response.js +1 -1
- package/dist/openapi/models/LoginUserRequest.d.ts +1 -1
- package/dist/openapi/models/LoginUserRequest.js +1 -1
- package/dist/openapi/models/LongFormConcurrencyLimitResponse.d.ts +1 -1
- package/dist/openapi/models/LongFormConcurrencyLimitResponse.js +1 -1
- package/dist/openapi/models/LongFormConcurrencyLimitResponseAllOfLinks.d.ts +1 -1
- package/dist/openapi/models/LongFormConcurrencyLimitResponseAllOfLinks.js +1 -1
- package/dist/openapi/models/MediaCategory.d.ts +1 -1
- package/dist/openapi/models/MediaCategory.js +1 -1
- package/dist/openapi/models/MetadataResponse.d.ts +1 -1
- package/dist/openapi/models/MetadataResponse.js +1 -1
- package/dist/openapi/models/MetadataResponseDimensions.d.ts +1 -1
- package/dist/openapi/models/MetadataResponseDimensions.js +1 -1
- package/dist/openapi/models/MetadataResponseExif.d.ts +1 -1
- package/dist/openapi/models/MetadataResponseExif.js +1 -1
- package/dist/openapi/models/MetadataResponseExifGps.d.ts +1 -1
- package/dist/openapi/models/MetadataResponseExifGps.js +1 -1
- package/dist/openapi/models/MetadataSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MetadataSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MimeGroupSchema.d.ts +1 -1
- package/dist/openapi/models/MimeGroupSchema.js +1 -1
- package/dist/openapi/models/MultiInputSource.d.ts +1 -1
- package/dist/openapi/models/MultiInputSource.js +1 -1
- package/dist/openapi/models/MultipartCompleteRequest.d.ts +1 -1
- package/dist/openapi/models/MultipartCompleteRequest.js +1 -1
- package/dist/openapi/models/MultipartCompleteRequestPartsInner.d.ts +1 -1
- package/dist/openapi/models/MultipartCompleteRequestPartsInner.js +1 -1
- package/dist/openapi/models/MultipartCompleteResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartCompleteResponse.js +1 -1
- package/dist/openapi/models/MultipartCompleteSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartCompleteSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MultipartInitiateRequestMetadataHint.d.ts +1 -1
- package/dist/openapi/models/MultipartInitiateRequestMetadataHint.js +1 -1
- package/dist/openapi/models/MultipartInitiateResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartInitiateResponse.js +1 -1
- package/dist/openapi/models/MultipartInitiateSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartInitiateSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MultipartKeepaliveResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartKeepaliveResponse.js +1 -1
- package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MultipartPartListing.d.ts +1 -1
- package/dist/openapi/models/MultipartPartListing.js +1 -1
- package/dist/openapi/models/MultipartPresignRequest.d.ts +1 -1
- package/dist/openapi/models/MultipartPresignRequest.js +1 -1
- package/dist/openapi/models/MultipartPresignResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartPresignResponse.js +1 -1
- package/dist/openapi/models/MultipartPresignSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartPresignSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MultipartStatusResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartStatusResponse.js +1 -1
- package/dist/openapi/models/MultipartStatusSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartStatusSuccessEnvelope.js +1 -1
- package/dist/openapi/models/NotifyConfig.d.ts +1 -1
- package/dist/openapi/models/NotifyConfig.js +1 -1
- package/dist/openapi/models/OperationCapability.d.ts +1 -1
- package/dist/openapi/models/OperationCapability.js +1 -1
- package/dist/openapi/models/OperationDefinition.d.ts +1 -1
- package/dist/openapi/models/OperationDefinition.js +1 -1
- package/dist/openapi/models/OperationDownload.d.ts +1 -1
- package/dist/openapi/models/OperationDownload.js +1 -1
- package/dist/openapi/models/OperationInputModel.d.ts +1 -1
- package/dist/openapi/models/OperationInputModel.js +1 -1
- package/dist/openapi/models/OperationResponse.d.ts +1 -1
- package/dist/openapi/models/OperationResponse.js +1 -1
- package/dist/openapi/models/OperationResult.d.ts +1 -1
- package/dist/openapi/models/OperationResult.js +1 -1
- package/dist/openapi/models/OperationResultMetadata.d.ts +1 -1
- package/dist/openapi/models/OperationResultMetadata.js +1 -1
- package/dist/openapi/models/OperationResultMetrics.d.ts +1 -1
- package/dist/openapi/models/OperationResultMetrics.js +1 -1
- package/dist/openapi/models/OperationSchemaDefinition.d.ts +1 -1
- package/dist/openapi/models/OperationSchemaDefinition.js +1 -1
- package/dist/openapi/models/OperationStatus.d.ts +1 -1
- package/dist/openapi/models/OperationStatus.js +1 -1
- package/dist/openapi/models/OperationType.d.ts +1 -1
- package/dist/openapi/models/OperationType.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponse.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponse.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeatures.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeatures.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDelivery.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDelivery.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliveryMode.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliveryMode.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliverySelection.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliverySelection.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesProcessing.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesProcessing.js +1 -1
- package/dist/openapi/models/OptionSchema.d.ts +1 -1
- package/dist/openapi/models/OptionSchema.js +1 -1
- package/dist/openapi/models/OutputProperties.d.ts +1 -1
- package/dist/openapi/models/OutputProperties.js +1 -1
- package/dist/openapi/models/OutputPropertiesIsAnimated.d.ts +1 -1
- package/dist/openapi/models/OutputPropertiesIsAnimated.js +1 -1
- package/dist/openapi/models/PerClassAvailabilityEntry.d.ts +1 -1
- package/dist/openapi/models/PerClassAvailabilityEntry.js +1 -1
- package/dist/openapi/models/PerRoleCardinalityEntry.d.ts +1 -1
- package/dist/openapi/models/PerRoleCardinalityEntry.js +1 -1
- package/dist/openapi/models/PerValueAvailabilityEntry.d.ts +1 -1
- package/dist/openapi/models/PerValueAvailabilityEntry.js +1 -1
- package/dist/openapi/models/PresignedUrlPart.d.ts +1 -1
- package/dist/openapi/models/PresignedUrlPart.js +1 -1
- package/dist/openapi/models/ProbePendingResponse.d.ts +1 -1
- package/dist/openapi/models/ProbePendingResponse.js +1 -1
- package/dist/openapi/models/ProcessingClass.d.ts +1 -1
- package/dist/openapi/models/ProcessingClass.js +1 -1
- package/dist/openapi/models/ProcessingClassBandViolation.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassBandViolation.js +1 -1
- package/dist/openapi/models/ProcessingClassConstraints.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassConstraints.js +1 -1
- package/dist/openapi/models/ProcessingClassEntry.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassEntry.js +1 -1
- package/dist/openapi/models/ProcessingClassExceedsBandResponse.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassExceedsBandResponse.js +1 -1
- package/dist/openapi/models/ProcessingClassHint.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassHint.js +1 -1
- package/dist/openapi/models/ProcessingClassReason.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassReason.js +1 -1
- package/dist/openapi/models/ProcessingClassRejectReason.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassRejectReason.js +1 -1
- package/dist/openapi/models/ProcessingPlan.d.ts +1 -1
- package/dist/openapi/models/ProcessingPlan.js +1 -1
- package/dist/openapi/models/ProcessingPlanJob.d.ts +1 -1
- package/dist/openapi/models/ProcessingPlanJob.js +1 -1
- package/dist/openapi/models/ReEncodeDecision.d.ts +1 -1
- package/dist/openapi/models/ReEncodeDecision.js +1 -1
- package/dist/openapi/models/ReadinessResponse.d.ts +1 -1
- package/dist/openapi/models/ReadinessResponse.js +1 -1
- package/dist/openapi/models/RegisterUser422Response.d.ts +1 -1
- package/dist/openapi/models/RegisterUser422Response.js +1 -1
- package/dist/openapi/models/RegisterUserRequest.d.ts +1 -1
- package/dist/openapi/models/RegisterUserRequest.js +1 -1
- package/dist/openapi/models/RequestAccountDeletion200Response.d.ts +1 -1
- package/dist/openapi/models/RequestAccountDeletion200Response.js +1 -1
- package/dist/openapi/models/RequestAccountDeletion200ResponseData.d.ts +1 -1
- package/dist/openapi/models/RequestAccountDeletion200ResponseData.js +1 -1
- package/dist/openapi/models/RequestAccountDeletionRequest.d.ts +1 -1
- package/dist/openapi/models/RequestAccountDeletionRequest.js +1 -1
- package/dist/openapi/models/ResendVerificationEmailRequest.d.ts +1 -1
- package/dist/openapi/models/ResendVerificationEmailRequest.js +1 -1
- package/dist/openapi/models/ResetPasswordRequest.d.ts +1 -1
- package/dist/openapi/models/ResetPasswordRequest.js +1 -1
- package/dist/openapi/models/ResponseEnvelope.d.ts +1 -1
- package/dist/openapi/models/ResponseEnvelope.js +1 -1
- package/dist/openapi/models/RetryResponse.d.ts +1 -1
- package/dist/openapi/models/RetryResponse.js +1 -1
- package/dist/openapi/models/RetrySuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/RetrySuccessEnvelope.js +1 -1
- package/dist/openapi/models/SseCompletionBase.d.ts +1 -1
- package/dist/openapi/models/SseCompletionBase.js +1 -1
- package/dist/openapi/models/SseEventType.d.ts +1 -1
- package/dist/openapi/models/SseEventType.js +1 -1
- package/dist/openapi/models/SseJobCompletedData.d.ts +1 -1
- package/dist/openapi/models/SseJobCompletedData.js +1 -1
- package/dist/openapi/models/SseJobFailedData.d.ts +1 -1
- package/dist/openapi/models/SseJobFailedData.js +1 -1
- package/dist/openapi/models/SseMultiOutputCompletion.d.ts +1 -1
- package/dist/openapi/models/SseMultiOutputCompletion.js +1 -1
- package/dist/openapi/models/SseMultiOutputCompletionMetrics.d.ts +1 -1
- package/dist/openapi/models/SseMultiOutputCompletionMetrics.js +1 -1
- package/dist/openapi/models/SseMultiOutputCompletionWithKind.d.ts +1 -1
- package/dist/openapi/models/SseMultiOutputCompletionWithKind.js +1 -1
- package/dist/openapi/models/SseMultiOutputResultEntry.d.ts +1 -1
- package/dist/openapi/models/SseMultiOutputResultEntry.js +1 -1
- package/dist/openapi/models/SseOperationCompletedData.d.ts +1 -1
- package/dist/openapi/models/SseOperationCompletedData.js +1 -1
- package/dist/openapi/models/SseOperationCompletionResult.d.ts +1 -1
- package/dist/openapi/models/SseOperationCompletionResult.js +1 -1
- package/dist/openapi/models/SseOperationFailedData.d.ts +1 -1
- package/dist/openapi/models/SseOperationFailedData.js +1 -1
- package/dist/openapi/models/SseOperationProgressData.d.ts +1 -1
- package/dist/openapi/models/SseOperationProgressData.js +1 -1
- package/dist/openapi/models/SseSingleOutputCompletion.d.ts +1 -1
- package/dist/openapi/models/SseSingleOutputCompletion.js +1 -1
- package/dist/openapi/models/SseWorkflowTerminalData.d.ts +1 -1
- package/dist/openapi/models/SseWorkflowTerminalData.js +1 -1
- package/dist/openapi/models/TierDefaultLimits.d.ts +1 -1
- package/dist/openapi/models/TierDefaultLimits.js +1 -1
- package/dist/openapi/models/TierDefaults.d.ts +1 -1
- package/dist/openapi/models/TierDefaults.js +1 -1
- package/dist/openapi/models/TierDefaultsByAudience.d.ts +1 -1
- package/dist/openapi/models/TierDefaultsByAudience.js +1 -1
- package/dist/openapi/models/TierRestrictionKind.d.ts +1 -1
- package/dist/openapi/models/TierRestrictionKind.js +1 -1
- package/dist/openapi/models/TierRestrictionResponse.d.ts +1 -1
- package/dist/openapi/models/TierRestrictionResponse.js +1 -1
- package/dist/openapi/models/UpdateProfile200Response.d.ts +1 -1
- package/dist/openapi/models/UpdateProfile200Response.js +1 -1
- package/dist/openapi/models/UpdateProfile200ResponseData.d.ts +7 -28
- package/dist/openapi/models/UpdateProfile200ResponseData.js +1 -19
- package/dist/openapi/models/UpdateProfile422Response.d.ts +1 -1
- package/dist/openapi/models/UpdateProfile422Response.js +1 -1
- package/dist/openapi/models/UpdateProfileRequest.d.ts +1 -1
- package/dist/openapi/models/UpdateProfileRequest.js +1 -1
- package/dist/openapi/models/UploadConstraintsApplied.d.ts +1 -1
- package/dist/openapi/models/UploadConstraintsApplied.js +1 -1
- package/dist/openapi/models/UploadDurationExceedsTierResponse.d.ts +1 -1
- package/dist/openapi/models/UploadDurationExceedsTierResponse.js +1 -1
- package/dist/openapi/models/UploadFile403Response.d.ts +1 -1
- package/dist/openapi/models/UploadFile403Response.js +1 -1
- package/dist/openapi/models/UploadFile422Response.d.ts +1 -1
- package/dist/openapi/models/UploadFile422Response.js +1 -1
- package/dist/openapi/models/UploadProbeMediaMetadata.d.ts +1 -1
- package/dist/openapi/models/UploadProbeMediaMetadata.js +1 -1
- package/dist/openapi/models/UploadProbeProcessingClass.d.ts +1 -1
- package/dist/openapi/models/UploadProbeProcessingClass.js +1 -1
- package/dist/openapi/models/UploadProbeResponse.d.ts +1 -1
- package/dist/openapi/models/UploadProbeResponse.js +1 -1
- package/dist/openapi/models/UploadProbeStatus.d.ts +1 -1
- package/dist/openapi/models/UploadProbeStatus.js +1 -1
- package/dist/openapi/models/UploadProbeSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/UploadProbeSuccessEnvelope.js +1 -1
- package/dist/openapi/models/UploadResponse.d.ts +1 -1
- package/dist/openapi/models/UploadResponse.js +1 -1
- package/dist/openapi/models/UploadSizeExceedsTierResponse.d.ts +1 -1
- package/dist/openapi/models/UploadSizeExceedsTierResponse.js +1 -1
- package/dist/openapi/models/UploadSource.d.ts +1 -1
- package/dist/openapi/models/UploadSource.js +1 -1
- package/dist/openapi/models/UploadSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/UploadSuccessEnvelope.js +1 -1
- package/dist/openapi/models/UploadThresholds.d.ts +1 -1
- package/dist/openapi/models/UploadThresholds.js +1 -1
- package/dist/openapi/models/UserTier.d.ts +1 -1
- package/dist/openapi/models/UserTier.js +1 -1
- package/dist/openapi/models/ValidationErrorEnvelope.d.ts +1 -1
- package/dist/openapi/models/ValidationErrorEnvelope.js +1 -1
- package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.d.ts +1 -1
- package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.js +1 -1
- package/dist/openapi/models/VerifyEmailRequest.d.ts +1 -1
- package/dist/openapi/models/VerifyEmailRequest.js +1 -1
- package/dist/openapi/models/WarningType.d.ts +1 -1
- package/dist/openapi/models/WarningType.js +1 -1
- package/dist/openapi/models/WebhookOperationContext.d.ts +1 -1
- package/dist/openapi/models/WebhookOperationContext.js +1 -1
- package/dist/openapi/models/WebhookPayload.d.ts +1 -1
- package/dist/openapi/models/WebhookPayload.js +1 -1
- package/dist/openapi/models/WorkflowArchiveResponse.d.ts +3 -10
- package/dist/openapi/models/WorkflowArchiveResponse.js +1 -7
- package/dist/openapi/models/WorkflowArchiveSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowArchiveSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowCancelBillingEffect.d.ts +1 -1
- package/dist/openapi/models/WorkflowCancelBillingEffect.js +1 -1
- package/dist/openapi/models/WorkflowCancelResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowCancelResponse.js +1 -1
- package/dist/openapi/models/WorkflowCancelSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowCancelSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowCreateRequest.d.ts +1 -1
- package/dist/openapi/models/WorkflowCreateRequest.js +1 -1
- package/dist/openapi/models/WorkflowCreateResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowCreateResponse.js +1 -1
- package/dist/openapi/models/WorkflowCreateSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowCreateSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowCreditSummary.d.ts +1 -1
- package/dist/openapi/models/WorkflowCreditSummary.js +1 -1
- package/dist/openapi/models/WorkflowDownloadResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowDownloadResponse.js +1 -1
- package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowEdge.d.ts +1 -1
- package/dist/openapi/models/WorkflowEdge.js +1 -1
- package/dist/openapi/models/WorkflowExpiredResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowExpiredResponse.js +1 -1
- package/dist/openapi/models/WorkflowListResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowListResponse.js +1 -1
- package/dist/openapi/models/WorkflowListSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowListSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowPauseRequiredAction.d.ts +1 -1
- package/dist/openapi/models/WorkflowPauseRequiredAction.js +1 -1
- package/dist/openapi/models/WorkflowPausedDetail.d.ts +1 -1
- package/dist/openapi/models/WorkflowPausedDetail.js +1 -1
- package/dist/openapi/models/WorkflowPausedDetailLinks.d.ts +1 -1
- package/dist/openapi/models/WorkflowPausedDetailLinks.js +1 -1
- package/dist/openapi/models/WorkflowProcessing.d.ts +1 -1
- package/dist/openapi/models/WorkflowProcessing.js +1 -1
- package/dist/openapi/models/WorkflowRestoreResponse.d.ts +3 -10
- package/dist/openapi/models/WorkflowRestoreResponse.js +1 -7
- package/dist/openapi/models/WorkflowRestoreSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowRestoreSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowResumeResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowResumeResponse.js +1 -1
- package/dist/openapi/models/WorkflowResumeSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowResumeSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowSource.d.ts +1 -1
- package/dist/openapi/models/WorkflowSource.js +1 -1
- package/dist/openapi/models/WorkflowStatus.d.ts +1 -1
- package/dist/openapi/models/WorkflowStatus.js +1 -1
- package/dist/openapi/models/WorkflowStatusResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowStatusResponse.js +1 -1
- package/dist/openapi/models/WorkflowStatusSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowStatusSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowSummary.d.ts +1 -1
- package/dist/openapi/models/WorkflowSummary.js +1 -1
- package/dist/openapi/models/WorkflowSummaryJob.d.ts +1 -1
- package/dist/openapi/models/WorkflowSummaryJob.js +1 -1
- package/dist/openapi/models/WorkflowWarning.d.ts +1 -1
- package/dist/openapi/models/WorkflowWarning.js +1 -1
- package/dist/openapi/models/WorkflowWarningSeverity.d.ts +1 -1
- package/dist/openapi/models/WorkflowWarningSeverity.js +1 -1
- package/dist/openapi/models/index.d.ts +1 -0
- package/dist/openapi/models/index.js +1 -0
- package/dist/openapi/runtime.d.ts +1 -1
- package/dist/openapi/runtime.js +1 -1
- package/openapi/README.md +17 -0
- package/openapi/api.yaml +297 -18
- package/operation-capabilities/operation-capabilities.json +1 -1
- package/operations/README.md +17 -0
- package/operations/schemas/compress.yaml +57 -3
- package/package.json +4 -2
package/openapi/api.yaml
CHANGED
|
@@ -89,7 +89,7 @@ info:
|
|
|
89
89
|
of truth instead of hardcoding magic numbers. A runtime
|
|
90
90
|
`GET /api/uploads/limits` endpoint for dynamic discovery
|
|
91
91
|
(per-tier / per-environment overrides) is a deferred follow-up.
|
|
92
|
-
version: 2.
|
|
92
|
+
version: 2.194.0
|
|
93
93
|
contact:
|
|
94
94
|
name: API Support
|
|
95
95
|
|
|
@@ -1229,7 +1229,21 @@ paths:
|
|
|
1229
1229
|
- name: archived
|
|
1230
1230
|
in: query
|
|
1231
1231
|
required: false
|
|
1232
|
-
|
|
1232
|
+
x-availability: planned
|
|
1233
|
+
description: |
|
|
1234
|
+
🔴 **NOT IMPLEMENTED — see the `planned` note below. A server
|
|
1235
|
+
that does not support this parameter SILENTLY IGNORES IT and
|
|
1236
|
+
returns the DEFAULT (non-archived) list.** That is the dangerous
|
|
1237
|
+
half of this feature and the reason it is called out here rather
|
|
1238
|
+
than only on the endpoints: `POST .../archive` would 404, which is
|
|
1239
|
+
loud and teaches the caller immediately, whereas
|
|
1240
|
+
**`archived=true` returns a 200 carrying the wrong rows.** A
|
|
1241
|
+
consumer asking for their archive receives their NON-archived
|
|
1242
|
+
workflows and is told nothing. **Silent wrong data beats a 404
|
|
1243
|
+
every time for damage.**
|
|
1244
|
+
Until the server implements it, a client MUST NOT present an
|
|
1245
|
+
"archived" view built on this parameter.
|
|
1246
|
+
|
|
1233
1247
|
Archived-row filter (ticket
|
|
1234
1248
|
[`j2s6T2qf`](https://trello.com/c/j2s6T2qf)). **Default `false`**:
|
|
1235
1249
|
archived workflows are EXCLUDED, so archiving declutters the
|
|
@@ -2355,6 +2369,160 @@ paths:
|
|
|
2355
2369
|
/api/workflows/{id}/events:
|
|
2356
2370
|
get:
|
|
2357
2371
|
summary: Stream workflow events (SSE)
|
|
2372
|
+
# THE STREAM DOES NOT LIVE ON THE API HOST. THAT IS A CONTRACT FACT,
|
|
2373
|
+
# DECLARED PER-OPERATION, AND DELIBERATELY NOT A CONVENTION.
|
|
2374
|
+
#
|
|
2375
|
+
# ⚠️ RULING (hub, 2026-08-14, on sdks' recommendation with api agreeing):
|
|
2376
|
+
# SPLIT HOSTS, DECLARED PER-OPERATION. Not string surgery on `api.*`, not
|
|
2377
|
+
# a per-client rule. The reason is not aesthetic — IT IS THAT A CONVENTION
|
|
2378
|
+
# CAN ONLY FAIL SILENTLY. The frontend carried `VITE_SSE_BASE_URL`
|
|
2379
|
+
# (created 2026-06-17) and preferred it when set; PROD NEVER SET IT, so
|
|
2380
|
+
# prod silently fell back to the gateway path and inherited an entry point
|
|
2381
|
+
# that cannot stream — for weeks, while everyone believed SSE worked. A
|
|
2382
|
+
# declared per-operation server cannot fail that way.
|
|
2383
|
+
#
|
|
2384
|
+
# 🔴 WHAT THIS DECLARATION DOES **NOT** DO, STATED BECAUSE IT IS THE
|
|
2385
|
+
# DIFFERENCE BETWEEN DECLARED AND IN EFFECT: it does not repoint any
|
|
2386
|
+
# existing client. Both shipped SDKs resolve EVERY url from a single
|
|
2387
|
+
# configured base — PHP `GislClient::streamEvents()` builds from the same
|
|
2388
|
+
# base URL as everything else, and TypeScript does likewise — and the
|
|
2389
|
+
# generators emit models and supporting files rather than per-operation
|
|
2390
|
+
# server handling. **A CLIENT CONFIGURED FOR `api.*` KEEPS SENDING SSE TO
|
|
2391
|
+
# `api.*` AFTER THIS LANDS.**
|
|
2392
|
+
#
|
|
2393
|
+
# ⇒ This block makes the routing a CONTRACT FACT that a client can
|
|
2394
|
+
# consume. Consuming it is a change to endpoint RESOLUTION in two
|
|
2395
|
+
# languages (sdks' `VUozk5Bc`), and it is theirs. Writing "a generated
|
|
2396
|
+
# client picks the host up from the contract" would be the same
|
|
2397
|
+
# declared-equals-working error this comment exists to warn about.
|
|
2398
|
+
#
|
|
2399
|
+
# THE RULE, STATED SO NOBODY DERIVES A DIFFERENT ONE: this is the ONLY
|
|
2400
|
+
# operation with its own `servers`. Every other endpoint uses the
|
|
2401
|
+
# root-level `servers:`. The stream API happens to proxy `ANY /{proxy+}`
|
|
2402
|
+
# — the whole API — so "route SSE at the stream host" could have meant
|
|
2403
|
+
# "move everything"; IT DOES NOT. Split per-endpoint, and the split is
|
|
2404
|
+
# expressed here rather than in three consumers' READMEs.
|
|
2405
|
+
#
|
|
2406
|
+
# WHY THE API HOST CANNOT DO THIS — mechanism, not a workaround (api,
|
|
2407
|
+
# 2026-08-13, relayed via the hub; contracts has not measured it):
|
|
2408
|
+
# `api.*` is an API Gateway **HTTP API** with `integration_timeout_ms`
|
|
2409
|
+
# 29000 against a **30s hard AWS ceiling with no quota path**, and
|
|
2410
|
+
# `responseTransferMode: STREAM` is **REST-only**. `stream.*` is a REST
|
|
2411
|
+
# API with a 900000ms timeout and STREAM set. Raising a number fixes
|
|
2412
|
+
# nothing.
|
|
2413
|
+
#
|
|
2414
|
+
# THE REVERT CONDITION IS MET. This block was reverted on 2026-08-12
|
|
2415
|
+
# (27d606c) with a named gate: "re-lands when the path is PROVEN".
|
|
2416
|
+
# e2e then measured `stream.staging` streaming — `:ok` at 0.0s, frames
|
|
2417
|
+
# over 165s, ~16s heartbeats — while `api.staging` 503s at 29.35s, which
|
|
2418
|
+
# is the integration timeout firing to the millisecond. Measured AND
|
|
2419
|
+
# mechanistically explained, which is what the gate asked for.
|
|
2420
|
+
#
|
|
2421
|
+
# ⚠️ THERE IS STILL DELIBERATELY NO PRODUCTION ENTRY, and the reason is
|
|
2422
|
+
# UNCHANGED by the staging proof: PROD HAS NEVER HAD A PROVEN STREAM.
|
|
2423
|
+
# Declaring a prod host would be a contract fact pointing at something
|
|
2424
|
+
# unproven, which is worse than the gap because it LOOKS resolved — the
|
|
2425
|
+
# same error this block exists to prevent, committed in the opposite
|
|
2426
|
+
# direction. The gate is the same one, applied to prod: a first-byte
|
|
2427
|
+
# timestamp on a heartbeat from the prod stream host.
|
|
2428
|
+
servers:
|
|
2429
|
+
- url: http://localhost:8080
|
|
2430
|
+
# WHICH ROOT SERVER THIS ENTRY REPLACES. Without it a client has to
|
|
2431
|
+
# infer the mapping from ordering or hostname shape — which is a
|
|
2432
|
+
# per-client rule, i.e. the exact thing declaring the split was meant
|
|
2433
|
+
# to remove. A client matches its CONFIGURED base against
|
|
2434
|
+
# `x-replaces` exactly and takes `url`; no convention, no ordering
|
|
2435
|
+
# dependency, and an unmatched base is an honest "no override for the
|
|
2436
|
+
# host you are pointed at" rather than a guess.
|
|
2437
|
+
x-replaces: http://localhost:8080
|
|
2438
|
+
description: |
|
|
2439
|
+
Local development. Same origin as the rest of the API — local runs
|
|
2440
|
+
do NOT reproduce the split-host topology, so a client that works
|
|
2441
|
+
locally has **not** exercised the cross-origin path. Treat a local
|
|
2442
|
+
pass as evidence about your code and not about the routing.
|
|
2443
|
+
- url: https://stream.staging.giveitsmaller.com
|
|
2444
|
+
x-replaces: https://api.staging.giveitsmaller.com
|
|
2445
|
+
description: |
|
|
2446
|
+
Staging stream host. A SEPARATE PUBLIC ENTRY POINT from
|
|
2447
|
+
`api.staging.giveitsmaller.com`, which is why it is declared here
|
|
2448
|
+
rather than inherited: the API host fronts an integration with no
|
|
2449
|
+
response-streaming mode, and this is the only endpoint that needs
|
|
2450
|
+
streaming.
|
|
2451
|
+
|
|
2452
|
+
⚠️ **THIS HOST ALLOWS EXACTLY ONE CORS ORIGIN, AND IT IS A
|
|
2453
|
+
DIFFERENT POLICY FROM THE API HOST.** The stream stack sets
|
|
2454
|
+
`cors_allow_origin` (**singular**) to the frontend host alone, in
|
|
2455
|
+
**both** environments. The API host sets `cors_allow_origins`
|
|
2456
|
+
(**plural**) — and **the list differs BY ENVIRONMENT**:
|
|
2457
|
+
|
|
2458
|
+
staging api host localhost:5173, localhost:3000, www.staging…
|
|
2459
|
+
prod api host www.giveitsmaller.com ← NO localhost, never had
|
|
2460
|
+
both stream the frontend host only (singular)
|
|
2461
|
+
|
|
2462
|
+
⇒ **A BROWSER ON localhost CAN CALL THE STAGING API HOST AND
|
|
2463
|
+
CANNOT CALL EITHER STREAM HOST.** The break is **conditional on a
|
|
2464
|
+
local build choosing this host**: the frontend's local build leaves
|
|
2465
|
+
`VITE_SSE_BASE_URL` unset and falls back to the API host, so nothing
|
|
2466
|
+
breaks today (measured by `compression_frontend`, 2026-08-14). **A
|
|
2467
|
+
client that DOES point a localhost browser here is blocked, and the
|
|
2468
|
+
failure arrives as a CORS error that reads as a configuration
|
|
2469
|
+
mistake in their own app.**
|
|
2470
|
+
|
|
2471
|
+
**This is a local-development concern only; prod never permitted
|
|
2472
|
+
localhost on any host** (measured by `compression_terraform`,
|
|
2473
|
+
2026-08-14 — an earlier version of this note gave the staging list
|
|
2474
|
+
without saying it was staging's, which would have read as universal
|
|
2475
|
+
and turned a dev-experience issue into an apparent launch one).
|
|
2476
|
+
|
|
2477
|
+
⚠️ **"Just add another origin" is not a CONFIG CHANGE here, and
|
|
2478
|
+
the reason is our implementation rather than an AWS limit.** An API
|
|
2479
|
+
Gateway **HTTP** API has a native, declarative CORS configuration
|
|
2480
|
+
that takes a LIST and echoes whichever origin matches. A **REST**
|
|
2481
|
+
API has no equivalent declarative feature — the value is whatever
|
|
2482
|
+
the preflight MOCK integration and the backend return — so
|
|
2483
|
+
multi-origin support is possible but must be **built**
|
|
2484
|
+
(validate-the-Origin-then-echo), which is a change with its own
|
|
2485
|
+
correctness risk rather than an extra list entry.
|
|
2486
|
+
|
|
2487
|
+
*(An earlier version of this note said a REST API simply cannot do
|
|
2488
|
+
it. That is wrong: AWS documents that for proxy integrations the
|
|
2489
|
+
BACKEND returns `Access-Control-Allow-Origin`, so per-origin
|
|
2490
|
+
responses are available to anyone willing to implement them.
|
|
2491
|
+
Stating a platform prohibition where an implementation choice
|
|
2492
|
+
exists closes a door that is open.)*
|
|
2493
|
+
|
|
2494
|
+
The credentialed case does foreclose the other escape: with
|
|
2495
|
+
`Allow-Credentials: true` the origin header cannot be `*`.
|
|
2496
|
+
|
|
2497
|
+
The same applies to embedded and third-party consumers, and to any
|
|
2498
|
+
**browser build of a published SDK**: `@giveitsmaller/sdk` ships a
|
|
2499
|
+
browser entry point whose client carries `streamEvents`, so this is
|
|
2500
|
+
a published-surface limit rather than an internal one.
|
|
2501
|
+
|
|
2502
|
+
A server-side caller is unaffected. **The origin list is a property
|
|
2503
|
+
of the deployed stack, not of this contract** — it is stated here
|
|
2504
|
+
because a client author reading only the URL cannot discover it, and
|
|
2505
|
+
it changes only in `compression_terraform`.
|
|
2506
|
+
|
|
2507
|
+
⚠️ **AUTH ON THIS HOST IS CROSS-ORIGIN, AND `sessionAuth` IS THE
|
|
2508
|
+
ONE THAT MAY NOT SURVIVE IT.** This operation advertises
|
|
2509
|
+
`bearerAuth`, `sessionAuth` and anonymous access — but the security
|
|
2510
|
+
list describes what the ENDPOINT accepts, not what a browser can
|
|
2511
|
+
deliver to a different origin.
|
|
2512
|
+
|
|
2513
|
+
**Cookie domain scope is necessary and NOT sufficient.** A
|
|
2514
|
+
credentialed cross-origin request additionally requires the client
|
|
2515
|
+
to opt in (`EventSource { withCredentials: true }`, or `fetch`
|
|
2516
|
+
with `credentials: 'include'`) **and** the server to answer with
|
|
2517
|
+
`Access-Control-Allow-Credentials` and a non-wildcard origin. Bearer
|
|
2518
|
+
and capability headers likewise need the header to be permitted by
|
|
2519
|
+
the preflight response.
|
|
2520
|
+
|
|
2521
|
+
**None of that is verified by this contract, and contracts has not
|
|
2522
|
+
measured it.** ⇒ **A browser client SHOULD prefer `bearerAuth` or
|
|
2523
|
+
the anonymous capability header on this host**, and should treat
|
|
2524
|
+
cookie-based session auth over it as unproven until somebody
|
|
2525
|
+
measures a credentialed cross-origin stream.
|
|
2358
2526
|
description: |
|
|
2359
2527
|
Server-Sent Events endpoint for real-time workflow progress. The server pushes
|
|
2360
2528
|
events as workflow, job, and operation statuses change.
|
|
@@ -2754,6 +2922,29 @@ paths:
|
|
|
2754
2922
|
a **409** — cancel it first (`POST /api/workflows/{id}/cancel`) or wait
|
|
2755
2923
|
for it to finish. Archiving does NOT change the workflow's status; it
|
|
2756
2924
|
stays terminal and the response echoes it unchanged.
|
|
2925
|
+
# ⚠️ NO PUBLIC HTTP ROUTE EXISTS FOR THIS. Downgraded to `planned`
|
|
2926
|
+
# 2026-08-12 (yi4TDKVJ, raised by sdks + codex) on POSITIVE evidence, as
|
|
2927
|
+
# standing policy 3 requires — not on an absent attestation, which policy
|
|
2928
|
+
# 4 says is not enough:
|
|
2929
|
+
# * no `#[Route(...)]` matching archive/restore anywhere in
|
|
2930
|
+
# compression_api's `src/`;
|
|
2931
|
+
# * no `api/workflows/{id}/archive` or `/restore` path in `src/` or
|
|
2932
|
+
# `config/`;
|
|
2933
|
+
# * verified independently by sdks (named commit) and by codex reading
|
|
2934
|
+
# the list controller and its repository.
|
|
2935
|
+
#
|
|
2936
|
+
# ⚠️ CORRECTION TO THE RELAYED EVIDENCE, because it changes the ticket
|
|
2937
|
+
# rather than the verdict: the claim reaching this repo was that a grep
|
|
2938
|
+
# for `archiveWorkflow|/archive|archived` over `src` and `config`
|
|
2939
|
+
# "returns NO OUTPUT". IT DOES NOT — `ArchiveWorkflowCommand`,
|
|
2940
|
+
# `ArchiveWorkflowCommandHandler` and a `RestoreWorkflow` command all
|
|
2941
|
+
# EXIST, and there is an ADMIN CRUD controller that archives. So this is
|
|
2942
|
+
# **implemented in the application layer and not exposed on the public
|
|
2943
|
+
# API**, which is a different thing from "nothing behind it". The verdict
|
|
2944
|
+
# is unchanged — an unroutable capability is unreachable, so `planned` is
|
|
2945
|
+
# correct — but anyone scoping the work should know a handler already
|
|
2946
|
+
# exists.
|
|
2947
|
+
x-availability: planned
|
|
2757
2948
|
operationId: archiveWorkflow
|
|
2758
2949
|
security: [{bearerAuth: []}, {sessionAuth: []}] # required (explicit 401 in response set)
|
|
2759
2950
|
x-identity-scoped: true # workflow-ownership-scoped per ADR-0016 D3
|
|
@@ -2845,6 +3036,29 @@ paths:
|
|
|
2845
3036
|
`status` is the workflow's unchanged status (any `WorkflowStatus`
|
|
2846
3037
|
value), not a fixed terminal subset. There is no 409: un-archiving is
|
|
2847
3038
|
always safe.
|
|
3039
|
+
# ⚠️ NO PUBLIC HTTP ROUTE EXISTS FOR THIS. Downgraded to `planned`
|
|
3040
|
+
# 2026-08-12 (yi4TDKVJ, raised by sdks + codex) on POSITIVE evidence, as
|
|
3041
|
+
# standing policy 3 requires — not on an absent attestation, which policy
|
|
3042
|
+
# 4 says is not enough:
|
|
3043
|
+
# * no `#[Route(...)]` matching archive/restore anywhere in
|
|
3044
|
+
# compression_api's `src/`;
|
|
3045
|
+
# * no `api/workflows/{id}/archive` or `/restore` path in `src/` or
|
|
3046
|
+
# `config/`;
|
|
3047
|
+
# * verified independently by sdks (named commit) and by codex reading
|
|
3048
|
+
# the list controller and its repository.
|
|
3049
|
+
#
|
|
3050
|
+
# ⚠️ CORRECTION TO THE RELAYED EVIDENCE, because it changes the ticket
|
|
3051
|
+
# rather than the verdict: the claim reaching this repo was that a grep
|
|
3052
|
+
# for `archiveWorkflow|/archive|archived` over `src` and `config`
|
|
3053
|
+
# "returns NO OUTPUT". IT DOES NOT — `ArchiveWorkflowCommand`,
|
|
3054
|
+
# `ArchiveWorkflowCommandHandler` and a `RestoreWorkflow` command all
|
|
3055
|
+
# EXIST, and there is an ADMIN CRUD controller that archives. So this is
|
|
3056
|
+
# **implemented in the application layer and not exposed on the public
|
|
3057
|
+
# API**, which is a different thing from "nothing behind it". The verdict
|
|
3058
|
+
# is unchanged — an unroutable capability is unreachable, so `planned` is
|
|
3059
|
+
# correct — but anyone scoping the work should know a handler already
|
|
3060
|
+
# exists.
|
|
3061
|
+
x-availability: planned
|
|
2848
3062
|
operationId: restoreWorkflow
|
|
2849
3063
|
security: [{bearerAuth: []}, {sessionAuth: []}] # required (explicit 401 in response set)
|
|
2850
3064
|
x-identity-scoped: true # workflow-ownership-scoped per ADR-0016 D3
|
|
@@ -4867,13 +5081,10 @@ paths:
|
|
|
4867
5081
|
properties:
|
|
4868
5082
|
updated:
|
|
4869
5083
|
type: boolean
|
|
4870
|
-
enum: [true]
|
|
4871
5084
|
name_changed:
|
|
4872
5085
|
type: boolean
|
|
4873
|
-
enum: [true]
|
|
4874
5086
|
email_change_requested:
|
|
4875
5087
|
type: boolean
|
|
4876
|
-
enum: [true]
|
|
4877
5088
|
message:
|
|
4878
5089
|
type: string
|
|
4879
5090
|
example:
|
|
@@ -5642,7 +5853,7 @@ paths:
|
|
|
5642
5853
|
type: subscription
|
|
5643
5854
|
key: pro
|
|
5644
5855
|
credit_pack:
|
|
5645
|
-
summary: Buy
|
|
5856
|
+
summary: Buy the £25 credit pack
|
|
5646
5857
|
value:
|
|
5647
5858
|
type: pack
|
|
5648
5859
|
key: pack_25
|
|
@@ -7061,6 +7272,17 @@ components:
|
|
|
7061
7272
|
- `type: subscription` → `key` ∈ { `pro`, `max` }
|
|
7062
7273
|
- `type: pack` → `key` ∈ { `pack_10`, `pack_25`, `pack_50` }
|
|
7063
7274
|
|
|
7275
|
+
⚠️ **The number in a pack SKU is the PRICE IN POUNDS, not a credit
|
|
7276
|
+
count** — `pack_25` is the £25 pack, and the credits it grants are a
|
|
7277
|
+
different number entirely, roughly two orders of magnitude larger.
|
|
7278
|
+
**How many** is server-side (api's versioned Stripe catalog) and is
|
|
7279
|
+
deliberately not restated here, because a credit grant that lives in
|
|
7280
|
+
two places drifts — and the copy a customer reads before paying is the
|
|
7281
|
+
one that must not be stale. Clients that need to show it read it from
|
|
7282
|
+
the server; they never infer it from the SKU. *An example on this very
|
|
7283
|
+
endpoint read the SKU as a quantity until 2026-08-12, so the axis is
|
|
7284
|
+
named here rather than assumed obvious.*
|
|
7285
|
+
|
|
7064
7286
|
The `type` ↔ `key` pairing is validated **server-side**, not by this
|
|
7065
7287
|
schema (the `key` enum lists all values across both types). A
|
|
7066
7288
|
mismatched or unprovisioned pair returns `422` `UNPROCESSABLE_ENTITY`;
|
|
@@ -7888,7 +8110,6 @@ components:
|
|
|
7888
8110
|
workflow is a 409, never a 200.
|
|
7889
8111
|
archived:
|
|
7890
8112
|
type: boolean
|
|
7891
|
-
enum: [true]
|
|
7892
8113
|
description: Always `true` on a 200 — the workflow is archived.
|
|
7893
8114
|
archived_at:
|
|
7894
8115
|
type: string
|
|
@@ -7930,7 +8151,6 @@ components:
|
|
|
7930
8151
|
$ref: '#/components/schemas/WorkflowStatus'
|
|
7931
8152
|
archived:
|
|
7932
8153
|
type: boolean
|
|
7933
|
-
enum: [false]
|
|
7934
8154
|
description: |
|
|
7935
8155
|
Always `false` on a 200 — the workflow is no longer archived
|
|
7936
8156
|
(or was never archived; restore is an idempotent no-op there).
|
|
@@ -13748,7 +13968,6 @@ components:
|
|
|
13748
13968
|
properties:
|
|
13749
13969
|
same_as_input:
|
|
13750
13970
|
type: boolean
|
|
13751
|
-
enum: [true]
|
|
13752
13971
|
- type: object
|
|
13753
13972
|
additionalProperties: false
|
|
13754
13973
|
required: [from_option]
|
|
@@ -13877,7 +14096,6 @@ components:
|
|
|
13877
14096
|
description: Field token under test.
|
|
13878
14097
|
isSet:
|
|
13879
14098
|
type: boolean
|
|
13880
|
-
enum: [true]
|
|
13881
14099
|
description: |
|
|
13882
14100
|
Leaf test — asserts `field` is present/set. Only the
|
|
13883
14101
|
positive form is used; negate via a wrapping `not` node.
|
|
@@ -13917,11 +14135,16 @@ components:
|
|
|
13917
14135
|
EndpointProjection:
|
|
13918
14136
|
type: object
|
|
13919
14137
|
description: |
|
|
13920
|
-
Per-endpoint projection entry per ADR-0016 §D4. Five
|
|
13921
|
-
|
|
13922
|
-
reserved/null today (operation-level `required_tier`
|
|
13923
|
-
to flow via `operations.*.required_tier
|
|
13924
|
-
|
|
14138
|
+
Per-endpoint projection entry per ADR-0016 §D4. Five required
|
|
14139
|
+
fields plus an OPTIONAL `servers`; `required_tier` at endpoint
|
|
14140
|
+
level is reserved/null today (operation-level `required_tier`
|
|
14141
|
+
continues to flow via `operations.*.required_tier`).
|
|
14142
|
+
|
|
14143
|
+
⚠️ **`availability` is DERIVED from the operation's
|
|
14144
|
+
`x-availability` and is no longer always `stable`** — an
|
|
14145
|
+
earlier version of this description said every shipped endpoint
|
|
14146
|
+
was `stable`, which was true only because the generator
|
|
14147
|
+
hardcoded it.
|
|
13925
14148
|
required:
|
|
13926
14149
|
- auth
|
|
13927
14150
|
- identity_scoped
|
|
@@ -13929,6 +14152,54 @@ components:
|
|
|
13929
14152
|
- availability
|
|
13930
14153
|
- operation_id
|
|
13931
14154
|
properties:
|
|
14155
|
+
servers:
|
|
14156
|
+
type: array
|
|
14157
|
+
minItems: 1
|
|
14158
|
+
description: |
|
|
14159
|
+
OPTIONAL. Present **only** when the operation overrides the
|
|
14160
|
+
root host — today, the SSE stream endpoint alone.
|
|
14161
|
+
|
|
14162
|
+
**Absence means "inherits the root `servers`" and is not a
|
|
14163
|
+
gap.** Emitting a copy of the root on every entry would put
|
|
14164
|
+
one value on 43 rows, which conveys nothing and would invite
|
|
14165
|
+
a consumer to read this projection as the routing source of
|
|
14166
|
+
record for endpoints that have no override.
|
|
14167
|
+
|
|
14168
|
+
⚠️ **This field exists because the declaration was
|
|
14169
|
+
unreachable without it.** The routing split is declared on
|
|
14170
|
+
the operation in `openapi/api.yaml`, but SDK consumers read
|
|
14171
|
+
this sidecar rather than parsing the spec at runtime — so a
|
|
14172
|
+
host declared only in the spec was in the same position as
|
|
14173
|
+
the convention it replaced.
|
|
14174
|
+
items:
|
|
14175
|
+
type: object
|
|
14176
|
+
additionalProperties: false
|
|
14177
|
+
required: [url, replaces]
|
|
14178
|
+
properties:
|
|
14179
|
+
url:
|
|
14180
|
+
type: string
|
|
14181
|
+
format: uri
|
|
14182
|
+
description: The host serving this operation.
|
|
14183
|
+
replaces:
|
|
14184
|
+
type: string
|
|
14185
|
+
minLength: 1
|
|
14186
|
+
description: |
|
|
14187
|
+
**The ROOT server URL this entry overrides.** A client
|
|
14188
|
+
matches its own configured base against this exactly
|
|
14189
|
+
and takes `url`.
|
|
14190
|
+
|
|
14191
|
+
⚠️ **Without it the mapping has to be inferred** from
|
|
14192
|
+
list ordering or hostname shape — which is a
|
|
14193
|
+
per-client rule, and therefore the precise thing that
|
|
14194
|
+
declaring the split was meant to remove. An
|
|
14195
|
+
unmatched base is an honest *"no override for the host
|
|
14196
|
+
you are pointed at"* rather than a guess.
|
|
14197
|
+
description:
|
|
14198
|
+
type: string
|
|
14199
|
+
description: |
|
|
14200
|
+
Verbatim from the operation's server entry. Carries
|
|
14201
|
+
the caveats a URL cannot — CORS scope, whether the
|
|
14202
|
+
entry exercises the split-host topology at all.
|
|
13932
14203
|
auth:
|
|
13933
14204
|
type: string
|
|
13934
14205
|
enum: [anonymous, optional, required]
|
|
@@ -13966,9 +14237,17 @@ components:
|
|
|
13966
14237
|
type: string
|
|
13967
14238
|
enum: [stable, beta, experimental, planned, deprecated]
|
|
13968
14239
|
description: |
|
|
13969
|
-
Endpoint-level availability
|
|
13970
|
-
`
|
|
13971
|
-
|
|
14240
|
+
Endpoint-level availability, **DERIVED from the operation's
|
|
14241
|
+
`x-availability`** and defaulting to `stable` when the
|
|
14242
|
+
operation declares none.
|
|
14243
|
+
|
|
14244
|
+
⚠️ **It is NOT always `stable`.** This description used to
|
|
14245
|
+
say it was, and the sidecar agreed with it — because the
|
|
14246
|
+
generator HARDCODED the value. Four endpoints read `planned`
|
|
14247
|
+
today, three of which (`probeUpload`,
|
|
14248
|
+
`createExternalImport`, `decodeAudioWatermark`) had declared
|
|
14249
|
+
`planned` in the spec all along and were silently
|
|
14250
|
+
contradicted.
|
|
13972
14251
|
operation_id:
|
|
13973
14252
|
type: string
|
|
13974
14253
|
description: |
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# TypeScript -- Operation Option Models
|
|
2
|
+
|
|
3
|
+
> **Auto-generated** -- do not edit manually. Changes will be overwritten on the next generation run.
|
|
4
|
+
>
|
|
5
|
+
> Regenerate with: `make project/generate-tests`
|
|
6
|
+
|
|
7
|
+
## Source
|
|
8
|
+
|
|
9
|
+
- **Spec:** `compression_contracts/schemas/operations/*.yaml` (custom schema format)
|
|
10
|
+
- **Generator:** Custom Python emitter (`scripts/generators/operation_schema/typescript.py`)
|
|
11
|
+
- **Files:** 35
|
|
12
|
+
|
|
13
|
+
## Contents
|
|
14
|
+
|
|
15
|
+
TypeScript enums and interfaces for per-operation options (compression quality, thumbnail dimensions, conversion formats, etc.).
|
|
16
|
+
|
|
17
|
+
Operation types covered: archive, audio_overlay, audio_to_video, audio_watermark, compress, convert, custom_luma, image_watermark, merge, passthrough, render_variants, split, text_watermark, thumbnail, transform, video_text_watermark, video_watermark.
|
|
@@ -1268,7 +1268,25 @@ operation:
|
|
|
1268
1268
|
- application/vnd.openxmlformats-officedocument.wordprocessingml.document
|
|
1269
1269
|
- application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
|
|
1270
1270
|
- application/vnd.openxmlformats-officedocument.presentationml.presentation
|
|
1271
|
-
|
|
1271
|
+
# 200 MiB. RAISED from 100 MiB (Y0tkvebF, lambdas-measured 2026-08-12).
|
|
1272
|
+
# The old cap was real in MECHANISM and calibrated against the WRONG
|
|
1273
|
+
# NUMBER: the ZIP strategy needs Read+Seek so the whole document is in
|
|
1274
|
+
# memory (peak ~= 2x input + largest entry), and the worker comment
|
|
1275
|
+
# justified 100 MiB as fitting "a Lambda with 512 MB+ memory" — but
|
|
1276
|
+
# gisl-{stg,prod}-euw1-compression-document is 3008 MiB, six times that.
|
|
1277
|
+
# At 200 MiB input, peak ~= 450 MiB = 15% of the function.
|
|
1278
|
+
#
|
|
1279
|
+
# WHY IT HAD TO MOVE: hub decision 22 raises the free UPLOAD cap to
|
|
1280
|
+
# ~150 MB, which sits ABOVE this PROCESSING cap — so a free user would
|
|
1281
|
+
# upload a 140 MB DOCX successfully and have the OPERATION reject it.
|
|
1282
|
+
# Under the old 10 MiB upload cap that window could not exist; raising
|
|
1283
|
+
# the upload cap created it.
|
|
1284
|
+
#
|
|
1285
|
+
# ⚠️ The ZIP-bomb guards are a DIFFERENT axis and did NOT move:
|
|
1286
|
+
# MAX_IMAGE_ENTRY_SIZE 50 MB, MAX_ZIP_ENTRIES 10,000,
|
|
1287
|
+
# MAX_CUMULATIVE_IMAGE_BYTES 500 MB bound what a document expands INTO;
|
|
1288
|
+
# this bounds what we ACCEPT.
|
|
1289
|
+
max_input_size_bytes: 209715200
|
|
1272
1290
|
# See the document_pdf honesty note: the worker reads ONLY `quality` today;
|
|
1273
1291
|
# the per-format options are `planned` (advertised-ahead, FE-hidden).
|
|
1274
1292
|
options:
|
|
@@ -1301,7 +1319,25 @@ operation:
|
|
|
1301
1319
|
- application/vnd.oasis.opendocument.text
|
|
1302
1320
|
- application/vnd.oasis.opendocument.spreadsheet
|
|
1303
1321
|
- application/vnd.oasis.opendocument.presentation
|
|
1304
|
-
|
|
1322
|
+
# 200 MiB. RAISED from 100 MiB (Y0tkvebF, lambdas-measured 2026-08-12).
|
|
1323
|
+
# The old cap was real in MECHANISM and calibrated against the WRONG
|
|
1324
|
+
# NUMBER: the ZIP strategy needs Read+Seek so the whole document is in
|
|
1325
|
+
# memory (peak ~= 2x input + largest entry), and the worker comment
|
|
1326
|
+
# justified 100 MiB as fitting "a Lambda with 512 MB+ memory" — but
|
|
1327
|
+
# gisl-{stg,prod}-euw1-compression-document is 3008 MiB, six times that.
|
|
1328
|
+
# At 200 MiB input, peak ~= 450 MiB = 15% of the function.
|
|
1329
|
+
#
|
|
1330
|
+
# WHY IT HAD TO MOVE: hub decision 22 raises the free UPLOAD cap to
|
|
1331
|
+
# ~150 MB, which sits ABOVE this PROCESSING cap — so a free user would
|
|
1332
|
+
# upload a 140 MB DOCX successfully and have the OPERATION reject it.
|
|
1333
|
+
# Under the old 10 MiB upload cap that window could not exist; raising
|
|
1334
|
+
# the upload cap created it.
|
|
1335
|
+
#
|
|
1336
|
+
# ⚠️ The ZIP-bomb guards are a DIFFERENT axis and did NOT move:
|
|
1337
|
+
# MAX_IMAGE_ENTRY_SIZE 50 MB, MAX_ZIP_ENTRIES 10,000,
|
|
1338
|
+
# MAX_CUMULATIVE_IMAGE_BYTES 500 MB bound what a document expands INTO;
|
|
1339
|
+
# this bounds what we ACCEPT.
|
|
1340
|
+
max_input_size_bytes: 209715200
|
|
1305
1341
|
# See the document_pdf honesty note: worker reads ONLY `quality`; the rest `planned`.
|
|
1306
1342
|
options:
|
|
1307
1343
|
quality:
|
|
@@ -1327,7 +1363,25 @@ operation:
|
|
|
1327
1363
|
document_epub:
|
|
1328
1364
|
mimes:
|
|
1329
1365
|
- application/epub+zip
|
|
1330
|
-
|
|
1366
|
+
# 200 MiB. RAISED from 100 MiB (Y0tkvebF, lambdas-measured 2026-08-12).
|
|
1367
|
+
# The old cap was real in MECHANISM and calibrated against the WRONG
|
|
1368
|
+
# NUMBER: the ZIP strategy needs Read+Seek so the whole document is in
|
|
1369
|
+
# memory (peak ~= 2x input + largest entry), and the worker comment
|
|
1370
|
+
# justified 100 MiB as fitting "a Lambda with 512 MB+ memory" — but
|
|
1371
|
+
# gisl-{stg,prod}-euw1-compression-document is 3008 MiB, six times that.
|
|
1372
|
+
# At 200 MiB input, peak ~= 450 MiB = 15% of the function.
|
|
1373
|
+
#
|
|
1374
|
+
# WHY IT HAD TO MOVE: hub decision 22 raises the free UPLOAD cap to
|
|
1375
|
+
# ~150 MB, which sits ABOVE this PROCESSING cap — so a free user would
|
|
1376
|
+
# upload a 140 MB DOCX successfully and have the OPERATION reject it.
|
|
1377
|
+
# Under the old 10 MiB upload cap that window could not exist; raising
|
|
1378
|
+
# the upload cap created it.
|
|
1379
|
+
#
|
|
1380
|
+
# ⚠️ The ZIP-bomb guards are a DIFFERENT axis and did NOT move:
|
|
1381
|
+
# MAX_IMAGE_ENTRY_SIZE 50 MB, MAX_ZIP_ENTRIES 10,000,
|
|
1382
|
+
# MAX_CUMULATIVE_IMAGE_BYTES 500 MB bound what a document expands INTO;
|
|
1383
|
+
# this bounds what we ACCEPT.
|
|
1384
|
+
max_input_size_bytes: 209715200
|
|
1331
1385
|
# See the document_pdf honesty note: worker reads ONLY `quality`; the rest `planned`.
|
|
1332
1386
|
options:
|
|
1333
1387
|
quality:
|
package/package.json
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@giveitsmaller/contracts",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Generated contract types for GISL (Give It Smaller)",
|
|
3
|
+
"version": "0.65.0",
|
|
4
|
+
"description": "Generated contract types for GISL (Give It Smaller). Generated from compression_contracts spec v2.194.0.",
|
|
5
|
+
"gislContractsSpec": "v2.194.0",
|
|
5
6
|
"license": "Apache-2.0",
|
|
6
7
|
"type": "module",
|
|
7
8
|
"main": "./dist/index.js",
|
|
@@ -49,6 +50,7 @@
|
|
|
49
50
|
"./operations/schemas/video_watermark.yaml": "./operations/schemas/video_watermark.yaml"
|
|
50
51
|
},
|
|
51
52
|
"files": [
|
|
53
|
+
"README.md",
|
|
52
54
|
"dist/",
|
|
53
55
|
"openapi/api.yaml",
|
|
54
56
|
"asyncapi/events.yaml",
|