@wildo-ai/saas-models 1.1.5 → 1.1.7
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/dist/esm/__tests__/setup.d.ts.map +1 -1
- package/dist/esm/__tests__/setup.js.map +1 -1
- package/dist/esm/_inspect.d.ts.map +1 -1
- package/dist/esm/_inspect.js.map +1 -1
- package/dist/esm/applications/application-metadata.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/application-metadata.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/applications/application-subject.shared.schemas.d.ts.map +1 -1
- package/dist/esm/applications/application-subject.shared.schemas.js.map +1 -1
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.js +2 -1
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/applications/applications-context.schemas.d.ts +176 -2
- package/dist/esm/applications/applications-context.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications-context.schemas.js.map +1 -1
- package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.resources-config.schemas.js +3 -2
- package/dist/esm/applications/applications.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/applications/applications.shared.schemas.d.ts +7 -5
- package/dist/esm/applications/applications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.schemas.js +6 -4
- package/dist/esm/applications/applications.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts +10 -1
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.js +49 -15
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/billing-account.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-account.shared.schemas.js +2 -2
- package/dist/esm/billing/billing-account.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-configuration.shared.schemas.d.ts +25 -0
- package/dist/esm/billing/billing-configuration.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-configuration.shared.schemas.js +19 -0
- package/dist/esm/billing/billing-configuration.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-enums.shared.schemas.d.ts +27 -5
- package/dist/esm/billing/billing-enums.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-enums.shared.schemas.js +30 -4
- package/dist/esm/billing/billing-enums.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-types.shared.schemas.d.ts +37 -11
- package/dist/esm/billing/billing-types.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-types.shared.schemas.js +31 -19
- package/dist/esm/billing/billing-types.shared.schemas.js.map +1 -1
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts +2 -0
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.js +18 -7
- package/dist/esm/billing/credit-pool.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/credit-pool.shared.schemas.d.ts +2 -0
- package/dist/esm/billing/credit-pool.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/credit-pool.shared.schemas.js +7 -1
- package/dist/esm/billing/credit-pool.shared.schemas.js.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js +6 -6
- package/dist/esm/billing/invoice-ref.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/invoice-ref.shared.schemas.js +1 -1
- package/dist/esm/billing/invoice-ref.shared.schemas.js.map +1 -1
- package/dist/esm/billing/price.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/price.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/price.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/price.shared.schemas.js +5 -3
- package/dist/esm/billing/price.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts +11 -1
- package/dist/esm/billing/product-behavior-policy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product-behavior-policy.shared.schemas.js +39 -23
- package/dist/esm/billing/product-behavior-policy.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product-definition.shared.schemas.d.ts +30 -2
- package/dist/esm/billing/product-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product-definition.shared.schemas.js +35 -0
- package/dist/esm/billing/product-definition.shared.schemas.js.map +1 -1
- package/dist/esm/billing/product.shared.resources-config.schemas.d.ts +6 -3
- package/dist/esm/billing/product.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/product.shared.schemas.d.ts +7 -3
- package/dist/esm/billing/product.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product.shared.schemas.js +22 -7
- package/dist/esm/billing/product.shared.schemas.js.map +1 -1
- package/dist/esm/billing/promotions.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/promotions.shared.resources-config.schemas.js +8 -8
- package/dist/esm/billing/promotions.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/promotions.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/promotions.shared.schemas.js.map +1 -1
- package/dist/esm/billing/public-pricing-catalog.shared.atoms.d.ts +135 -0
- package/dist/esm/billing/public-pricing-catalog.shared.atoms.d.ts.map +1 -0
- package/dist/esm/billing/public-pricing-catalog.shared.atoms.js +112 -0
- package/dist/esm/billing/public-pricing-catalog.shared.atoms.js.map +1 -0
- package/dist/esm/billing/public-pricing-catalog.shared.d.ts +30 -0
- package/dist/esm/billing/public-pricing-catalog.shared.d.ts.map +1 -0
- package/dist/esm/billing/public-pricing-catalog.shared.js +53 -0
- package/dist/esm/billing/public-pricing-catalog.shared.js.map +1 -0
- package/dist/esm/billing/referral-reward.shared.schemas.d.ts +51 -0
- package/dist/esm/billing/referral-reward.shared.schemas.d.ts.map +1 -0
- package/dist/esm/billing/referral-reward.shared.schemas.js +92 -0
- package/dist/esm/billing/referral-reward.shared.schemas.js.map +1 -0
- package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts +54 -33
- package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/referral.shared.resources-config.schemas.js +56 -2
- package/dist/esm/billing/referral.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/referral.shared.schemas.d.ts +22 -37
- package/dist/esm/billing/referral.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/referral.shared.schemas.js +24 -44
- package/dist/esm/billing/referral.shared.schemas.js.map +1 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts +9 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.js +55 -22
- package/dist/esm/billing/subscription.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/subscription.shared.schemas.d.ts +80 -5
- package/dist/esm/billing/subscription.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/subscription.shared.schemas.js +85 -25
- package/dist/esm/billing/subscription.shared.schemas.js.map +1 -1
- package/dist/esm/billing/usage-flush-evidence.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/usage-flush-evidence.shared.schemas.js.map +1 -1
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/usage-record.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/usage-record.shared.schemas.js +5 -5
- package/dist/esm/billing/usage-record.shared.schemas.js.map +1 -1
- package/dist/esm/charts/aggregation-query.shared.schemas.d.ts.map +1 -1
- package/dist/esm/charts/aggregation-query.shared.schemas.js.map +1 -1
- package/dist/esm/charts/aggregation.shared.definitions.d.ts.map +1 -1
- package/dist/esm/charts/aggregation.shared.definitions.js.map +1 -1
- package/dist/esm/charts/chart-definition-builder.shared.d.ts.map +1 -1
- package/dist/esm/charts/chart-definition-builder.shared.js.map +1 -1
- package/dist/esm/companion/artifact-placement.shared.definitions.d.ts.map +1 -1
- package/dist/esm/companion/artifact-placement.shared.definitions.js.map +1 -1
- package/dist/esm/companion/provider-discovery.shared.schemas.d.ts +143 -2
- package/dist/esm/companion/provider-discovery.shared.schemas.d.ts.map +1 -1
- package/dist/esm/companion/provider-discovery.shared.schemas.js +84 -1
- package/dist/esm/companion/provider-discovery.shared.schemas.js.map +1 -1
- package/dist/esm/companion/shared-library-companion.shared.definitions.d.ts.map +1 -1
- package/dist/esm/companion/shared-library-companion.shared.definitions.js.map +1 -1
- package/dist/esm/companion-exports.d.ts.map +1 -1
- package/dist/esm/companion-exports.js.map +1 -1
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.d.ts +14 -1
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.js +4 -0
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.d.ts +70 -0
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.js +87 -0
- package/dist/esm/compliance/audit-trails/audit-actor.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.d.ts +34 -0
- package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.js +137 -3
- package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts +7 -0
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts +28 -2
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.js +29 -8
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts +29 -6
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js +38 -9
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts +1822 -146
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js +1777 -87
- package/dist/esm/compliance/audit-trails/auditable-events.shared.schema.js.map +1 -1
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.d.ts +10 -0
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js +148 -7
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js.map +1 -1
- package/dist/esm/compliance/data-classification/data-classification.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/data-classification/data-classification.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/documents/governed-document-interactions.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/documents/governed-document-interactions.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/documents/governed-documents.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/documents/governed-documents.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts +2 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.js +2 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/capability-consent-purposes.shared.utils.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/capability-consent-purposes.shared.utils.js.map +1 -1
- package/dist/esm/compliance/privacy/client-storage.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/client-storage.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/consent-gate-vocabulary.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/consent-gate-vocabulary.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/consent-purposes.shared.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/consent-purposes.shared.js.map +1 -1
- package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.d.ts +17 -8
- package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.js +43 -20
- package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.js.map +1 -1
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts +38 -0
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js +39 -0
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/legal-hold-subject-attribution.shared.utils.d.ts +35 -0
- package/dist/esm/compliance/privacy/legal-hold-subject-attribution.shared.utils.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/legal-hold-subject-attribution.shared.utils.js +82 -0
- package/dist/esm/compliance/privacy/legal-hold-subject-attribution.shared.utils.js.map +1 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.d.ts +37 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.js +223 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.schemas.d.ts +222 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.schemas.js +331 -0
- package/dist/esm/compliance/privacy/legal-holds.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/operating-jurisdictions.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/operating-jurisdictions.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts +37 -3
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js +33 -4
- package/dist/esm/compliance/privacy/operator-compliance-identity.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/personal-data-category.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/personal-data-declaration.shared.utils.js.map +1 -1
- package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/privacy.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/provider-capability-disclosure.shared.schemas.d.ts +52 -0
- package/dist/esm/compliance/privacy/provider-capability-disclosure.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/provider-capability-disclosure.shared.schemas.js +116 -0
- package/dist/esm/compliance/privacy/provider-capability-disclosure.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.d.ts +11 -0
- package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.js +11 -0
- package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/redaction.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/redaction.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/retention-binding.shared.utils.d.ts +93 -0
- package/dist/esm/compliance/privacy/retention-binding.shared.utils.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/retention-binding.shared.utils.js +149 -0
- package/dist/esm/compliance/privacy/retention-binding.shared.utils.js.map +1 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.d.ts +43 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.js +106 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.d.ts +209 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.js +226 -0
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts +129 -5
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.js +128 -4
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/retention-scope-deleted.shared.utils.d.ts +53 -0
- package/dist/esm/compliance/privacy/retention-scope-deleted.shared.utils.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/retention-scope-deleted.shared.utils.js +74 -0
- package/dist/esm/compliance/privacy/retention-scope-deleted.shared.utils.js.map +1 -0
- package/dist/esm/compliance/privacy/sharing.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/sharing.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/subject-data-recipients.shared.schemas.d.ts +311 -0
- package/dist/esm/compliance/privacy/subject-data-recipients.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/subject-data-recipients.shared.schemas.js +355 -0
- package/dist/esm/compliance/privacy/subject-data-recipients.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/subject-erasure-lane-evidence.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/subject-erasure-lane-evidence.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts +178 -39
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.js +145 -35
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.js +26 -0
- package/dist/esm/compliance/privacy/subject-export-render.shared.utils.js.map +1 -1
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts +9 -0
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/subject-export.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/review-cadence.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/review-cadence.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/risk-posture.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/risk-posture.shared.schemas.js.map +1 -1
- package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/analytics-value-moments.shared.schemas.js.map +1 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts +109 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.js +57 -0
- package/dist/esm/config/app-configuration-shared.shared.schemas.js.map +1 -1
- package/dist/esm/config/app-frontend-type.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/app-frontend-type.shared.schemas.js.map +1 -1
- package/dist/esm/config/auth-config-resolution.shared.utils.d.ts.map +1 -1
- package/dist/esm/config/auth-config-resolution.shared.utils.js.map +1 -1
- package/dist/esm/config/brand-assets.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/brand-assets.shared.schemas.js.map +1 -1
- package/dist/esm/config/configuration-validation.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/configuration-validation.shared.schemas.js.map +1 -1
- package/dist/esm/config/entity-identity-config.shared.schemas.d.ts +69 -0
- package/dist/esm/config/entity-identity-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/entity-identity-config.shared.schemas.js +93 -0
- package/dist/esm/config/entity-identity-config.shared.schemas.js.map +1 -1
- package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts +16 -16
- package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/frontend/chart-definition.shared.schemas.js.map +1 -1
- package/dist/esm/config/frontend/chart-registration-alignment.shared.d.ts.map +1 -1
- package/dist/esm/config/frontend/chart-registration-alignment.shared.js.map +1 -1
- package/dist/esm/config/frontend/navigation.shared.schemas.d.ts +160 -61
- package/dist/esm/config/frontend/navigation.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/frontend/navigation.shared.schemas.js +297 -65
- package/dist/esm/config/frontend/navigation.shared.schemas.js.map +1 -1
- package/dist/esm/config/frontend/onboarding.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/frontend/onboarding.shared.schemas.js.map +1 -1
- package/dist/esm/config/postgresql.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/postgresql.shared.schemas.js.map +1 -1
- package/dist/esm/config/registration-acquisition-policy.shared.utils.d.ts.map +1 -1
- package/dist/esm/config/registration-acquisition-policy.shared.utils.js.map +1 -1
- package/dist/esm/config-authoring.entry.d.ts.map +1 -1
- package/dist/esm/config-authoring.entry.js.map +1 -1
- package/dist/esm/crdt/crdt-merge.shared.utils.d.ts.map +1 -1
- package/dist/esm/crdt/crdt-merge.shared.utils.js.map +1 -1
- package/dist/esm/data-seeding/data-seeding-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/data-seeding/data-seeding-config.shared.schemas.js.map +1 -1
- package/dist/esm/errors/caught-error-description.shared.utils.d.ts +69 -0
- package/dist/esm/errors/caught-error-description.shared.utils.d.ts.map +1 -0
- package/dist/esm/errors/caught-error-description.shared.utils.js +77 -0
- package/dist/esm/errors/caught-error-description.shared.utils.js.map +1 -0
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts +76 -3
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts.map +1 -1
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js +76 -2
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.js.map +1 -1
- package/dist/esm/errors/errors.shared.definitions.d.ts.map +1 -1
- package/dist/esm/errors/errors.shared.definitions.js.map +1 -1
- package/dist/esm/errors/errors.shared.schemas.d.ts +20 -1
- package/dist/esm/errors/errors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/errors/errors.shared.schemas.js +16 -9
- package/dist/esm/errors/errors.shared.schemas.js.map +1 -1
- package/dist/esm/errors/errors.shared.utils.d.ts +0 -24
- package/dist/esm/errors/errors.shared.utils.d.ts.map +1 -1
- package/dist/esm/errors/errors.shared.utils.js +0 -39
- package/dist/esm/errors/errors.shared.utils.js.map +1 -1
- package/dist/esm/errors/resource-access-forbidden.shared.error.d.ts.map +1 -1
- package/dist/esm/errors/resource-access-forbidden.shared.error.js.map +1 -1
- package/dist/esm/errors/thrown-value-description.shared.utils.d.ts +6 -7
- package/dist/esm/errors/thrown-value-description.shared.utils.d.ts.map +1 -1
- package/dist/esm/errors/thrown-value-description.shared.utils.js +6 -7
- package/dist/esm/errors/thrown-value-description.shared.utils.js.map +1 -1
- package/dist/esm/errors/zod-issue-formatting.shared.utils.d.ts.map +1 -1
- package/dist/esm/errors/zod-issue-formatting.shared.utils.js.map +1 -1
- package/dist/esm/exports/tabular-csv.shared.utils.d.ts.map +1 -1
- package/dist/esm/exports/tabular-csv.shared.utils.js.map +1 -1
- package/dist/esm/external-data/external-data-pipeline-description.shared.d.ts +70 -0
- package/dist/esm/external-data/external-data-pipeline-description.shared.d.ts.map +1 -0
- package/dist/esm/external-data/external-data-pipeline-description.shared.js +92 -0
- package/dist/esm/external-data/external-data-pipeline-description.shared.js.map +1 -0
- package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.d.ts +154 -0
- package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.d.ts.map +1 -0
- package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.js +161 -0
- package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.js.map +1 -0
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts +1071 -23
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.js +1065 -17
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.js.map +1 -1
- package/dist/esm/external-data/external-data-provenance.shared.d.ts +71 -0
- package/dist/esm/external-data/external-data-provenance.shared.d.ts.map +1 -0
- package/dist/esm/external-data/external-data-provenance.shared.js +88 -0
- package/dist/esm/external-data/external-data-provenance.shared.js.map +1 -0
- package/dist/esm/external-data.exports.d.ts +5 -0
- package/dist/esm/external-data.exports.d.ts.map +1 -1
- package/dist/esm/external-data.exports.js +11 -0
- package/dist/esm/external-data.exports.js.map +1 -1
- package/dist/esm/external-providers/compose-provider-registry.shared.d.ts.map +1 -1
- package/dist/esm/external-providers/compose-provider-registry.shared.js.map +1 -1
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts +17 -2
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.js +22 -4
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.d.ts.map +1 -1
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js +3 -0
- package/dist/esm/external-providers/engine-capability-resolution-mode.shared.js.map +1 -1
- package/dist/esm/external-providers/engine-capability-surface.shared.d.ts.map +1 -1
- package/dist/esm/external-providers/engine-capability-surface.shared.js +2 -0
- package/dist/esm/external-providers/engine-capability-surface.shared.js.map +1 -1
- package/dist/esm/external-providers/external-providers.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/external-providers.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts +152 -1
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.d.ts +4 -3
- package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.js +4 -3
- package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/frontend-capability-runtime.shared.types.d.ts +45 -0
- package/dist/esm/external-providers/frontend-capability-runtime.shared.types.d.ts.map +1 -1
- package/dist/esm/external-providers/frontend-capability-runtime.shared.types.js +14 -0
- package/dist/esm/external-providers/frontend-capability-runtime.shared.types.js.map +1 -1
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts +188 -4
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js +76 -9
- package/dist/esm/external-providers/frontend-provider-entry.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/frontend-provider-public-config.shared.d.ts +175 -33
- package/dist/esm/external-providers/frontend-provider-public-config.shared.d.ts.map +1 -1
- package/dist/esm/external-providers/frontend-provider-public-config.shared.js +247 -42
- package/dist/esm/external-providers/frontend-provider-public-config.shared.js.map +1 -1
- package/dist/esm/external-providers/model-cost-accounting-config.shared.schemas.d.ts +53 -0
- package/dist/esm/external-providers/model-cost-accounting-config.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/model-cost-accounting-config.shared.schemas.js +41 -0
- package/dist/esm/external-providers/model-cost-accounting-config.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.d.ts +150 -0
- package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.js +22 -0
- package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.js.map +1 -0
- package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.d.ts +42 -0
- package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.js +49 -0
- package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-authentication-assurance.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-authentication-assurance.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-browser-operations.shared.schemas.d.ts +53 -0
- package/dist/esm/external-providers/provider-browser-operations.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-browser-operations.shared.schemas.js +56 -0
- package/dist/esm/external-providers/provider-browser-operations.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts +34 -0
- package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-capability.shared.schemas.js +34 -0
- package/dist/esm/external-providers/provider-capability.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts +341 -4
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js +270 -20
- package/dist/esm/external-providers/provider-compliance-profile.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.d.ts +6 -2
- package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.js +6 -2
- package/dist/esm/external-providers/provider-frontend-component-contract.shared.types.js.map +1 -1
- package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.d.ts +174 -1
- package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.js +125 -0
- package/dist/esm/external-providers/provider-frontend-surface.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts +3 -3
- package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-metadata.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-package-allow-list.shared.schemas.d.ts +42 -0
- package/dist/esm/external-providers/provider-package-allow-list.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-package-allow-list.shared.schemas.js +57 -0
- package/dist/esm/external-providers/provider-package-allow-list.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts +6 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-protocol.shared.schemas.js +6 -0
- package/dist/esm/external-providers/provider-protocol.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-scope-reauthorization.shared.schemas.d.ts +58 -0
- package/dist/esm/external-providers/provider-scope-reauthorization.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-scope-reauthorization.shared.schemas.js +35 -0
- package/dist/esm/external-providers/provider-scope-reauthorization.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-shared-connections.shared.schemas.d.ts +115 -0
- package/dist/esm/external-providers/provider-shared-connections.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-shared-connections.shared.schemas.js +137 -0
- package/dist/esm/external-providers/provider-shared-connections.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-tier-rule.shared.utils.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-tier-rule.shared.utils.js.map +1 -1
- package/dist/esm/external-providers/provider-usage-cost.shared.d.ts +73 -0
- package/dist/esm/external-providers/provider-usage-cost.shared.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-usage-cost.shared.js +171 -0
- package/dist/esm/external-providers/provider-usage-cost.shared.js.map +1 -0
- package/dist/esm/external-providers/provider-usage-pricing.example.d.ts +12 -0
- package/dist/esm/external-providers/provider-usage-pricing.example.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-usage-pricing.example.js +40 -0
- package/dist/esm/external-providers/provider-usage-pricing.example.js.map +1 -0
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.d.ts +68 -32
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.js +63 -52
- package/dist/esm/external-providers/provider-usage-pricing.shared.schemas.js.map +1 -1
- package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts +5 -5
- package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/features/application-features.shared.resources-config.schemas.js +13 -5
- package/dist/esm/features/application-features.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/features/connected-feature.example.d.ts.map +1 -1
- package/dist/esm/features/connected-feature.example.js +2 -1
- package/dist/esm/features/connected-feature.example.js.map +1 -1
- package/dist/esm/features/core-feature-definitions.shared.d.ts.map +1 -1
- package/dist/esm/features/core-feature-definitions.shared.js +2 -1
- package/dist/esm/features/core-feature-definitions.shared.js.map +1 -1
- package/dist/esm/features/feature-builders.shared.d.ts.map +1 -1
- package/dist/esm/features/feature-builders.shared.js.map +1 -1
- package/dist/esm/features/feature-definition.shared.schemas.d.ts +2 -11
- package/dist/esm/features/feature-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/feature-definition.shared.schemas.js +0 -12
- package/dist/esm/features/feature-definition.shared.schemas.js.map +1 -1
- package/dist/esm/features/feature-registry.shared.d.ts.map +1 -1
- package/dist/esm/features/feature-registry.shared.js.map +1 -1
- package/dist/esm/features/feature-resolution.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/feature-resolution.shared.schemas.js.map +1 -1
- package/dist/esm/features/scope-features.shared.schemas.d.ts +31 -17
- package/dist/esm/features/scope-features.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/scope-features.shared.schemas.js +27 -5
- package/dist/esm/features/scope-features.shared.schemas.js.map +1 -1
- package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts +5 -5
- package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/features/user-features.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/files/file-remote-reference-link.shared.schemas.d.ts.map +1 -1
- package/dist/esm/files/file-remote-reference-link.shared.schemas.js.map +1 -1
- package/dist/esm/files/file-upload-grant.shared.schemas.d.ts.map +1 -1
- package/dist/esm/files/file-upload-grant.shared.schemas.js.map +1 -1
- package/dist/esm/files/files.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/files/files.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/files/files.shared.schemas.d.ts.map +1 -1
- package/dist/esm/files/files.shared.schemas.js.map +1 -1
- package/dist/esm/files/files.shared.utils.d.ts.map +1 -1
- package/dist/esm/files/files.shared.utils.js.map +1 -1
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a-push-delivery-log.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a-token-budget-state.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/actors.shared.schemas.d.ts +127 -11
- package/dist/esm/flows-actors/actors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/actors.shared.schemas.js +32 -1
- package/dist/esm/flows-actors/actors.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts +16 -0
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.js +7 -0
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/agent-work-decisions.shared.resources-config.schemas.d.ts +68 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.resources-config.schemas.js +276 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.d.ts +468 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.js +472 -0
- package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/agents.shared.schemas.d.ts +2 -2
- package/dist/esm/flows-actors/agents.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/agents.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/autonomous-agents.shared.schemas.d.ts +118 -0
- package/dist/esm/flows-actors/autonomous-agents.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/autonomous-agents.shared.schemas.js +144 -0
- package/dist/esm/flows-actors/autonomous-agents.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/deliberation.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/execution-plan-readiness.shared.utils.d.ts.map +1 -1
- package/dist/esm/flows-actors/execution-plan-readiness.shared.utils.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors-execution.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts +142 -8
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js +209 -11
- package/dist/esm/flows-actors/flows-actors-execution.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors-task.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts +37 -2
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js +30 -2
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.d.ts +0 -11
- package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.js +12 -5
- package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.d.ts +45 -6
- package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.js +31 -5
- package/dist/esm/flows-actors/flows-actors.frontend.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js +30 -30
- package/dist/esm/flows-actors/flows-actors.io.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.system.shared.definitions.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.system.shared.definitions.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts +15 -7
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows.shared.schemas.d.ts +15 -0
- package/dist/esm/flows-actors/flows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/human-decision.shared.schemas.d.ts +506 -0
- package/dist/esm/flows-actors/human-decision.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/human-decision.shared.schemas.js +502 -0
- package/dist/esm/flows-actors/human-decision.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/mcp-servers.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/mcp-servers.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/model-call-attributions.shared.resources-config.schemas.d.ts +46 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.resources-config.schemas.js +65 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.schemas.d.ts +120 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.schemas.js +165 -0
- package/dist/esm/flows-actors/model-call-attributions.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.d.ts +45 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.js +127 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.d.ts +83 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.js +97 -0
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/model-cost-summary.shared.schemas.d.ts +136 -0
- package/dist/esm/flows-actors/model-cost-summary.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/model-cost-summary.shared.schemas.js +90 -0
- package/dist/esm/flows-actors/model-cost-summary.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/prompt-ir.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/prompt-ir.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.d.ts +5 -1
- package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.js +19 -4
- package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/flows-actors/provider-call-records.shared.schemas.d.ts +13 -15
- package/dist/esm/flows-actors/provider-call-records.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/provider-call-records.shared.schemas.js +30 -17
- package/dist/esm/flows-actors/provider-call-records.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/review-deadlines.shared.schemas.d.ts +268 -0
- package/dist/esm/flows-actors/review-deadlines.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/review-deadlines.shared.schemas.js +576 -0
- package/dist/esm/flows-actors/review-deadlines.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts +30 -0
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/work-attribution.shared.schemas.d.ts +129 -0
- package/dist/esm/flows-actors/work-attribution.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/work-attribution.shared.schemas.js +141 -0
- package/dist/esm/flows-actors/work-attribution.shared.schemas.js.map +1 -0
- package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.d.ts +22 -1
- package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.d.ts.map +1 -1
- package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.js +23 -0
- package/dist/esm/frontend-definitions/frontend-notification-custom-message-ref.definitions.js.map +1 -1
- package/dist/esm/frontend-definitions/settings-destination-ref.definitions.d.ts +61 -0
- package/dist/esm/frontend-definitions/settings-destination-ref.definitions.d.ts.map +1 -1
- package/dist/esm/frontend-definitions/settings-destination-ref.definitions.js +61 -0
- package/dist/esm/frontend-definitions/settings-destination-ref.definitions.js.map +1 -1
- package/dist/esm/guidance/guidance-flow.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-flow.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.schemas.js +11 -10
- package/dist/esm/guidance/guidance-state.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.utils.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-state.shared.utils.js.map +1 -1
- package/dist/esm/guidance/lifecycle-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/lifecycle-config.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.schemas.js +6 -6
- package/dist/esm/guidance/lifecycle-state.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/milestone-builders.shared.d.ts.map +1 -1
- package/dist/esm/guidance/milestone-builders.shared.js.map +1 -1
- package/dist/esm/guidance/milestone-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/milestone-definition.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/progression-presentation.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/progression-presentation.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/guidance/progression-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/progression-state.shared.schemas.js +8 -7
- package/dist/esm/guidance/progression-state.shared.schemas.js.map +1 -1
- package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.d.ts.map +1 -1
- package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.js +1 -1
- package/dist/esm/http-api-binding/http-api-binding-id.shared.utils.js.map +1 -1
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts +550 -30
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.d.ts.map +1 -1
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js +498 -34
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js.map +1 -1
- package/dist/esm/http-api-binding/http-api-erasure-stance.shared.d.ts +62 -0
- package/dist/esm/http-api-binding/http-api-erasure-stance.shared.d.ts.map +1 -0
- package/dist/esm/http-api-binding/http-api-erasure-stance.shared.js +66 -0
- package/dist/esm/http-api-binding/http-api-erasure-stance.shared.js.map +1 -0
- package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.d.ts +133 -0
- package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.d.ts.map +1 -0
- package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.js +191 -0
- package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.js.map +1 -0
- package/dist/esm/http-api-binding/http-api-transport-dialect.shared.d.ts +37 -6
- package/dist/esm/http-api-binding/http-api-transport-dialect.shared.d.ts.map +1 -1
- package/dist/esm/http-api-binding/http-api-transport-dialect.shared.js +37 -6
- package/dist/esm/http-api-binding/http-api-transport-dialect.shared.js.map +1 -1
- package/dist/esm/http-api-binding/read-through-engine-anchors.shared.d.ts.map +1 -1
- package/dist/esm/http-api-binding/read-through-engine-anchors.shared.js.map +1 -1
- package/dist/esm/i18n/application-config-vocabulary.shared.d.ts +36 -0
- package/dist/esm/i18n/application-config-vocabulary.shared.d.ts.map +1 -0
- package/dist/esm/i18n/application-config-vocabulary.shared.js +39 -0
- package/dist/esm/i18n/application-config-vocabulary.shared.js.map +1 -0
- package/dist/esm/i18n/engine-open-vocabulary-values.shared.d.ts +11 -0
- package/dist/esm/i18n/engine-open-vocabulary-values.shared.d.ts.map +1 -0
- package/dist/esm/i18n/engine-open-vocabulary-values.shared.js +14 -0
- package/dist/esm/i18n/engine-open-vocabulary-values.shared.js.map +1 -0
- package/dist/esm/i18n/engine-open-vocabulary.shared.d.ts +20 -0
- package/dist/esm/i18n/engine-open-vocabulary.shared.d.ts.map +1 -0
- package/dist/esm/i18n/engine-open-vocabulary.shared.js +21 -0
- package/dist/esm/i18n/engine-open-vocabulary.shared.js.map +1 -0
- package/dist/esm/i18n/interpolate-label-params.shared.utils.d.ts.map +1 -1
- package/dist/esm/i18n/interpolate-label-params.shared.utils.js.map +1 -1
- package/dist/esm/i18n/labelling.dto.shared.schemas.d.ts.map +1 -1
- package/dist/esm/i18n/labelling.dto.shared.schemas.js.map +1 -1
- package/dist/esm/inbound/conversation-threads.shared.resources-config.schemas.d.ts +94 -0
- package/dist/esm/inbound/conversation-threads.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/inbound/conversation-threads.shared.resources-config.schemas.js +206 -0
- package/dist/esm/inbound/conversation-threads.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/inbound/conversation-threads.shared.schemas.d.ts +169 -0
- package/dist/esm/inbound/conversation-threads.shared.schemas.d.ts.map +1 -0
- package/dist/esm/inbound/conversation-threads.shared.schemas.js +231 -0
- package/dist/esm/inbound/conversation-threads.shared.schemas.js.map +1 -0
- package/dist/esm/inbound/inbound-channels.shared.schemas.d.ts +195 -0
- package/dist/esm/inbound/inbound-channels.shared.schemas.d.ts.map +1 -0
- package/dist/esm/inbound/inbound-channels.shared.schemas.js +244 -0
- package/dist/esm/inbound/inbound-channels.shared.schemas.js.map +1 -0
- package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.d.ts +36 -0
- package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.js +169 -0
- package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/inbound/inbound-delivery.shared.schemas.d.ts +404 -0
- package/dist/esm/inbound/inbound-delivery.shared.schemas.d.ts.map +1 -0
- package/dist/esm/inbound/inbound-delivery.shared.schemas.js +449 -0
- package/dist/esm/inbound/inbound-delivery.shared.schemas.js.map +1 -0
- package/dist/esm/inbound/inbound-endpoint-env.shared.d.ts +46 -0
- package/dist/esm/inbound/inbound-endpoint-env.shared.d.ts.map +1 -0
- package/dist/esm/inbound/inbound-endpoint-env.shared.js +57 -0
- package/dist/esm/inbound/inbound-endpoint-env.shared.js.map +1 -0
- package/dist/esm/index.d.ts +58 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +67 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/meta-workflows/actions.meta-workflows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/meta-workflows/actions.meta-workflows.shared.schemas.js.map +1 -1
- package/dist/esm/meta-workflows/catalog.meta-workflows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/meta-workflows/catalog.meta-workflows.shared.schemas.js.map +1 -1
- package/dist/esm/meta-workflows/coding-tasks.meta-workflows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/meta-workflows/coding-tasks.meta-workflows.shared.schemas.js.map +1 -1
- package/dist/esm/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/meta-workflows/context-selection.meta-workflows.shared.schemas.js.map +1 -1
- package/dist/esm/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts +28 -0
- package/dist/esm/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/meta-workflows/decisions.meta-workflows.shared.schemas.js +29 -0
- package/dist/esm/meta-workflows/decisions.meta-workflows.shared.schemas.js.map +1 -1
- package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.d.ts +95 -1
- package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.js +121 -0
- package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.js.map +1 -1
- package/dist/esm/meta-workflows/portable-primitives.meta-workflows.shared.schemas.d.ts.map +1 -1
- package/dist/esm/meta-workflows/portable-primitives.meta-workflows.shared.schemas.js.map +1 -1
- package/dist/esm/meta-workflows.exports.d.ts +0 -1
- package/dist/esm/meta-workflows.exports.d.ts.map +1 -1
- package/dist/esm/meta-workflows.exports.js +0 -1
- package/dist/esm/meta-workflows.exports.js.map +1 -1
- package/dist/esm/monitoring/monitoring.shared.schemas.d.ts.map +1 -1
- package/dist/esm/monitoring/monitoring.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/email/email-context.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/email/email-context.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/email/email-submission.shared.enums.d.ts.map +1 -1
- package/dist/esm/notifications/email/email-submission.shared.enums.js.map +1 -1
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts +7 -1
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.js +35 -0
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/email/email-template.shared.enums.d.ts.map +1 -1
- package/dist/esm/notifications/email/email-template.shared.enums.js.map +1 -1
- package/dist/esm/notifications/inbound-email/inbound-email.shared.resources-config.schemas.d.ts +131 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.resources-config.schemas.js +258 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.d.ts +448 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.d.ts.map +1 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.js +530 -0
- package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.js.map +1 -0
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-contract.shared.d.ts.map +1 -1
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-contract.shared.js.map +1 -1
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.js +4 -3
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts +16 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js +46 -16
- package/dist/esm/notifications/m2m/webhook-config.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts +19 -12
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js +77 -12
- package/dist/esm/notifications/m2m/webhook-config.shared.schemas.js.map +1 -1
- package/dist/esm/notifications/notification-badges.core.definitions.d.ts.map +1 -1
- package/dist/esm/notifications/notification-badges.core.definitions.js.map +1 -1
- package/dist/esm/notifications/notification-badges.schemas.d.ts +35 -3
- package/dist/esm/notifications/notification-badges.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notification-badges.schemas.js +43 -3
- package/dist/esm/notifications/notification-badges.schemas.js.map +1 -1
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/notifications/notifications.shared.schemas.d.ts +66 -399
- package/dist/esm/notifications/notifications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notifications.shared.schemas.js +111 -58
- package/dist/esm/notifications/notifications.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/application-owner-organization.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/application-owner-organization.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.d.ts +5 -5
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js +6 -6
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-features.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-features.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts +3 -0
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js +60 -14
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.d.ts +3 -0
- package/dist/esm/organizations/organization-members.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.js +30 -0
- package/dist/esm/organizations/organization-members.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-notifications.shared.schemas.js +9 -9
- package/dist/esm/organizations/organization-notifications.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.schemas.js +4 -4
- package/dist/esm/organizations/organization-preferences.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.d.ts +0 -1
- package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.schemas.d.ts +5 -5
- package/dist/esm/organizations/organization-profile.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.schemas.js +15 -10
- package/dist/esm/organizations/organization-profile.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-unit-inheritance.shared.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-inheritance.shared.js.map +1 -1
- package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.js +1 -1
- package/dist/esm/organizations/organization-unit-members.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-unit-members.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-members.shared.schemas.js +2 -1
- package/dist/esm/organizations/organization-unit-members.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts +63 -1
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.js +106 -5
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.js.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing.example.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing.example.js.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing.shared.js +9 -0
- package/dist/esm/organizations/organization-unit-narrowing.shared.js.map +1 -1
- package/dist/esm/organizations/organization-units.shared.path.d.ts.map +1 -1
- package/dist/esm/organizations/organization-units.shared.path.js.map +1 -1
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.js +7 -2
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-units.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-units.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts +3 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.js +12 -8
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organizations.shared.schemas.d.ts +7 -2
- package/dist/esm/organizations/organizations.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organizations.shared.schemas.js +51 -1
- package/dist/esm/organizations/organizations.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/service-provider-activity-feed.shared.resources-config.schemas.d.ts +58 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.resources-config.schemas.js +188 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.d.ts +122 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.js +136 -0
- package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.js.map +1 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.d.ts +36 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.js +155 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.d.ts +229 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.js +290 -0
- package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.js.map +1 -0
- package/dist/esm/organizations/service-provider-client-controls.shared.schemas.d.ts +48 -0
- package/dist/esm/organizations/service-provider-client-controls.shared.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-client-controls.shared.schemas.js +50 -0
- package/dist/esm/organizations/service-provider-client-controls.shared.schemas.js.map +1 -0
- package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.d.ts +97 -0
- package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.js +572 -0
- package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/organizations/service-provider-relationships.shared.schemas.d.ts +590 -0
- package/dist/esm/organizations/service-provider-relationships.shared.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/service-provider-relationships.shared.schemas.js +869 -0
- package/dist/esm/organizations/service-provider-relationships.shared.schemas.js.map +1 -0
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts +36 -6
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js +57 -16
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js.map +1 -1
- package/dist/esm/provider-registration-runtime.exports.d.ts +0 -1
- package/dist/esm/provider-registration-runtime.exports.d.ts.map +1 -1
- package/dist/esm/provider-registration-runtime.exports.js +0 -1
- package/dist/esm/provider-registration-runtime.exports.js.map +1 -1
- package/dist/esm/public-runtime/index.d.ts +30 -11
- package/dist/esm/public-runtime/index.d.ts.map +1 -1
- package/dist/esm/public-runtime/index.js +30 -11
- package/dist/esm/public-runtime/index.js.map +1 -1
- package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/queue/jobs.shared.schemas.d.ts +30 -2
- package/dist/esm/queue/jobs.shared.schemas.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.schemas.js +12 -0
- package/dist/esm/queue/jobs.shared.schemas.js.map +1 -1
- package/dist/esm/queue/jobs.shared.utils.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.utils.js.map +1 -1
- package/dist/esm/queue/queues.shared.schemas.d.ts.map +1 -1
- package/dist/esm/queue/queues.shared.schemas.js.map +1 -1
- package/dist/esm/queue/queues.shared.utils.d.ts.map +1 -1
- package/dist/esm/queue/queues.shared.utils.js.map +1 -1
- package/dist/esm/queue/rabbitmq-queue-args.shared.d.ts.map +1 -1
- package/dist/esm/queue/rabbitmq-queue-args.shared.js.map +1 -1
- package/dist/esm/rag/rag-retrieval-health.shared.d.ts.map +1 -1
- package/dist/esm/rag/rag-retrieval-health.shared.js.map +1 -1
- package/dist/esm/requests/header-keys.shared.d.ts +6 -0
- package/dist/esm/requests/header-keys.shared.d.ts.map +1 -1
- package/dist/esm/requests/header-keys.shared.js +7 -0
- package/dist/esm/requests/header-keys.shared.js.map +1 -1
- package/dist/esm/requests/http-requests.shared.d.ts.map +1 -1
- package/dist/esm/requests/http-requests.shared.js.map +1 -1
- package/dist/esm/requests/idempotency-key.shared.d.ts.map +1 -1
- package/dist/esm/requests/idempotency-key.shared.js.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-documentation.d.ts.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-documentation.js +147 -8
- package/dist/esm/requests/manual-controllers-routes-documentation.js.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-urls.d.ts +51 -23
- package/dist/esm/requests/manual-controllers-routes-urls.d.ts.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-urls.js +64 -0
- package/dist/esm/requests/manual-controllers-routes-urls.js.map +1 -1
- package/dist/esm/requests/rate-limits.shared.schemas.d.ts.map +1 -1
- package/dist/esm/requests/rate-limits.shared.schemas.js.map +1 -1
- package/dist/esm/requests/websocket.shared.schemas.d.ts +78 -13
- package/dist/esm/requests/websocket.shared.schemas.d.ts.map +1 -1
- package/dist/esm/requests/websocket.shared.schemas.js +91 -18
- package/dist/esm/requests/websocket.shared.schemas.js.map +1 -1
- package/dist/esm/resources/child-operations.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/child-operations.shared.schemas.js.map +1 -1
- package/dist/esm/resources/collection-query-parameters.shared.d.ts.map +1 -1
- package/dist/esm/resources/collection-query-parameters.shared.js.map +1 -1
- package/dist/esm/resources/context-policy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/context-policy.shared.schemas.js.map +1 -1
- package/dist/esm/resources/embedded-resource-mark.shared.utils.d.ts +21 -0
- package/dist/esm/resources/embedded-resource-mark.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/embedded-resource-mark.shared.utils.js +22 -0
- package/dist/esm/resources/embedded-resource-mark.shared.utils.js.map +1 -0
- package/dist/esm/resources/relationship-display.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/relationship-display.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources-config.shared.factory.d.ts.map +1 -1
- package/dist/esm/resources/resources-config.shared.factory.js +812 -32
- package/dist/esm/resources/resources-config.shared.factory.js.map +1 -1
- package/dist/esm/resources/resources-config.shared.schemas.d.ts +244 -48
- package/dist/esm/resources/resources-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources-config.shared.schemas.js +151 -17
- package/dist/esm/resources/resources-config.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources-registry.shared.core.definitions.d.ts.map +1 -1
- package/dist/esm/resources/resources-registry.shared.core.definitions.js +369 -12
- package/dist/esm/resources/resources-registry.shared.core.definitions.js.map +1 -1
- package/dist/esm/resources/resources-relationships.shared.factory.d.ts.map +1 -1
- package/dist/esm/resources/resources-relationships.shared.factory.js.map +1 -1
- package/dist/esm/resources/resources-serialization.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources-serialization.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources.shared.core.definitions.d.ts +45 -0
- package/dist/esm/resources/resources.shared.core.definitions.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.core.definitions.js +92 -0
- package/dist/esm/resources/resources.shared.core.definitions.js.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.d.ts +2 -17
- package/dist/esm/resources/resources.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.js +24 -20
- package/dist/esm/resources/resources.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources.shared.utils.d.ts +16 -8
- package/dist/esm/resources/resources.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.utils.js +16 -8
- package/dist/esm/resources/resources.shared.utils.js.map +1 -1
- package/dist/esm/resources/utils/collection-export.shared.utils.d.ts +2 -2
- package/dist/esm/resources/utils/collection-export.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/collection-export.shared.utils.js +4 -2
- package/dist/esm/resources/utils/collection-export.shared.utils.js.map +1 -1
- package/dist/esm/resources/utils/composition-cascade-deletability.validation.d.ts.map +1 -1
- package/dist/esm/resources/utils/composition-cascade-deletability.validation.js.map +1 -1
- package/dist/esm/resources/utils/composition-seedability.validation.d.ts.map +1 -1
- package/dist/esm/resources/utils/composition-seedability.validation.js.map +1 -1
- package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/context-addressed-composition-singleton.shared.utils.js.map +1 -1
- package/dist/esm/resources/utils/dependent-lifecycle-classification.validation.d.ts.map +1 -1
- package/dist/esm/resources/utils/dependent-lifecycle-classification.validation.js.map +1 -1
- package/dist/esm/resources/utils/duplicate-relationship-registration.validation.d.ts.map +1 -1
- package/dist/esm/resources/utils/duplicate-relationship-registration.validation.js.map +1 -1
- package/dist/esm/resources/utils/field-value-disclosure.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/field-value-disclosure.utils.js.map +1 -1
- package/dist/esm/resources/utils/http-api-write-declaration.shared.utils.d.ts +103 -0
- package/dist/esm/resources/utils/http-api-write-declaration.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/http-api-write-declaration.shared.utils.js +275 -0
- package/dist/esm/resources/utils/http-api-write-declaration.shared.utils.js.map +1 -0
- package/dist/esm/resources/utils/initiator-stamped-field-satisfiability.validation.d.ts.map +1 -1
- package/dist/esm/resources/utils/initiator-stamped-field-satisfiability.validation.js.map +1 -1
- package/dist/esm/resources/utils/no-subject-data-stance-coherence.shared.utils.d.ts +51 -0
- package/dist/esm/resources/utils/no-subject-data-stance-coherence.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/no-subject-data-stance-coherence.shared.utils.js +28 -0
- package/dist/esm/resources/utils/no-subject-data-stance-coherence.shared.utils.js.map +1 -0
- package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.js.map +1 -1
- package/dist/esm/resources/utils/populated-file-fields.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/populated-file-fields.shared.utils.js +30 -19
- package/dist/esm/resources/utils/populated-file-fields.shared.utils.js.map +1 -1
- package/dist/esm/resources/utils/repository-dto-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/repository-dto-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/request-schema-field-carriage.shared.utils.d.ts +2 -0
- package/dist/esm/resources/utils/request-schema-field-carriage.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/request-schema-field-carriage.shared.utils.js +33 -0
- package/dist/esm/resources/utils/request-schema-field-carriage.shared.utils.js.map +1 -0
- package/dist/esm/resources/utils/required-fk-fillability.validation.d.ts.map +1 -1
- package/dist/esm/resources/utils/required-fk-fillability.validation.js.map +1 -1
- package/dist/esm/resources/utils/resource-operation-type-guards.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-operation-type-guards.utils.js.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts +15 -0
- package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.factory.js +6 -1
- package/dist/esm/resources/utils/resource-polymorphism.factory.js.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.relationships.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.relationships.js.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.schemas.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.schemas.js +30 -4
- package/dist/esm/resources/utils/resource-polymorphism.schemas.js.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.utils.js.map +1 -1
- package/dist/esm/resources/utils/resource-subtree.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-subtree.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-context-needs.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-context-needs.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-naming.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-naming.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.d.ts +46 -0
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.js +205 -22
- package/dist/esm/resources/utils/resources-config-operations.dtos-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.path.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.path.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.urls-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-operations.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-serialization.utils.d.ts +19 -2
- package/dist/esm/resources/utils/resources-serialization.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-serialization.utils.js +4 -0
- package/dist/esm/resources/utils/resources-serialization.utils.js.map +1 -1
- package/dist/esm/resources/utils/resources-summary.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-summary.utils.js.map +1 -1
- package/dist/esm/resources/utils/schema-family-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-family-builder.utils.js.map +1 -1
- package/dist/esm/resources/utils/schema-type-inference.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-type-inference.utils.js.map +1 -1
- package/dist/esm/resources/utils/schema-type-utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-type-utils.js.map +1 -1
- package/dist/esm/resources/utils/schema-variant-resolver.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-variant-resolver.utils.js.map +1 -1
- package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/shared-persistence-collection.utils.js +15 -9
- package/dist/esm/resources/utils/shared-persistence-collection.utils.js.map +1 -1
- package/dist/esm/resources/utils/templatable-file-fields.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/templatable-file-fields.shared.utils.js.map +1 -1
- package/dist/esm/resources/work-unit.shared.schemas.d.ts +20 -0
- package/dist/esm/resources/work-unit.shared.schemas.d.ts.map +1 -0
- package/dist/esm/resources/work-unit.shared.schemas.js +19 -0
- package/dist/esm/resources/work-unit.shared.schemas.js.map +1 -0
- package/dist/esm/runtime/domain-module.shared.definitions.d.ts.map +1 -1
- package/dist/esm/runtime/domain-module.shared.definitions.js.map +1 -1
- package/dist/esm/runtime/execution-context.shared.schemas.d.ts +48 -1
- package/dist/esm/runtime/execution-context.shared.schemas.d.ts.map +1 -1
- package/dist/esm/runtime/execution-context.shared.schemas.js +101 -9
- package/dist/esm/runtime/execution-context.shared.schemas.js.map +1 -1
- package/dist/esm/runtime/runtime.shared.schemas.d.ts.map +1 -1
- package/dist/esm/runtime/runtime.shared.schemas.js.map +1 -1
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts +1 -0
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js +37 -20
- package/dist/esm/security/api-keys/api-keys-application.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts +1 -0
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js +61 -48
- package/dist/esm/security/api-keys/api-keys-organization.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/api-keys/api-keys.shared.schemas.d.ts +26 -0
- package/dist/esm/security/api-keys/api-keys.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys.shared.schemas.js +39 -5
- package/dist/esm/security/api-keys/api-keys.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.d.ts.map +1 -1
- package/dist/esm/security/authentications/anonymous-session/anonymous-session.shared.contract.js.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts +5 -3
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.js +6 -0
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.utils.js.map +1 -1
- package/dist/esm/security/authentications/consumable-token.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/consumable-token.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/mfa-backup-code-contract.shared.d.ts.map +1 -1
- package/dist/esm/security/authentications/mfa-backup-code-contract.shared.js.map +1 -1
- package/dist/esm/security/authentications/password-blocklist.shared.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/password-blocklist.shared.utils.js.map +1 -1
- package/dist/esm/security/authentications/password-reset.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/password-reset.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/registration.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/same-origin-redirect-path.shared.d.ts.map +1 -1
- package/dist/esm/security/authentications/same-origin-redirect-path.shared.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.js +2 -2
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.d.ts +11 -0
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.js +19 -8
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js +5 -5
- package/dist/esm/security/authentications/scim/scim-provisioning-config.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.js +11 -11
- package/dist/esm/security/authentications/scim/scim-tokens.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.d.ts +2 -0
- package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.js +9 -0
- package/dist/esm/security/authentications/scim/scim-tokens.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.d.ts +169 -0
- package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.js +162 -0
- package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.js.map +1 -0
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.js +10 -8
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-dlq.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-reliability-contract.shared.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-delivery-reliability-contract.shared.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-export-config.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.js +8 -8
- package/dist/esm/security/authentications/siem/siem-export-config.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js +17 -16
- package/dist/esm/security/authentications/sso/sso-config.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js +28 -25
- package/dist/esm/security/authentications/sso/sso-config.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.d.ts +17 -6
- package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.js +90 -38
- package/dist/esm/security/authentications/sso/sso-connection.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts +0 -24
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js +79 -68
- package/dist/esm/security/authentications/sso/sso-connection.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts +8 -1
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js +7 -0
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/application-access-grants.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/application-access-grants.shared.resources-config.schemas.js +1 -1
- package/dist/esm/security/authorizations/application-access-grants.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/application-access-grants.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/application-access-grants.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js +7 -7
- package/dist/esm/security/authorizations/platform-access-grants.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/platform-access-grants.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.defaults.d.ts.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.defaults.js +56 -0
- package/dist/esm/security/authorizations/roles.shared.defaults.js.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.d.ts +77 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.js +90 -0
- package/dist/esm/security/authorizations/roles.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.utils.d.ts.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.utils.js.map +1 -1
- package/dist/esm/security/connected-accounts/provider-connection-listing.shared.schemas.d.ts +86 -0
- package/dist/esm/security/connected-accounts/provider-connection-listing.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/provider-connection-listing.shared.schemas.js +40 -0
- package/dist/esm/security/connected-accounts/provider-connection-listing.shared.schemas.js.map +1 -0
- package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.d.ts +2 -1
- package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.js +2 -1
- package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.d.ts +2 -1
- package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.js +2 -1
- package/dist/esm/security/connected-accounts/provider-credentials-user.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.d.ts +46 -14
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.js +81 -21
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.js.map +1 -1
- package/dist/esm/security/credential-rotation-grace.shared.utils.d.ts +69 -0
- package/dist/esm/security/credential-rotation-grace.shared.utils.d.ts.map +1 -0
- package/dist/esm/security/credential-rotation-grace.shared.utils.js +77 -0
- package/dist/esm/security/credential-rotation-grace.shared.utils.js.map +1 -0
- package/dist/esm/security/crypto-keys/crypto-keys.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/crypto-keys/crypto-keys.shared.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js +28 -8
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts +3 -1
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js +89 -14
- package/dist/esm/security/oauth-clients/oauth-clients-organization.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts +1 -0
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js +25 -4
- package/dist/esm/security/oauth-clients/oauth-clients.shared.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-consent-grants.shared.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-resource-server.shared.schemas.js.map +1 -1
- package/dist/esm/security/outbound-target-control.shared.schemas.d.ts +7 -1
- package/dist/esm/security/outbound-target-control.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/outbound-target-control.shared.schemas.js +6 -0
- package/dist/esm/security/outbound-target-control.shared.schemas.js.map +1 -1
- package/dist/esm/security/submission-challenge/submission-challenge.shared.d.ts +143 -0
- package/dist/esm/security/submission-challenge/submission-challenge.shared.d.ts.map +1 -0
- package/dist/esm/security/submission-challenge/submission-challenge.shared.js +123 -0
- package/dist/esm/security/submission-challenge/submission-challenge.shared.js.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.d.ts +384 -0
- package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.d.ts.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.js +327 -0
- package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.js.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-credential-kind.shared.d.ts.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-credential-kind.shared.js.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.d.ts +121 -8
- package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.d.ts.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.js +83 -4
- package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.js.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-env.shared.d.ts.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-env.shared.js.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-error-codes.shared.d.ts +266 -8
- package/dist/esm/systems-of-record/system-of-record-error-codes.shared.d.ts.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-error-codes.shared.js +291 -7
- package/dist/esm/systems-of-record/system-of-record-error-codes.shared.js.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.d.ts +313 -3
- package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.d.ts.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.js +369 -3
- package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.js.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.js +2 -1
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.schemas.d.ts.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.schemas.js.map +1 -1
- package/dist/esm/testing/resource-config-builders.d.ts.map +1 -1
- package/dist/esm/testing/resource-config-builders.js.map +1 -1
- package/dist/esm/testing.d.ts.map +1 -1
- package/dist/esm/testing.js.map +1 -1
- package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.js.map +1 -1
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.d.ts +5 -3
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.js +19 -10
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/anonymous-users.shared.schema.d.ts.map +1 -1
- package/dist/esm/users/anonymous-users.shared.schema.js.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js +6 -0
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.schemas.js.map +1 -1
- package/dist/esm/users/user-consent-decision.shared.utils.d.ts.map +1 -1
- package/dist/esm/users/user-consent-decision.shared.utils.js.map +1 -1
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-credentials.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-credentials.shared.schemas.js.map +1 -1
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-identity-links.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-identity-links.shared.schemas.js.map +1 -1
- package/dist/esm/users/user-preferences-reset.shared.utils.d.ts.map +1 -1
- package/dist/esm/users/user-preferences-reset.shared.utils.js +2 -2
- package/dist/esm/users/user-preferences-reset.shared.utils.js.map +1 -1
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts +0 -3
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-preferences.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-profiles.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts +0 -3
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self-preferences.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self-profiles.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/user-self.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-self.shared.resources-config.schemas.js +1 -1
- package/dist/esm/users/user-self.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/users.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/users.shared.resources-config.schemas.js +82 -20
- package/dist/esm/users/users.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/users.shared.schemas.d.ts +12 -9
- package/dist/esm/users/users.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/users.shared.schemas.js +49 -18
- package/dist/esm/users/users.shared.schemas.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts +0 -8
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts.map +0 -1
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.js +0 -7
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jobs.shared.schemas.js","sourceRoot":"","sources":["../../../../src/queue/jobs.shared.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,8CAA8C,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAEpG,mCAAmC;AACnC,iBAAiB,CAAC,CAAC,CAAC,CAAC;AAErB,+EAA+E;AAC/E,QAAQ;AACR,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAN,IAAY,OA6BX;AA7BD,WAAY,OAAO;IACjB,uEAAuE;IACvE,oDAAyC,CAAA;IACzC,uDAAuD;IACvD,wCAA6B,CAAA;IAC7B,uDAAuD;IACvD,4CAAiC,CAAA;IACjC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,sCAA2B,CAAA;AAC7B,CAAC,EA7BW,OAAO,KAAP,OAAO,QA6BlB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,SAiBX;AAjBD,WAAY,SAAS;IACnB,iCAAiC;IACjC,gCAAmB,CAAA;IACnB,yBAAyB;IACzB,8BAAiB,CAAA;IACjB,gCAAgC;IAChC,sCAAyB,CAAA;IACzB,4BAA4B;IAC5B,oCAAuB,CAAA;IACvB,gCAAgC;IAChC,8BAAiB,CAAA;IACjB,4BAA4B;IAC5B,kCAAqB,CAAA;IACrB,iCAAiC;IACjC,wCAA2B,CAAA;IAC3B,yBAAyB;IACzB,oCAAuB,CAAA;AACzB,CAAC,EAjBW,SAAS,KAAT,SAAS,QAiBpB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAN,IAAY,gBASX;AATD,WAAY,gBAAgB;IAC1B,4JAA4J;IAC5J,yCAAqB,CAAA;IACrB;;;;OAIG;IACH,qCAAiB,CAAA;AACnB,CAAC,EATW,gBAAgB,KAAhB,gBAAgB,QAS3B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,YAOX;AAPD,WAAY,YAAY;IACtB,6BAA6B;IAC7B,2BAAW,CAAA;IACX,4CAA4C;IAC5C,mCAAmB,CAAA;IACnB,sCAAsC;IACtC,qCAAqB,CAAA;AACvB,CAAC,EAPW,YAAY,KAAZ,YAAY,QAOvB;AAED;;;GAGG;AACH,MAAM,CAAN,IAAY,kBAiBX;AAjBD,WAAY,kBAAkB;IAC5B,iCAAiC;IACjC,yCAAmB,CAAA;IACnB,yBAAyB;IACzB,uCAAiB,CAAA;IACjB,gCAAgC;IAChC,+CAAyB,CAAA;IACzB,4BAA4B;IAC5B,6CAAuB,CAAA;IACvB,gCAAgC;IAChC,uCAAiB,CAAA;IACjB,4BAA4B;IAC5B,2CAAqB,CAAA;IACrB,iCAAiC;IACjC,iDAA2B,CAAA;IAC3B,yBAAyB;IACzB,6CAAuB,CAAA;AACzB,CAAC,EAjBW,kBAAkB,KAAlB,kBAAkB,QAiB7B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAChC,uCAAa,CAAA;IACb,uCAAa,CAAA;AACf,CAAC,EAHW,sBAAsB,KAAtB,sBAAsB,QAGjC;AAED;;;GAGG;AACH,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,0BAAW,CAAA;IACX,gCAAiB,CAAA;IACjB,4BAAa,CAAA;IACb,oCAAqB,CAAA;AACvB,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB;AAED,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,QAAQ;AAEhE,+EAA+E;AAC/E,wCAAwC;AACxC,+EAA+E;AAE/E,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAA0B,CAAC;AACtE,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAA0B,CAAC;AAC1E,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAA0B,CAAC;AAC9E,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAA0B,CAAC;AAChF,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAA0B,CAAC;AAC5F,MAAM,4BAA4B,GAAG,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAA0B,CAAC;AAEpG,+EAA+E;AAC/E,uEAAuE;AACvE,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,kFAAkF;IAClF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACjD,6EAA6E;IAC7E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IACjD,oFAAoF;IACpF,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,QAAQ,EAAE;CACxD,CAAC,CAAC;AAIH,oHAAoH;AAEpH,oFAAoF;AACpF,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AACpE,MAAM,CAAC,MAAM,0CAA0C,GAAG,EAAE,GAAG,IAAI,CAAC;AAEpE,wFAAwF;AACxF,MAAM,CAAN,IAAY,qBAOX;AAPD,WAAY,qBAAqB;IAC/B,iFAAiF;IACjF,0CAAiB,CAAA;IACjB,iFAAiF;IACjF,kDAAyB,CAAA;IACzB,kFAAkF;IAClF,gDAAuB,CAAA;AACzB,CAAC,EAPW,qBAAqB,KAArB,qBAAqB,QAOhC;AAED,kFAAkF;AAClF,MAAM,CAAN,IAAY,uBAOX;AAPD,WAAY,uBAAuB;IACjC,0CAAe,CAAA;IACf,8CAAmB,CAAA;IACnB,sDAA2B,CAAA;IAC3B,8CAAmB,CAAA;IACnB,4CAAiB,CAAA;IACjB,gDAAqB,CAAA;AACvB,CAAC,EAPW,uBAAuB,KAAvB,uBAAuB,QAOlC;AAED,MAAM,CAAN,IAAY,8BAIX;AAJD,WAAY,8BAA8B;IACxC,yDAAuB,CAAA;IACvB,iEAA+B,CAAA;IAC/B,+DAA6B,CAAA;AAC/B,CAAC,EAJW,8BAA8B,KAA9B,8BAA8B,QAIzC;AAED,wFAAwF;AACxF,MAAM,CAAN,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAChC,iEAAuC,CAAA;IACvC,yCAAe,CAAA;IACf,6CAAmB,CAAA;AACrB,CAAC,EAJW,sBAAsB,KAAtB,sBAAsB,QAIjC;AAED,uFAAuF;AACvF,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;IAC/C,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC;IACjF,qBAAqB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACjD,kFAAkF;IAClF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACxD,oFAAoF;IACpF,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACpG,uFAAuF;IACvF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACtE,OAAO,EAAE,6BAA6B,CAAC,QAAQ,EAAE;IACjD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;CACnD,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;IAC7B,IAAI,MAAM,CAAC,qBAAqB,IAAI,MAAM,CAAC,YAAY,KAAK,qBAAqB,CAAC,MAAM,EAAE,CAAC;QACzF,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,uBAAuB,CAAC,EAAE,OAAO,EAAE,gEAAgE,EAAE,CAAC,CAAC;IAC/I,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,MAAM,UAAU,gCAAgC,CAAC,MAAyC;IACxF,OAAO,6BAA6B,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,0FAA0F;AAC1F,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAC5C,kGAAkG;IAClG,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,QAAQ,CAAC;IAChE,6EAA6E;IAC7E,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IAClF,sGAAsG;IACtG,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC5C,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;IAC7B,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,YAAY,CAAC,MAAM;QAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,uCAAuC,EAAE,CAAC,CAAC;IACzJ,IAAI,MAAM,CAAC,aAAa,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;QAChF,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,+CAA+C,EAAE,CAAC,CAAC;IACtH,CAAC;AACH,CAAC,CAAC,CAAC;AAGH,MAAM,CAAN,IAAY,uBAKX;AALD,WAAY,uBAAuB;IACjC,kDAAuB,CAAA;IACvB,4DAAiC,CAAA;IACjC,0EAA+C,CAAA;IAC/C,sDAA2B,CAAA;AAC7B,CAAC,EALW,uBAAuB,KAAvB,uBAAuB,QAKlC;AACD,MAAM,CAAN,IAAY,6BAGX;AAHD,WAAY,6BAA6B;IACvC,sDAAqB,CAAA;IACrB,4DAA2B,CAAA;AAC7B,CAAC,EAHW,6BAA6B,KAA7B,6BAA6B,QAGxC;AAED;;;;;;;GAOG;AACH,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/E,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACrI,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE;IACnI,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC;IACrF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,6BAA6B;IACnF,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,6BAA6B,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACrF,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;CAC1G,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,gCAAgC,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE;IACvG,MAAM,WAAW,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,gBAAgB,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;IACpI,IAAI,WAAW,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU;QACvF,CAAC,CAAC,QAAQ,CAAC,OAAO,KAAK,OAAO,CAAC,cAAc,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC;QACtG,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,2EAA2E,EAAE,CAAC,CAAC;IACzH,CAAC;IACD,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,KAAK,uBAAuB,CAAC,WAAW,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,SAAS,CAAC;IAC1I,IAAI,QAAQ,CAAC,gBAAgB,KAAK,cAAc,EAAE,CAAC;QACjD,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,kDAAkD,EAAE,CAAC,CAAC;IAC5H,CAAC;IAED,IAAI,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAClG,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,yEAAyE,EAAE,CAAC,CAAC;IAC5I,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC7C,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACxE,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,oDAAoD,EAAE,CAAC,CAAC;IACrH,CAAC;IACD,IAAI,QAAQ,CAAC,YAAY,KAAK,6BAA6B,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;QAC5J,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,iDAAiD,EAAE,CAAC,CAAC;IACvH,CAAC;IACD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACrH,IAAI,QAAQ,CAAC,QAAQ,KAAK,CAAC,OAAO,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;WAC3F,CAAC,QAAQ,CAAC,YAAY,KAAK,6BAA6B,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,aAAa,IAAI,OAAO,gBAAgB,KAAK,SAAS,CAAC,EAAE,CAAC;QAClJ,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,sDAAsD,EAAE,CAAC,CAAC;IACxH,CAAC;AACH,CAAC,CAAC,CAAC;AAcH,kEAAkE;AAElE,2GAA2G;AAC3G,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC;IACtC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACxC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,MAAM,EAAE,6BAA6B;IACrC,mFAAmF;IACnF,cAAc,EAAE,6BAA6B,CAAC,QAAQ,EAAE;IACxD,iFAAiF;IACjF,QAAQ,EAAE,0BAA0B,CAAC,QAAQ,EAAE;IAC/C,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACxC,oBAAoB,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACzC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE;IAClB,aAAa,EAAE,CAAC,CAAC,IAAI,EAAE;IACvB,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAC1B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAC9C,mFAAmF;IACnF,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAC1C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QACzB,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE;QACnB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC;QACtC,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE;QACnB,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;QAC5B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC/B,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IACZ,mFAAmF;IACnF,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CACtJ,CAAC,CAAC;AAGH,+EAA+E;AAC/E,kDAAkD;AAClD,+EAA+E;AAE/E;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,4FAA4F;IAC5F,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACjC,6DAA6D;IAC7D,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE;IACrC,uEAAuE;IACvE,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAIH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7D,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IACzD,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE;CACxE,CAAC,CAAC;AAKH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,4BAA4B;IAC5B,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE;IAEf,iCAAiC;IACjC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;IAE9B,8BAA8B;IAC9B;;;;;;;;;OASG;IACH,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IAEzB,mCAAmC;IACnC,wEAAwE;IACxE,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,uFAAuF;IACvF,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxC,yDAAyD;IACzD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,+DAA+D;IAC/D,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAEjC,+EAA+E;IAC/E,uBAAuB,EAAE,gCAAgC,CAAC,QAAQ,EAAE;IACpE,6EAA6E;IAC7E,6BAA6B,EAAE,sCAAsC,CAAC,QAAQ,EAAE;IAEhF,yBAAyB;IACzB,0DAA0D;IAC1D,8DAA8D;IAC9D,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,wDAAwD;IACxD,qBAAqB,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAC1C,oDAAoD;IACpD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B;;;;;;;;;;;;OAYG;IACH,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAEtD,4BAA4B;IAC5B;;;OAGG;IACH,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE3C,qBAAqB;IACrB,gCAAgC;IAChC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC;IAEjE,4BAA4B;IAC5B,2BAA2B;IAC3B,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC;IAC/D,wCAAwC;IACxC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9C,6BAA6B;IAC7B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9C;;;;;;OAMG;IACH,WAAW,EAAE,6BAA6B,CAAC,QAAQ,EAAE;IACrD;kEAC8D;IAC9D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAErD,iBAAiB;IACjB,+BAA+B;IAC/B,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE;IACnB;;;;OAIG;IACH,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAEhC,sBAAsB;IACtB;;;;;;OAMG;IACH,qBAAqB,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAC1C,uCAAuC;IACvC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE9B,uBAAuB;IACvB;;;;;;;OAOG;IACH,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE1C,yBAAyB;IACzB,4EAA4E;IAC5E,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAIH,+EAA+E;AAC/E,wCAAwC;AACxC,+EAA+E;AAE/E;;;GAGG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,WAAW;AAExE;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C;;gDAE4C;IAC5C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,YAAY,EAAE;IAE9B,yCAAyC;IACzC,4DAA4D;IAC5D,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAEhE,8BAA8B;IAC9B;;;;OAIG;IACH,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,aAAa,EAAE;IAEvD,4CAA4C;IAC5C,0DAA0D;IAC1D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE;IACvC,8FAA8F;IAC9F,iBAAiB,EAAE,gCAAgC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE;IACtG,mCAAmC;IACnC,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,aAAa,EAAE;IAE7D,uDAAuD;IACvD,wCAAwC;IACxC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE;IACxD,iCAAiC;IACjC,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE;IAE1G,oBAAoB;IACpB,kCAAkC;IAClC,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;IACjC;;;OAGG;IACH,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,kBAAkB,EAAE,CAAC,EAAE,CAAC;IAElD,wCAAwC;IACxC,yDAAyD;IACzD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE;CACnE,CAAC,CAAC;AAIH,+EAA+E;AAC/E,iDAAiD;AACjD,+EAA+E;AAE/E;;;;;GAKG;AACH;;;;;;;;GAQG;AACH,MAAM,CAAN,IAAY,4CAGX;AAHD,WAAY,4CAA4C;IACtD,iEAAiB,CAAA;IACjB,yEAAyB,CAAA;AAC3B,CAAC,EAHW,4CAA4C,KAA5C,4CAA4C,QAGvD;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,2CAA2C,GAAG,CAAC,CAAC,MAAM,CAAC;IAClE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,4CAA4C,CAAC;CAC7D,CAAC,CAAC;AAGH;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAe;IACtD,MAAM,MAAM,GAAG,2CAA2C,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC7E,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,gCAAgC;IAChC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,iDAAiD;IACjD,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7C,mGAAmG;IACnG,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;AAGH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvC,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC;CAC5C,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,qBAAqB;IACrB,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE;IAEf,8BAA8B;IAC9B,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;IAE/B,yBAAyB;IACzB,0DAA0D;IAC1D,qDAAqD;IACrD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,uDAAuD;IACvD,sBAAsB,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAE3C,qBAAqB;IACrB,0FAA0F;IAC1F,KAAK,EAAE,wBAAwB,CAAC,QAAQ,EAAE;IAE1C,iBAAiB;IACjB,iCAAiC;IACjC,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE;IACnB,mCAAmC;IACnC,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAChC,yCAAyC;IACzC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAC;AAIH,+EAA+E;AAC/E,2CAA2C;AAC3C,+EAA+E;AAE/E;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU;AAEtE;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC;;gDAE4C;IAC5C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,YAAY,EAAE;IAE9B,6CAA6C;IAC7C,4BAA4B;IAC5B,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC5D;;;;;OAKG;IACH,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;IAEvC,oDAAoD;IACpD,kBAAkB;IAClB,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE;IAC5C,iDAAiD;IACjD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,yCAAyC;IACzC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,4DAA4D;IAC5D,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IAEnD,mDAAmD;IACnD,6CAA6C;IAC7C,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IACnD,qCAAqC;IACrC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IAC3C,gCAAgC;IAChC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC;IAEvC,mDAAmD;IACnD,qBAAqB;IACrB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,WAAW,EAAE;IACtD,yCAAyC;IACzC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;IACnC,qBAAqB;IACrB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;IAEnC,wDAAwD;IACxD,wCAAwC;IACxC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9C,6BAA6B;IAC7B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,wCAAwC;IACxC,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAEhC,sDAAsD;IACtD;;;;;;;;;;;OAWG;IACH,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;IAC7C,0FAA0F;IAC1F,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC7D,0GAA0G;IAC1G,cAAc,EAAE,6BAA6B,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE;IACxE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,0CAA0C;IAC1C,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAC7B,qCAAqC;IACrC,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAC9B,oDAAoD;IACpD,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IAC9C,yCAAyC;IACzC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAEvC,qEAAqE;IACrE,yCAAyC;IACzC,qBAAqB,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE;IAC1D,0CAA0C;IAC1C,sBAAsB,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE;IAE3D,kDAAkD;IAClD,0FAA0F;IAC1F,KAAK,EAAE,wBAAwB,CAAC,QAAQ,EAAE;IAE1C,qDAAqD;IACrD,4CAA4C;IAC5C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE;IAC/C,6CAA6C;IAC7C,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE;CACtD,CAAC,CAAC","sourcesContent":["/**\n * Jobs Shared Schemas\n *\n * All job-related enums, schemas, and types consolidated in a single file.\n * Includes: job types, statuses, payloads, results, execution tracking, and storage.\n *\n * Resource Design Notes:\n * - JobExecution and JobPayloadStorage are internal system resources\n * - Many fields are marked .isBackendOnly() as they contain sensitive internal data\n * - TTL indexes ensure automatic cleanup\n * - Proper indexes for common query patterns\n */\n\nimport { z } from 'zod';\nimport { DataMode } from '../resources/resources-config.shared.schemas';\nimport { initZodDecorators } from '@wildo-ai/zod-decorators';\nimport { WildoError_BackendSchema, RetryPolicy_BackoffType } from '../errors/errors.shared.schemas';\n\n// Ensure Zod decorators are loaded\ninitZodDecorators(z);\n\n// ============================================================================\n// ENUMS\n// ============================================================================\n\n/**\n * Type of job being processed.\n */\nexport enum JobType {\n /** Standard resource operation (CREATE, READ, UPDATE, DELETE, etc.) */\n RESOURCE_OPERATION = 'resource_operation',\n /** Custom batch job defined in customBatchesFactory */\n CUSTOM_BATCH = 'custom_batch',\n /** Scheduled cron job triggered by crontabs-manager */\n SCHEDULED_CRON = 'scheduled_cron',\n /**\n * Cron-driven minion tick (KD-12 of\n * `.claude/plans/minions-and-workers-implementation.md`).\n *\n * Published by `platform-crontabs-batches-manager` to the application's\n * scheduled queue when a minion's cron schedule fires. The consumer\n * (`MinionTickConsumerBackendService` in `saas-minions-lib`) filters\n * messages by matching the token's `minionName` against the minion's OWN\n * identity — which each minion sources from its compiled-in\n * `defineMinionInit({ minionName })` config (the minion package is\n * domain-specific by construction), cross-validated at boot against the\n * fetched `appConfig.minions[minionName]`. Matched ticks route to the\n * minion's locally-hosted actor system. Identity is NOT read from env:\n * `APP_OWNED_SERVICE_NAME` is deploy-time metadata (and the read-from-env\n * path of the language-pluggable *worker* runtime), never the Node\n * minion's runtime identity source.\n *\n * Dispatch is a pure switch on `jobType` — see `PublishScheduledJobInput`\n * / `ScheduledJobTokenInput` xor that pairs `MINION_TICK` with the\n * `minionName` discriminator.\n */\n MINION_TICK = 'minion_tick',\n}\n\n/**\n * Status of a job through its lifecycle.\n */\nexport enum JobStatus {\n /** Created but not yet queued */\n PENDING = 'pending',\n /** Published to queue */\n QUEUED = 'queued',\n /** Worker started processing */\n PROCESSING = 'processing',\n /** Successfully finished */\n COMPLETED = 'completed',\n /** Failed, retries exhausted */\n FAILED = 'failed',\n /** Failed but will retry */\n RETRYING = 'retrying',\n /** Moved to dead letter queue */\n DEAD_LETTER = 'dead_letter',\n /** Manually cancelled */\n CANCELLED = 'cancelled',\n}\n\n/**\n * Which queue substrate a runtime uses.\n *\n * Read by `bindQueueAdapter()` in `saas-backend-lib`, which is the only place a member is mapped to\n * an implementation — as a total `Record`, so adding a member here is a compile error until somebody\n * says which class serves it.\n *\n * `REDIS` was declared and removed (#502). It had no implementation, no reader and no selection\n * path, and the decision was to build ONE of the two missing adapters rather than both: a vocabulary\n * member offering a choice nothing can make is worse than an absent one, because it reads as a\n * supported deployment. Reinstate it when something needs it, alongside the adapter.\n */\nexport enum QueueAdapterType {\n /** A real broker. The default, and what a deployed application wants: durability across a restart, visibility across processes, permissions per runtime. */\n RABBITMQ = 'rabbitmq',\n /**\n * In-process, no broker. For a test lane that needs real background-work BEHAVIOUR — retry,\n * dead-lettering, delayed redelivery, unacknowledged messages staying unacknowledged — and for a\n * single-process runtime that has declared it wants none of what a broker is bought for.\n */\n MEMORY = 'memory',\n}\n\n/**\n * Who initiated the job.\n */\nexport enum JobInitiator {\n /** Triggered via API call */\n API = 'api',\n /** Triggered by crontabs-batches-manager */\n CRONTAB = 'crontab',\n /** Triggered internally by service */\n INTERNAL = 'internal',\n}\n\n/**\n * Status of a job execution record (for tracking).\n * Similar to JobStatus but specific to the tracking record.\n */\nexport enum JobExecutionStatus {\n /** Created but not yet queued */\n PENDING = 'pending',\n /** Published to queue */\n QUEUED = 'queued',\n /** Worker started processing */\n PROCESSING = 'processing',\n /** Successfully finished */\n COMPLETED = 'completed',\n /** Failed, retries exhausted */\n FAILED = 'failed',\n /** Failed but will retry */\n RETRYING = 'retrying',\n /** Moved to dead letter queue */\n DEAD_LETTER = 'dead_letter',\n /** Manually cancelled */\n CANCELLED = 'cancelled',\n}\n\n/**\n * Compression type for stored payloads.\n */\nexport enum PayloadCompressionType {\n NONE = 'none',\n GZIP = 'gzip',\n}\n\n/**\n * Job priority levels.\n * HIGH and CRITICAL are routed to priority queues.\n */\nexport enum JobPriority {\n LOW = 'low',\n NORMAL = 'normal',\n HIGH = 'high',\n CRITICAL = 'critical',\n}\n\n// ============================================================================\n// CONSTANTS\n// ============================================================================\n\n/**\n * Threshold for storing payloads externally vs inline.\n * Payloads >= 100KB are stored in MongoDB, referenced by storageId.\n * This prevents RabbitMQ performance issues with large messages.\n */\nexport const PAYLOAD_SIZE_THRESHOLD_BYTES = 100 * 1024; // 100KB\n\n// ============================================================================\n// ZOD ENUM VALUE EXTRACTION (for Zod 4)\n// ============================================================================\n\nconst JobTypeValues = Object.values(JobType) as [string, ...string[]];\nconst JobStatusValues = Object.values(JobStatus) as [string, ...string[]];\nconst JobPriorityValues = Object.values(JobPriority) as [string, ...string[]];\nconst JobInitiatorValues = Object.values(JobInitiator) as [string, ...string[]];\nconst JobExecutionStatusValues = Object.values(JobExecutionStatus) as [string, ...string[]];\nconst PayloadCompressionTypeValues = Object.values(PayloadCompressionType) as [string, ...string[]];\n\n// ============================================================================\n// RETRY BACKOFF CONFIG (shared: operation queueConfig + job transport)\n// ============================================================================\n\n/**\n * App-authorable backoff shape controlling the *timing* of job retries.\n *\n * This is the subset of retry parameters an application developer sets on an\n * operation's `queueConfig.retryConfig` to shape how long a failed job waits\n * before each re-attempt. It is intentionally a partial: the `maxRetries` and\n * `timeoutMs` axes already live at the top of `ResourceConfiguration_QueueConfig`,\n * so they are NOT repeated here (single source of truth per axis).\n *\n * Runtime semantics — when a job fails and is still eligible to retry, the queue\n * worker computes `delay = baseDelayMs × 2^attempt` (for `EXPONENTIAL`; see\n * `JobRetryUtils.calculateDelay` for `FIXED`/`LINEAR`), clamps it to `maxDelayMs`,\n * and holds the message that long in a **durable broker-side delay queue**\n * (RabbitMQ per-queue TTL + dead-letter back to the source queue) before\n * redelivery. The delay is broker-timed, not an in-process sleep, so it survives\n * a worker crash during the wait.\n *\n * All fields are optional; unset fields fall back to `QUEUE_RETRY_DEFAULTS`.\n * Both the authoring surface (`queueConfig.retryConfig`) and the wire payload\n * (`JobPayload.retryConfig`) reuse this exact schema — the enqueue side resolves\n * defaults so the transported object carries fully-resolved values.\n *\n * NOTE: This schema lives in the jobs module (not queues) because\n * `queues.shared.schemas.ts` already imports from here (`JobPriority`); putting\n * it in queues would create an import cycle. It is queue-facing by name.\n *\n * @example\n * // Exponential backoff starting at 2s, capped at 30s:\n * queueConfig: { maxRetries: 5, retryConfig: { baseDelayMs: 2000, maxDelayMs: 30000 } }\n */\nexport const QueueRetryBackoffConfigSchema = z.object({\n /** Base delay in ms — first retry / base of the exponential (or linear) curve. */\n baseDelayMs: z.number().int().min(100).optional(),\n /** Maximum delay cap in ms — prevents unbounded backoff on late attempts. */\n maxDelayMs: z.number().int().min(1000).optional(),\n /** Backoff curve: `fixed` | `linear` | `exponential`. Defaults to `exponential`. */\n retryPolicy: z.enum(RetryPolicy_BackoffType).optional(),\n});\n\nexport type QueueRetryBackoffConfig = z.infer<typeof QueueRetryBackoffConfigSchema>;\n\n/** @wildo_source:part:start saas.models.queue.scheduled-recovery facet:layer:shared facet:audience:app-developer */\n\n/** First receipt is short-lived; persisted recovery has its own policy deadline. */\nexport const SCHEDULED_INITIAL_ADMISSION_MAX_AGE_MS = 5 * 60 * 1000;\nexport const SCHEDULED_INITIAL_ADMISSION_FUTURE_SKEW_MS = 30 * 1000;\n\n/** How the handler's complete effects tolerate execution after an uncertain outcome. */\nexport enum ScheduledReplaySafety {\n /** No automatic repetition; a failed call can already have committed effects. */\n MANUAL = 'manual',\n /** All effects use stable business keys or equivalent idempotency mechanisms. */\n IDEMPOTENT = 'idempotent',\n /** A backend reconciler must establish completion or safety before repetition. */\n RECONCILE = 'reconcile',\n}\n\n/** Durable admission phase, independent from the presentation status of a job. */\nexport enum ScheduledExecutionPhase {\n READY = 'ready',\n RUNNING = 'running',\n RECONCILING = 'reconciling',\n WAITING = 'waiting',\n REVIEW = 'review',\n FINISHED = 'finished',\n}\n\nexport enum ScheduledReconciliationOutcome {\n COMPLETED = 'completed',\n SAFE_TO_RETRY = 'safe_to_retry',\n INCONCLUSIVE = 'inconclusive',\n}\n\n/** Operator decisions are distinct from evidence returned by a handler's reconciler. */\nexport enum ScheduledReviewOutcome {\n CONFIRM_COMPLETED = 'confirm_completed',\n RETRY = 'retry',\n ABANDON = 'abandon',\n}\n\n/** A declaration is a contract, not a mechanism that makes side effects idempotent. */\nexport const ScheduledRecoveryPolicySchema = z.object({\n contractVersion: z.string().min(1).default('1'),\n replaySafety: z.enum(ScheduledReplaySafety).default(ScheduledReplaySafety.MANUAL),\n retryReportedFailures: z.boolean().default(false),\n /** Total admissions, including reconciliation; initial execution consumes one. */\n maxAttempts: z.number().int().min(1).max(100).default(1),\n /** Elapsed horizon from first authenticated receipt, never extended by recovery. */\n maxRecoveryMs: z.number().int().min(1000).max(30 * 24 * 60 * 60 * 1000).default(24 * 60 * 60 * 1000),\n /** Heartbeat lease: expiry means contact was lost, not that the old worker stopped. */\n leaseMs: z.number().int().min(3000).max(60 * 60 * 1000).default(60000),\n backoff: QueueRetryBackoffConfigSchema.optional(),\n jitterRatio: z.number().min(0).max(1).default(0.2),\n}).superRefine((policy, ctx) => {\n if (policy.retryReportedFailures && policy.replaySafety === ScheduledReplaySafety.MANUAL) {\n ctx.addIssue({ code: 'custom', path: ['retryReportedFailures'], message: 'Automatic retry requires idempotent effects or reconciliation.' });\n }\n});\nexport type ScheduledRecoveryPolicy = z.infer<typeof ScheduledRecoveryPolicySchema>;\nexport function normalizeScheduledRecoveryPolicy(policy?: Partial<ScheduledRecoveryPolicy>): ScheduledRecoveryPolicy {\n return ScheduledRecoveryPolicySchema.parse(policy ?? {});\n}\n\n/** Finite, application-owned evidence policy. No policy means no long-term projection. */\nexport const ScheduledEvidencePolicySchema = z.object({\n policyRef: z.string().trim().min(1).max(160),\n /** Absolute expiry is completion plus this duration, never the date an archive retry succeeds. */\n retainForMs: z.number().int().min(86400000).max(3650 * 86400000),\n /** Only these top-level scalar result fields may enter retained evidence. */\n resultFields: z.array(z.string().regex(/^[A-Za-z][A-Za-z0-9_]*$/).max(80)).max(32),\n /** Selected boolean flag identifying deferred business work independently from invocation success. */\n deferredField: z.string().min(1).optional(),\n}).superRefine((policy, ctx) => {\n if (new Set(policy.resultFields).size !== policy.resultFields.length) ctx.addIssue({ code: 'custom', message: 'Evidence result fields must be unique' });\n if (policy.deferredField && !policy.resultFields.includes(policy.deferredField)) {\n ctx.addIssue({ code: 'custom', path: ['deferredField'], message: 'Deferred flag must be a selected result field' });\n }\n});\nexport type ScheduledEvidencePolicy = z.infer<typeof ScheduledEvidencePolicySchema>;\n\nexport enum ScheduledEvidenceSource {\n EXECUTION = 'execution',\n RECONCILIATION = 'reconciliation',\n OPERATOR_CONFIRMATION = 'operator_confirmation',\n ABANDONMENT = 'abandonment',\n}\nexport enum ScheduledEvidenceResultStatus {\n CAPTURED = 'captured',\n UNAVAILABLE = 'unavailable',\n}\n\n/**\n * Bounded projection, not arbitrary job input, output or exception text.\n *\n * `applicationId` is the application RECORD id (`applications._id`), projected from the job row it\n * describes — never the platform id the wire payload carried. The coverage report refuses a record\n * whose value differs from its scope, so a copy of this field retained under the wrong id is not\n * merely stale: it makes every window that reaches it fail (the follow-up migration of #1296).\n */\nconst ScheduledRunEvidenceFieldsSchema = z.object({\n jobId: z.uuid(), applicationId: z.string().min(1), queueName: z.string().min(1),\n jobType: z.enum(JobType), batchRef: z.string().optional(), operationPathKey: z.string().optional(), minionName: z.string().optional(),\n scheduledAt: z.date().optional(), publishedAt: z.date(), startedAt: z.date().optional(), completedAt: z.date(), expiresAt: z.date(),\n invocationStatus: z.enum(JobExecutionStatus), source: z.enum(ScheduledEvidenceSource),\n attemptCount: z.number().int().nonnegative(), policy: ScheduledEvidencePolicySchema,\n resultStatus: z.enum(ScheduledEvidenceResultStatus), deferred: z.boolean().optional(),\n results: z.record(z.string(), z.union([z.string().max(512), z.number().finite(), z.boolean(), z.null()])),\n});\nexport const ScheduledRunEvidenceSchema = ScheduledRunEvidenceFieldsSchema.superRefine((evidence, ctx) => {\n const targetCount = [evidence.batchRef, evidence.operationPathKey, evidence.minionName].filter(value => value !== undefined).length;\n if (targetCount !== 1 || (evidence.jobType === JobType.MINION_TICK ? !evidence.minionName\n : evidence.jobType !== JobType.SCHEDULED_CRON || !(evidence.batchRef || evidence.operationPathKey))) {\n ctx.addIssue({ code: 'custom', message: 'Evidence requires exactly one scheduled batch, operation or minion target' });\n }\n const expectedStatus = evidence.source === ScheduledEvidenceSource.ABANDONMENT ? JobExecutionStatus.FAILED : JobExecutionStatus.COMPLETED;\n if (evidence.invocationStatus !== expectedStatus) {\n ctx.addIssue({ code: 'custom', path: ['invocationStatus'], message: 'Terminal outcome must agree with evidence source' });\n }\n\n if (evidence.expiresAt.getTime() !== evidence.completedAt.getTime() + evidence.policy.retainForMs) {\n ctx.addIssue({ code: 'custom', path: ['expiresAt'], message: 'Evidence expiry must follow the captured policy and original completion' });\n }\n const fields = Object.keys(evidence.results);\n if (fields.some(field => !evidence.policy.resultFields.includes(field))) {\n ctx.addIssue({ code: 'custom', path: ['results'], message: 'Only policy-selected result fields may be retained' });\n }\n if (evidence.resultStatus === ScheduledEvidenceResultStatus.CAPTURED && evidence.policy.resultFields.some(field => !Object.hasOwn(evidence.results, field))) {\n ctx.addIssue({ code: 'custom', path: ['resultStatus'], message: 'Captured evidence requires every selected field' });\n }\n const selectedDeferred = evidence.policy.deferredField ? evidence.results[evidence.policy.deferredField] : undefined;\n if (evidence.deferred !== (typeof selectedDeferred === 'boolean' ? selectedDeferred : undefined)\n || (evidence.resultStatus === ScheduledEvidenceResultStatus.CAPTURED && evidence.policy.deferredField && typeof selectedDeferred !== 'boolean')) {\n ctx.addIssue({ code: 'custom', path: ['deferred'], message: 'Deferral must agree with the selected boolean result' });\n }\n});\nexport type ScheduledRunEvidence = z.infer<typeof ScheduledRunEvidenceSchema>;\n\n/** Stable occurrence identity and distinct attempt identity made available to handler code. */\nexport interface ScheduledAttemptContext {\n occurrenceId: string;\n attemptId: string;\n attemptNumber: number;\n}\nexport interface ScheduledReconciliationResult {\n outcome: ScheduledReconciliationOutcome;\n resultJson?: string;\n}\n\n/** @wildo_source:part:end saas.models.queue.scheduled-recovery */\n\n/** Persisted inside JobExecution; trusted only after authenticated receipt and local policy resolution. */\nexport const ScheduledExecutionStateSchema = z.object({\n phase: z.enum(ScheduledExecutionPhase),\n revision: z.number().int().nonnegative(),\n payloadJson: z.string(),\n policy: ScheduledRecoveryPolicySchema,\n /** Selected once from local application policy, independent from replay safety. */\n evidencePolicy: ScheduledEvidencePolicySchema.optional(),\n /** Terminal-CAS projection retried by the bounded operational archive outbox. */\n evidence: ScheduledRunEvidenceSchema.optional(),\n evidenceArchived: z.boolean().optional(),\n evidenceArchiveAfter: z.date().optional(),\n deadline: z.date(),\n nextAttemptAt: z.date(),\n owner: z.uuid().optional(),\n attemptCount: z.number().int().min(0).max(100),\n /** A successful reconciliation authorizes exactly the next execution admission. */\n reconciledSafe: z.boolean().default(false),\n reason: z.string().optional(),\n attempts: z.array(z.object({\n attemptId: z.uuid(),\n phase: z.enum(ScheduledExecutionPhase),\n startedAt: z.date(),\n endedAt: z.date().optional(),\n outcome: z.string().optional(),\n })).max(100),\n /** Explicit operator decisions preserve the occurrence, attribution and reason. */\n resolutions: z.array(z.object({ actor: z.string(), reason: z.string(), at: z.date(), outcome: z.enum(ScheduledReviewOutcome) })).max(100).default([]),\n});\nexport type ScheduledExecutionState = z.infer<typeof ScheduledExecutionStateSchema>;\n\n// ============================================================================\n// JOB PAYLOAD SCHEMA (Transport - not a resource)\n// ============================================================================\n\n/**\n * Caller-selected response semantics that must survive resource-operation worker replay.\n * This is deliberately not RepositoryOptions: transactions, authorization overrides and\n * server-owned mutation fields are not presentation policy and must never enter this object.\n * Unknown keys are stripped at enqueue and replay, even for structurally wider service options.\n * Variant identity is already carried by operationPathJson; page/filter/sort remain input data.\n */\nexport const JobResourceResponseOptionsSchema = z.object({\n /** Preserve the repository's real pagination envelope rather than returning a raw array. */\n paginated: z.boolean().optional(),\n /** Preserve the caller's requested population/data shape. */\n dataMode: z.enum(DataMode).optional(),\n /** Preserve an explicit request to omit signed file URL population. */\n populateFiles: z.boolean().optional(),\n});\n\nexport type JobResourceResponseOptions = z.infer<typeof JobResourceResponseOptionsSchema>;\n\n/**\n * Accepted mutation preconditions travel independently from response presentation.\n * Dropping either value makes worker execution accept writes the inline request rejects.\n * This whitelist intentionally excludes transactions and authorization overrides; unknown\n * keys are stripped at publication and replay. Zero is a valid expected version.\n */\nexport const JobResourceMutationPreconditionsSchema = z.object({\n ifMatchVersion: z.number().int().nonnegative().optional(),\n fieldTimestamps: z.record(z.string(), z.number().positive()).optional(),\n});\n\nexport type JobResourceMutationPreconditions = z.infer<typeof JobResourceMutationPreconditionsSchema>;\n\n\n/**\n * Job payload for queue transport.\n *\n * Design notes:\n * - This is NOT a resource schema (used for RabbitMQ message transport)\n * - applicationId is needed for queue routing (not duplicated from context)\n * - operationPathKey is primary identifier, operationPathJson for execution\n * - executionContextJson carries full context for reconstruction\n * - org/user IDs are NOT duplicated - extract from executionContextJson if needed\n */\nexport const JobPayloadSchema = z.object({\n /** Unique job identifier */\n jobId: z.uuid(),\n\n /** Type of job being executed */\n jobType: z.enum(JobTypeValues),\n\n // === Application Routing ===\n /**\n * The PLATFORM's id for the application — the value queue names are built from, the value the\n * crontabs-manager signs into a scheduled message, and the value a consumer verifies a message\n * against before accepting it. It is an ADDRESS on the wire.\n *\n * It is NOT the application record id (`applications._id`) and must never be copied into a row:\n * `JobExecution.applicationId` and `JobPayloadStorage.applicationId` are stamped by the backend's\n * tracker and payload store from the canonical identity. Copying this wire value into those rows is\n * what anchored 13,532 Wonder Todos rows to an id no scope predicate matches (fixed 2026-09-18).\n */\n applicationId: z.string(),\n\n // === Operation Identification ===\n /** Primary key for lookup/matching (required for RESOURCE_OPERATION) */\n operationPathKey: z.string().optional(),\n /** Serialized ResourceConfiguration_OperationPath (required for RESOURCE_OPERATION) */\n operationPathJson: z.string().optional(),\n /** Custom batch reference (required for CUSTOM_BATCH) */\n batchRef: z.string().optional(),\n /** Local minion target; checked before receipt is admitted. */\n minionName: z.string().optional(),\n\n /** Response policy only; absent retains ordinary internal-service defaults. */\n resourceResponseOptions: JobResourceResponseOptionsSchema.optional(),\n /** Optimistic-locking and CRDT guards accepted by the initiating request. */\n resourceMutationPreconditions: JobResourceMutationPreconditionsSchema.optional(),\n\n // === Execution Data ===\n // EITHER inline OR storage reference (mutually exclusive)\n /** JSON-stringified input data for small payloads (<100KB) */\n inputDataJson: z.string().optional(),\n /** Reference to JobPayloadStorage for large payloads */\n inputPayloadStorageId: z.uuid().optional(),\n /** Resource ID for READ/UPDATE/DELETE operations */\n inputId: z.string().optional(),\n /**\n * The rows a BULK operation targets, resolved before the job was enqueued.\n *\n * `inputId` cannot carry them — it is one id — so a bulk operation sent to the background lane\n * used to arrive at the worker with NO target at all: the selector is stripped from `inputData`\n * once the service has read it, and a single-id field has nowhere to put an array. The worker\n * then replayed a targetless write (#1461).\n *\n * Mutually exclusive with `inputId` by construction: the enqueue splits one target into whichever\n * field can hold it. The worker runs the bulk PER ROW from this list, so each row gets the\n * single-row operation's own semantics — pre-image, `enabledCondition`, one audit record, one\n * resource-room sync event — and the job's result reports what happened to each.\n */\n inputIds: z.array(z.string().min(1)).min(1).optional(),\n\n // === Execution Context ===\n /**\n * Serialized execution context (reconstructed on worker side).\n * Optional for CUSTOM_BATCH and SCHEDULED_CRON (they create their own internal context).\n */\n executionContextJson: z.string().optional(),\n\n // === Job Source ===\n /** How the job was initiated */\n initiatedBy: z.enum(JobInitiatorValues).default(JobInitiator.API),\n\n // === Job Configuration ===\n /** Queue priority level */\n priority: z.enum(JobPriorityValues).default(JobPriority.NORMAL),\n /** Current retry attempt (0-indexed) */\n retryCount: z.number().int().min(0).default(0),\n /** Maximum retry attempts */\n maxRetries: z.number().int().min(0).default(3),\n /**\n * Backoff timing for retries (base delay, cap, curve). Resolved from the\n * operation's `queueConfig.retryConfig` at enqueue time (defaults applied), so\n * the worker can honor per-operation backoff without re-reading config. The\n * worker computes the delay from these values and holds the message in a\n * durable broker delay queue before redelivery — see `QueueRetryBackoffConfig`.\n */\n retryConfig: QueueRetryBackoffConfigSchema.optional(),\n /** Reply-wait policy carried with the job. The executor does not enforce this as an execution deadline;\n * fire-and-forget jobs have no waiting caller to time out. */\n timeoutMs: z.number().int().min(1000).default(300000),\n\n // === Timing ===\n /** When the job was created */\n createdAt: z.date(),\n /**\n * Intended execution instant for delayed jobs or the authenticated scheduled instant of a cron occurrence.\n * Distinct from publication/receipt time. New manual cron invocations omit it; historical absence\n * can also mean the occurrence time was not retained and must not be treated as proof of a manual run.\n */\n scheduledAt: z.date().optional(),\n\n // === RPC Support ===\n /**\n * RPC reply-matching id (QUEUED awaitable mode). A fresh uuid minted at enqueue time to correlate a\n * published job with its reply on the RPC reply queue — it is NOT a request trace id. Renamed from\n * `correlationId` when request→job traceability landed (Phase 6): the job now ALSO carries\n * `originCorrelationId` (the enqueuing request's trace id), and the two must never be conflated —\n * one matches a reply, the other joins the job to a distributed trace.\n */\n rpcReplyCorrelationId: z.uuid().optional(),\n /** Reply queue name for RPC pattern */\n replyTo: z.string().optional(),\n\n // === Traceability ===\n /**\n * The correlation id of the REQUEST that enqueued this job, carried onto the payload so the worker\n * that later executes it adopts the same id (see `adoptCorrelationIdIntoCurrentFrame`). This joins\n * the asynchronous job execution — its worker-side logs and audit rows — to the originating\n * request's distributed trace. Distinct from `rpcReplyCorrelationId` (reply matching) and from the\n * AMQP message `correlationId` property (wire-level reply routing). Absent for jobs with no\n * originating request (e.g. some system-enqueued work), in which case the worker mints a fresh id.\n */\n originCorrelationId: z.string().optional(),\n\n // === Domain Routing ===\n /** Domain category for domain-specific routing (e.g., 'email', 'agents') */\n domainCategory: z.string().optional(),\n});\n\nexport type JobPayload = z.infer<typeof JobPayloadSchema>;\n\n// ============================================================================\n// JOB PAYLOAD STORAGE SCHEMA (Resource)\n// ============================================================================\n\n/**\n * Default TTL for job payload storage in seconds (24 hours).\n * Large payloads are automatically deleted after this period.\n */\nexport const JOB_PAYLOAD_STORAGE_TTL_SECONDS = 24 * 60 * 60; // 24 hours\n\n/**\n * Schema for stored job payloads.\n * Used when payload exceeds PAYLOAD_SIZE_THRESHOLD_BYTES.\n *\n * Resource Design:\n * - Internal system resource, no frontend exposure\n * - All fields except storageId are backendOnly\n * - TTL: Documents are automatically deleted when expiresAt is reached\n */\nexport const JobPayloadStorageSchema = z.object({\n /** Document ID — auto-generated. `.isPrimaryKey()` is what makes the PostgreSQL planner emit the\n * PRIMARY KEY constraint (MongoDB enforces `_id` uniqueness implicitly); without it this table\n * shipped constraint-less on PostgreSQL. */\n _id: z.string().isPrimaryKey(),\n\n // === Reference (exposed for lookup) ===\n /** Storage ID (used in JobPayload.inputPayloadStorageId) */\n storageId: z.uuid().isUnique({ scope: 'global', sparse: false }),\n\n // === Application Context ===\n /**\n * The application RECORD id (`applications._id`) — the APPLICATION resource scope's key, stamped by\n * the backend's payload store from the canonical identity and the only id it reads a payload back\n * under. Never `JobPayload.applicationId`, which is the platform's wire address.\n */\n applicationId: z.string().isDBIndexed().isBackendOnly(),\n\n // === Content (sensitive, backend-only) ===\n /** JSON-stringified payload - contains actual job data */\n payloadJson: z.string().isBackendOnly(),\n /** Query metadata for an opt-in run projection; selected results live only in payloadJson. */\n scheduledEvidence: ScheduledRunEvidenceFieldsSchema.omit({ results: true }).isBackendOnly().optional(),\n /** Size of the payload in bytes */\n payloadSizeBytes: z.number().int().positive().isBackendOnly(),\n\n // === Compression (internal implementation detail) ===\n /** Whether the payload is compressed */\n isCompressed: z.boolean().default(false).isBackendOnly(),\n /** Compression algorithm used */\n compressionType: z.enum(PayloadCompressionTypeValues).default(PayloadCompressionType.NONE).isBackendOnly(),\n\n // === Lifecycle ===\n /** When the payload was stored */\n createdAt: z.date().isDBIndexed(),\n /**\n * When the payload expires and can be cleaned up.\n * MongoDB TTL index will automatically delete documents at this time.\n */\n expiresAt: z.date().ttl({ expireAfterSeconds: 0 }),\n\n // === Reference Tracking (internal) ===\n /** Number of references to this payload (for cleanup) */\n referenceCount: z.number().int().min(0).default(1).isBackendOnly(),\n});\n\nexport type JobPayloadStorage = z.infer<typeof JobPayloadStorageSchema>;\n\n// ============================================================================\n// JOB RESULT SCHEMA (Transport - not a resource)\n// ============================================================================\n\n/**\n * Job execution result.\n * Returned to callers via RPC reply queue or callback dispatch.\n *\n * This is NOT a resource schema (used for RabbitMQ message transport)\n */\n/**\n * What a caller is told when a resource operation was ACCEPTED rather than performed.\n *\n * A background or fire-and-forget runtime answers the request before the write happens, so the\n * response is an acknowledgement — and a surface that reads it as a result would report success for\n * work that has not run. The two members are not interchangeable: `QUEUED` means the job is on the\n * queue, `PROCESSING` means a worker has it, and a caller polling or explaining the state to a\n * person needs the difference.\n */\nexport enum ResourceOperation_BackgroundAcceptanceStatus {\n QUEUED = 'queued',\n PROCESSING = 'processing',\n}\n\n/**\n * The acknowledgement a non-awaited runtime answers with.\n *\n * Deliberately carries NO message: a response that reaches a person's screen must be worded from\n * the label tree, in their language, by the surface that shows it. This used to include the English\n * sentence \"Job has been queued for background processing\", which the action bar surfaced verbatim\n * as a success toast — display text invented on the server\n * (`.claude/rules/display-text-comes-from-i18n.md`), and a claim of success for a write that had\n * not happened.\n */\nexport const ResourceOperationBackgroundAcceptanceSchema = z.object({\n jobId: z.string().min(1),\n status: z.enum(ResourceOperation_BackgroundAcceptanceStatus),\n});\nexport type ResourceOperationBackgroundAcceptance = z.infer<typeof ResourceOperationBackgroundAcceptanceSchema>;\n\n/**\n * Read a background acceptance out of an operation result, or `undefined` when the result is an\n * ordinary answer.\n *\n * One reader, so the frontend and any other consumer cannot disagree about what \"this has not run\n * yet\" looks like on the wire.\n */\nexport function readBackgroundAcceptance(result: unknown): ResourceOperationBackgroundAcceptance | undefined {\n const parsed = ResourceOperationBackgroundAcceptanceSchema.safeParse(result);\n return parsed.success ? parsed.data : undefined;\n}\n\n/**\n * What a background BULK job did to each row it was given.\n *\n * An asynchronous batch may PARTIALLY succeed, and when it does it must say which items failed\n * (spec-cite: Google AIP-234, \"Batch update\" — a synchronous batch update must be atomic, while a\n * long-running one reports per-item errors; https://google.aip.dev/234). A row count cannot answer\n * that: one refused row and one row that matched nothing look identical.\n *\n * A failure carries the error's REFERENCE rather than its message. The reference is what a client\n * branches on and what a locale turns into words; a message would be the server guessing at the\n * reader's language.\n */\nexport const BulkJobItemFailureSchema = z.object({\n /** The row that was refused. */\n resourceId: z.string().min(1),\n /** The refusal's client-branchable reference. */\n customMessageReference: z.string().optional(),\n /** The refusal's category, so a caller can tell an authorization refusal from a validation one. */\n errorType: z.string().optional(),\n});\nexport type BulkJobItemFailure = z.infer<typeof BulkJobItemFailureSchema>;\n\n/**\n * The result a background BULK job answers with.\n *\n * `attemptedCount` is what the job was GIVEN, not what the selection matched when the person chose:\n * rows can leave the population between the two, and this number is the one the run can vouch for.\n */\nexport const BulkJobPerRowResultSchema = z.object({\n attemptedCount: z.number().int().min(0),\n succeededCount: z.number().int().min(0),\n failedCount: z.number().int().min(0),\n failures: z.array(BulkJobItemFailureSchema),\n});\nexport type BulkJobPerRowResult = z.infer<typeof BulkJobPerRowResultSchema>;\n\nexport const JobResultSchema = z.object({\n /** Job identifier */\n jobId: z.uuid(),\n\n /** Final status of the job */\n status: z.enum(JobStatusValues),\n\n // === Success Result ===\n // EITHER inline OR storage reference (mutually exclusive)\n /** JSON-stringified result data for small results */\n resultJson: z.string().optional(),\n /** Reference to JobPayloadStorage for large results */\n resultPayloadStorageId: z.uuid().optional(),\n\n // === Error Info ===\n /** Error information if job failed (uses backend error schema with full error details) */\n error: WildoError_BackendSchema.optional(),\n\n // === Timing ===\n /** When job execution started */\n startedAt: z.date(),\n /** When job execution completed */\n completedAt: z.date().optional(),\n /** Execution duration in milliseconds */\n durationMs: z.number().int().optional(),\n});\n\nexport type JobResult = z.infer<typeof JobResultSchema>;\n\n// ============================================================================\n// JOB EXECUTION TRACKING SCHEMA (Resource)\n// ============================================================================\n\n/**\n * Default TTL for job execution records in seconds (30 days).\n * Completed/failed jobs are automatically deleted after this period.\n */\nexport const JOB_EXECUTION_TTL_SECONDS = 30 * 24 * 60 * 60; // 30 days\n\n/**\n * Job execution tracking record.\n *\n * Resource Design:\n * - Internal system resource for job lifecycle tracking\n * - Queryable fields (jobId, status, organizationId, userId) are exposed\n * - Sensitive/internal fields are marked .isBackendOnly()\n * - TTL: ordinary history expires after 30 days; scheduled claims only after a terminal outcome\n * - Proper indexes for dashboard/monitoring queries\n */\nexport const JobExecutionSchema = z.object({\n /** Document ID — auto-generated. `.isPrimaryKey()` is what makes the PostgreSQL planner emit the\n * PRIMARY KEY constraint (MongoDB enforces `_id` uniqueness implicitly); without it this table\n * shipped constraint-less on PostgreSQL. */\n _id: z.string().isPrimaryKey(),\n\n // === Job Identity (exposed for queries) ===\n /** Unique job identifier */\n jobId: z.uuid().isUnique({ scope: 'global', sparse: false }),\n /**\n * The application RECORD id (`applications._id`) — the APPLICATION resource scope's key. Stamped by\n * the backend's job tracker from the canonical identity at the moment the wire payload becomes a\n * row, and the only id its recovery and evidence scans filter on. Never copied from\n * `JobPayload.applicationId`, which is the platform's wire address and a different value.\n */\n applicationId: z.string().isDBIndexed(),\n\n // === What Was Executed (exposed for filtering) ===\n /** Type of job */\n jobType: z.enum(JobTypeValues).isDBIndexed(),\n /** Operation path key for resource operations */\n operationPathKey: z.string().optional(),\n /** Batch reference for custom batches */\n batchRef: z.string().optional(),\n /** Domain category for domain jobs (email, agents, etc.) */\n domainCategory: z.string().isDBIndexed().optional(),\n\n // === Context (exposed for org/user filtering) ===\n /** Organization ID from execution context */\n organizationId: z.string().isDBIndexed().optional(),\n /** User ID from execution context */\n userId: z.string().isDBIndexed().optional(),\n /** How the job was initiated */\n initiatedBy: z.enum(JobInitiatorValues),\n\n // === Execution State (exposed for monitoring) ===\n /** Current status */\n status: z.enum(JobExecutionStatusValues).isDBIndexed(),\n /** Queue name where job was published */\n queueName: z.string().isDBIndexed(),\n /** Queue priority */\n priority: z.enum(JobPriorityValues),\n\n // === Retry Tracking (exposed for retry monitoring) ===\n /** Current retry attempt (0-indexed) */\n retryCount: z.number().int().min(0).default(0),\n /** Maximum retry attempts */\n maxRetries: z.number().int().min(0),\n /** When the last retry was attempted */\n lastRetryAt: z.date().optional(),\n\n // === Timing (exposed for performance monitoring) ===\n /**\n * When the job record was created. Cleanup is governed separately by expiresAt.\n *\n * `.default(() => new Date())` is REQUIRED, not decorative: this is a\n * system-managed timestamp that the create pipeline strips from the input\n * before validation (like every other `createdAt`). Without a default, the\n * create-DTO date-coercion (`z.date()` → `z.coerce.date()`) then coerces the\n * now-`undefined` value → `new Date(undefined)` = Invalid Date → the create\n * FATALs with `createdAt: expected date, received Date`. The default supplies\n * a valid Date when the field is absent, matching the canonical timestamp\n * pattern (`z.date().default(() => new Date())` on todos/tasks/etc.). The separate expiresAt field carries the cleanup deadline.\n */\n createdAt: z.date().default(() => new Date()),\n /** Ordinary history expires after 30 days; unfinished scheduled claims have no expiry. */\n expiresAt: z.date().ttl({ expireAfterSeconds: 0 }).optional(),\n /** Durable scheduled ownership and recovery contract. Legacy queue writers must not mutate these rows. */\n scheduledState: ScheduledExecutionStateSchema.isBackendOnly().optional(),\n minionName: z.string().optional(),\n /** When the job was published to queue */\n queuedAt: z.date().optional(),\n /** When worker started processing */\n startedAt: z.date().optional(),\n /** When execution completed (success or failure) */\n completedAt: z.date().isDBIndexed().optional(),\n /** Execution duration in milliseconds */\n durationMs: z.number().int().optional(),\n\n // === Payload References (backend-only, internal implementation) ===\n /** Reference to input payload storage */\n inputPayloadStorageId: z.uuid().isBackendOnly().optional(),\n /** Reference to output payload storage */\n outputPayloadStorageId: z.uuid().isBackendOnly().optional(),\n\n // === Error Info (exposed for error analysis) ===\n /** Error information if job failed (uses backend error schema with full error details) */\n error: WildoError_BackendSchema.optional(),\n\n // === Worker Info (backend-only, debugging only) ===\n /** Pod/worker ID that processed this job */\n workerId: z.string().isBackendOnly().optional(),\n /** Hostname of the worker (for debugging) */\n workerHostname: z.string().isBackendOnly().optional(),\n});\n\nexport type JobExecution = z.infer<typeof JobExecutionSchema>;\n"]}
|
|
1
|
+
{"version":3,"file":"jobs.shared.schemas.js","sourceRoot":"","sources":["../../../src/queue/jobs.shared.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Jobs Shared Schemas\n *\n * All job-related enums, schemas, and types consolidated in a single file.\n * Includes: job types, statuses, payloads, results, execution tracking, and storage.\n *\n * Resource Design Notes:\n * - JobExecution and JobPayloadStorage are internal system resources\n * - Many fields are marked .isBackendOnly() as they contain sensitive internal data\n * - TTL indexes ensure automatic cleanup\n * - Proper indexes for common query patterns\n */\n\nimport { z } from 'zod';\nimport { ModelCallAttributionInputSchema } from '../flows-actors/work-attribution.shared.schemas';\nimport { DataMode } from '../resources/resources-config.shared.schemas';\nimport { initZodDecorators } from '@wildo-ai/zod-decorators';\nimport { WildoError_BackendSchema, RetryPolicy_BackoffType } from '../errors/errors.shared.schemas';\n\n// Ensure Zod decorators are loaded\ninitZodDecorators(z);\n\n// ============================================================================\n// ENUMS\n// ============================================================================\n\n/**\n * Type of job being processed.\n */\nexport enum JobType {\n /** Standard resource operation (CREATE, READ, UPDATE, DELETE, etc.) */\n RESOURCE_OPERATION = 'resource_operation',\n /** Custom batch job defined in customBatchesFactory */\n CUSTOM_BATCH = 'custom_batch',\n /** Scheduled cron job triggered by crontabs-manager */\n SCHEDULED_CRON = 'scheduled_cron',\n /**\n * Cron-driven minion tick (KD-12 of\n * `.claude/plans/minions-and-workers-implementation.md`).\n *\n * Published by `platform-crontabs-batches-manager` to the application's\n * scheduled queue when a minion's cron schedule fires. The consumer\n * (`MinionTickConsumerBackendService` in `saas-minions-lib`) filters\n * messages by matching the token's `minionName` against the minion's OWN\n * identity — which each minion sources from its compiled-in\n * `defineMinionInit({ minionName })` config (the minion package is\n * domain-specific by construction), cross-validated at boot against the\n * fetched `appConfig.minions[minionName]`. Matched ticks route to the\n * minion's locally-hosted actor system. Identity is NOT read from env:\n * `APP_OWNED_SERVICE_NAME` is deploy-time metadata (and the read-from-env\n * path of the language-pluggable *worker* runtime), never the Node\n * minion's runtime identity source.\n *\n * Dispatch is a pure switch on `jobType` — see `PublishScheduledJobInput`\n * / `ScheduledJobTokenInput` xor that pairs `MINION_TICK` with the\n * `minionName` discriminator.\n */\n MINION_TICK = 'minion_tick',\n}\n\n/**\n * Status of a job through its lifecycle.\n */\nexport enum JobStatus {\n /** Created but not yet queued */\n PENDING = 'pending',\n /** Published to queue */\n QUEUED = 'queued',\n /** Worker started processing */\n PROCESSING = 'processing',\n /** Successfully finished */\n COMPLETED = 'completed',\n /** Failed, retries exhausted */\n FAILED = 'failed',\n /** Failed but will retry */\n RETRYING = 'retrying',\n /** Moved to dead letter queue */\n DEAD_LETTER = 'dead_letter',\n /** Manually cancelled */\n CANCELLED = 'cancelled',\n}\n\n/**\n * Which queue substrate a runtime uses.\n *\n * Read by `bindQueueAdapter()` in `saas-backend-lib`, which is the only place a member is mapped to\n * an implementation — as a total `Record`, so adding a member here is a compile error until somebody\n * says which class serves it.\n *\n * `REDIS` was declared and removed (#502). It had no implementation, no reader and no selection\n * path, and the decision was to build ONE of the two missing adapters rather than both: a vocabulary\n * member offering a choice nothing can make is worse than an absent one, because it reads as a\n * supported deployment. Reinstate it when something needs it, alongside the adapter.\n */\nexport enum QueueAdapterType {\n /** A real broker. The default, and what a deployed application wants: durability across a restart, visibility across processes, permissions per runtime. */\n RABBITMQ = 'rabbitmq',\n /**\n * In-process, no broker. For a test lane that needs real background-work BEHAVIOUR — retry,\n * dead-lettering, delayed redelivery, unacknowledged messages staying unacknowledged — and for a\n * single-process runtime that has declared it wants none of what a broker is bought for.\n */\n MEMORY = 'memory',\n}\n\n/**\n * Who initiated the job.\n */\nexport enum JobInitiator {\n /** Triggered via API call */\n API = 'api',\n /** Triggered by crontabs-batches-manager */\n CRONTAB = 'crontab',\n /** Triggered internally by service */\n INTERNAL = 'internal',\n}\n\n/**\n * Status of a job execution record (for tracking).\n * Similar to JobStatus but specific to the tracking record.\n */\nexport enum JobExecutionStatus {\n /** Created but not yet queued */\n PENDING = 'pending',\n /** Published to queue */\n QUEUED = 'queued',\n /** Worker started processing */\n PROCESSING = 'processing',\n /** Successfully finished */\n COMPLETED = 'completed',\n /** Failed, retries exhausted */\n FAILED = 'failed',\n /** Failed but will retry */\n RETRYING = 'retrying',\n /** Moved to dead letter queue */\n DEAD_LETTER = 'dead_letter',\n /** Manually cancelled */\n CANCELLED = 'cancelled',\n}\n\n/**\n * Compression type for stored payloads.\n */\nexport enum PayloadCompressionType {\n NONE = 'none',\n GZIP = 'gzip',\n}\n\n/**\n * Job priority levels.\n * HIGH and CRITICAL are routed to priority queues.\n */\nexport enum JobPriority {\n LOW = 'low',\n NORMAL = 'normal',\n HIGH = 'high',\n CRITICAL = 'critical',\n}\n\n// ============================================================================\n// CONSTANTS\n// ============================================================================\n\n/**\n * Threshold for storing payloads externally vs inline.\n * Payloads >= 100KB are stored in MongoDB, referenced by storageId.\n * This prevents RabbitMQ performance issues with large messages.\n */\nexport const PAYLOAD_SIZE_THRESHOLD_BYTES = 100 * 1024; // 100KB\n\n// ============================================================================\n// ZOD ENUM VALUE EXTRACTION (for Zod 4)\n// ============================================================================\n\nconst JobTypeValues = Object.values(JobType) as [string, ...string[]];\nconst JobStatusValues = Object.values(JobStatus) as [string, ...string[]];\nconst JobPriorityValues = Object.values(JobPriority) as [string, ...string[]];\nconst JobInitiatorValues = Object.values(JobInitiator) as [string, ...string[]];\nconst JobExecutionStatusValues = Object.values(JobExecutionStatus) as [string, ...string[]];\nconst PayloadCompressionTypeValues = Object.values(PayloadCompressionType) as [string, ...string[]];\n\n// ============================================================================\n// RETRY BACKOFF CONFIG (shared: operation queueConfig + job transport)\n// ============================================================================\n\n/**\n * App-authorable backoff shape controlling the *timing* of job retries.\n *\n * This is the subset of retry parameters an application developer sets on an\n * operation's `queueConfig.retryConfig` to shape how long a failed job waits\n * before each re-attempt. It is intentionally a partial: the `maxRetries` and\n * `timeoutMs` axes already live at the top of `ResourceConfiguration_QueueConfig`,\n * so they are NOT repeated here (single source of truth per axis).\n *\n * Runtime semantics — when a job fails and is still eligible to retry, the queue\n * worker computes `delay = baseDelayMs × 2^attempt` (for `EXPONENTIAL`; see\n * `JobRetryUtils.calculateDelay` for `FIXED`/`LINEAR`), clamps it to `maxDelayMs`,\n * and holds the message that long in a **durable broker-side delay queue**\n * (RabbitMQ per-queue TTL + dead-letter back to the source queue) before\n * redelivery. The delay is broker-timed, not an in-process sleep, so it survives\n * a worker crash during the wait.\n *\n * All fields are optional; unset fields fall back to `QUEUE_RETRY_DEFAULTS`.\n * Both the authoring surface (`queueConfig.retryConfig`) and the wire payload\n * (`JobPayload.retryConfig`) reuse this exact schema — the enqueue side resolves\n * defaults so the transported object carries fully-resolved values.\n *\n * NOTE: This schema lives in the jobs module (not queues) because\n * `queues.shared.schemas.ts` already imports from here (`JobPriority`); putting\n * it in queues would create an import cycle. It is queue-facing by name.\n *\n * @example\n * // Exponential backoff starting at 2s, capped at 30s:\n * queueConfig: { maxRetries: 5, retryConfig: { baseDelayMs: 2000, maxDelayMs: 30000 } }\n */\nexport const QueueRetryBackoffConfigSchema = z.object({\n /** Base delay in ms — first retry / base of the exponential (or linear) curve. */\n baseDelayMs: z.number().int().min(100).optional(),\n /** Maximum delay cap in ms — prevents unbounded backoff on late attempts. */\n maxDelayMs: z.number().int().min(1000).optional(),\n /** Backoff curve: `fixed` | `linear` | `exponential`. Defaults to `exponential`. */\n retryPolicy: z.enum(RetryPolicy_BackoffType).optional(),\n});\n\nexport type QueueRetryBackoffConfig = z.infer<typeof QueueRetryBackoffConfigSchema>;\n\n/** @wildo_source:part:start saas.models.queue.scheduled-recovery facet:layer:shared facet:audience:app-developer */\n\n/** First receipt is short-lived; persisted recovery has its own policy deadline. */\nexport const SCHEDULED_INITIAL_ADMISSION_MAX_AGE_MS = 5 * 60 * 1000;\nexport const SCHEDULED_INITIAL_ADMISSION_FUTURE_SKEW_MS = 30 * 1000;\n\n/** How the handler's complete effects tolerate execution after an uncertain outcome. */\nexport enum ScheduledReplaySafety {\n /** No automatic repetition; a failed call can already have committed effects. */\n MANUAL = 'manual',\n /** All effects use stable business keys or equivalent idempotency mechanisms. */\n IDEMPOTENT = 'idempotent',\n /** A backend reconciler must establish completion or safety before repetition. */\n RECONCILE = 'reconcile',\n}\n\n/** Durable admission phase, independent from the presentation status of a job. */\nexport enum ScheduledExecutionPhase {\n READY = 'ready',\n RUNNING = 'running',\n RECONCILING = 'reconciling',\n WAITING = 'waiting',\n REVIEW = 'review',\n FINISHED = 'finished',\n}\n\nexport enum ScheduledReconciliationOutcome {\n COMPLETED = 'completed',\n SAFE_TO_RETRY = 'safe_to_retry',\n INCONCLUSIVE = 'inconclusive',\n}\n\n/** Operator decisions are distinct from evidence returned by a handler's reconciler. */\nexport enum ScheduledReviewOutcome {\n CONFIRM_COMPLETED = 'confirm_completed',\n RETRY = 'retry',\n ABANDON = 'abandon',\n}\n\n/** A declaration is a contract, not a mechanism that makes side effects idempotent. */\nexport const ScheduledRecoveryPolicySchema = z.object({\n contractVersion: z.string().min(1).default('1'),\n replaySafety: z.enum(ScheduledReplaySafety).default(ScheduledReplaySafety.MANUAL),\n retryReportedFailures: z.boolean().default(false),\n /** Total admissions, including reconciliation; initial execution consumes one. */\n maxAttempts: z.number().int().min(1).max(100).default(1),\n /** Elapsed horizon from first authenticated receipt, never extended by recovery. */\n maxRecoveryMs: z.number().int().min(1000).max(30 * 24 * 60 * 60 * 1000).default(24 * 60 * 60 * 1000),\n /** Heartbeat lease: expiry means contact was lost, not that the old worker stopped. */\n leaseMs: z.number().int().min(3000).max(60 * 60 * 1000).default(60000),\n backoff: QueueRetryBackoffConfigSchema.optional(),\n jitterRatio: z.number().min(0).max(1).default(0.2),\n}).superRefine((policy, ctx) => {\n if (policy.retryReportedFailures && policy.replaySafety === ScheduledReplaySafety.MANUAL) {\n ctx.addIssue({ code: 'custom', path: ['retryReportedFailures'], message: 'Automatic retry requires idempotent effects or reconciliation.' });\n }\n});\nexport type ScheduledRecoveryPolicy = z.infer<typeof ScheduledRecoveryPolicySchema>;\nexport function normalizeScheduledRecoveryPolicy(policy?: Partial<ScheduledRecoveryPolicy>): ScheduledRecoveryPolicy {\n return ScheduledRecoveryPolicySchema.parse(policy ?? {});\n}\n\n/** Finite, application-owned evidence policy. No policy means no long-term projection. */\nexport const ScheduledEvidencePolicySchema = z.object({\n policyRef: z.string().trim().min(1).max(160),\n /** Absolute expiry is completion plus this duration, never the date an archive retry succeeds. */\n retainForMs: z.number().int().min(86400000).max(3650 * 86400000),\n /** Only these top-level scalar result fields may enter retained evidence. */\n resultFields: z.array(z.string().regex(/^[A-Za-z][A-Za-z0-9_]*$/).max(80)).max(32),\n /** Selected boolean flag identifying deferred business work independently from invocation success. */\n deferredField: z.string().min(1).optional(),\n}).superRefine((policy, ctx) => {\n if (new Set(policy.resultFields).size !== policy.resultFields.length) ctx.addIssue({ code: 'custom', message: 'Evidence result fields must be unique' });\n if (policy.deferredField && !policy.resultFields.includes(policy.deferredField)) {\n ctx.addIssue({ code: 'custom', path: ['deferredField'], message: 'Deferred flag must be a selected result field' });\n }\n});\nexport type ScheduledEvidencePolicy = z.infer<typeof ScheduledEvidencePolicySchema>;\n\nexport enum ScheduledEvidenceSource {\n EXECUTION = 'execution',\n RECONCILIATION = 'reconciliation',\n OPERATOR_CONFIRMATION = 'operator_confirmation',\n ABANDONMENT = 'abandonment',\n}\nexport enum ScheduledEvidenceResultStatus {\n CAPTURED = 'captured',\n UNAVAILABLE = 'unavailable',\n}\n\n/**\n * Bounded projection, not arbitrary job input, output or exception text.\n *\n * `applicationId` is the application RECORD id (`applications._id`), projected from the job row it\n * describes — never the platform id the wire payload carried. The coverage report refuses a record\n * whose value differs from its scope, so a copy of this field retained under the wrong id is not\n * merely stale: it makes every window that reaches it fail (the follow-up migration of #1296).\n */\nconst ScheduledRunEvidenceFieldsSchema = z.object({\n jobId: z.uuid(), applicationId: z.string().min(1), queueName: z.string().min(1),\n jobType: z.enum(JobType), batchRef: z.string().optional(), operationPathKey: z.string().optional(), minionName: z.string().optional(),\n scheduledAt: z.date().optional(), publishedAt: z.date(), startedAt: z.date().optional(), completedAt: z.date(), expiresAt: z.date(),\n invocationStatus: z.enum(JobExecutionStatus), source: z.enum(ScheduledEvidenceSource),\n attemptCount: z.number().int().nonnegative(), policy: ScheduledEvidencePolicySchema,\n resultStatus: z.enum(ScheduledEvidenceResultStatus), deferred: z.boolean().optional(),\n results: z.record(z.string(), z.union([z.string().max(512), z.number().finite(), z.boolean(), z.null()])),\n});\nexport const ScheduledRunEvidenceSchema = ScheduledRunEvidenceFieldsSchema.superRefine((evidence, ctx) => {\n const targetCount = [evidence.batchRef, evidence.operationPathKey, evidence.minionName].filter(value => value !== undefined).length;\n if (targetCount !== 1 || (evidence.jobType === JobType.MINION_TICK ? !evidence.minionName\n : evidence.jobType !== JobType.SCHEDULED_CRON || !(evidence.batchRef || evidence.operationPathKey))) {\n ctx.addIssue({ code: 'custom', message: 'Evidence requires exactly one scheduled batch, operation or minion target' });\n }\n const expectedStatus = evidence.source === ScheduledEvidenceSource.ABANDONMENT ? JobExecutionStatus.FAILED : JobExecutionStatus.COMPLETED;\n if (evidence.invocationStatus !== expectedStatus) {\n ctx.addIssue({ code: 'custom', path: ['invocationStatus'], message: 'Terminal outcome must agree with evidence source' });\n }\n\n if (evidence.expiresAt.getTime() !== evidence.completedAt.getTime() + evidence.policy.retainForMs) {\n ctx.addIssue({ code: 'custom', path: ['expiresAt'], message: 'Evidence expiry must follow the captured policy and original completion' });\n }\n const fields = Object.keys(evidence.results);\n if (fields.some(field => !evidence.policy.resultFields.includes(field))) {\n ctx.addIssue({ code: 'custom', path: ['results'], message: 'Only policy-selected result fields may be retained' });\n }\n if (evidence.resultStatus === ScheduledEvidenceResultStatus.CAPTURED && evidence.policy.resultFields.some(field => !Object.hasOwn(evidence.results, field))) {\n ctx.addIssue({ code: 'custom', path: ['resultStatus'], message: 'Captured evidence requires every selected field' });\n }\n const selectedDeferred = evidence.policy.deferredField ? evidence.results[evidence.policy.deferredField] : undefined;\n if (evidence.deferred !== (typeof selectedDeferred === 'boolean' ? selectedDeferred : undefined)\n || (evidence.resultStatus === ScheduledEvidenceResultStatus.CAPTURED && evidence.policy.deferredField && typeof selectedDeferred !== 'boolean')) {\n ctx.addIssue({ code: 'custom', path: ['deferred'], message: 'Deferral must agree with the selected boolean result' });\n }\n});\nexport type ScheduledRunEvidence = z.infer<typeof ScheduledRunEvidenceSchema>;\n\n/** Stable occurrence identity and distinct attempt identity made available to handler code. */\nexport interface ScheduledAttemptContext {\n occurrenceId: string;\n attemptId: string;\n attemptNumber: number;\n}\nexport interface ScheduledReconciliationResult {\n outcome: ScheduledReconciliationOutcome;\n resultJson?: string;\n}\n\n/** @wildo_source:part:end saas.models.queue.scheduled-recovery */\n\n/** Persisted inside JobExecution; trusted only after authenticated receipt and local policy resolution. */\nexport const ScheduledExecutionStateSchema = z.object({\n phase: z.enum(ScheduledExecutionPhase),\n revision: z.number().int().nonnegative(),\n payloadJson: z.string(),\n policy: ScheduledRecoveryPolicySchema,\n /** Selected once from local application policy, independent from replay safety. */\n evidencePolicy: ScheduledEvidencePolicySchema.optional(),\n /** Terminal-CAS projection retried by the bounded operational archive outbox. */\n evidence: ScheduledRunEvidenceSchema.optional(),\n evidenceArchived: z.boolean().optional(),\n evidenceArchiveAfter: z.date().optional(),\n deadline: z.date(),\n nextAttemptAt: z.date(),\n owner: z.uuid().optional(),\n attemptCount: z.number().int().min(0).max(100),\n /** A successful reconciliation authorizes exactly the next execution admission. */\n reconciledSafe: z.boolean().default(false),\n reason: z.string().optional(),\n attempts: z.array(z.object({\n attemptId: z.uuid(),\n phase: z.enum(ScheduledExecutionPhase),\n startedAt: z.date(),\n endedAt: z.date().optional(),\n outcome: z.string().optional(),\n })).max(100),\n /** Explicit operator decisions preserve the occurrence, attribution and reason. */\n resolutions: z.array(z.object({ actor: z.string(), reason: z.string(), at: z.date(), outcome: z.enum(ScheduledReviewOutcome) })).max(100).default([]),\n});\nexport type ScheduledExecutionState = z.infer<typeof ScheduledExecutionStateSchema>;\n\n// ============================================================================\n// JOB PAYLOAD SCHEMA (Transport - not a resource)\n// ============================================================================\n\n/**\n * Caller-selected response semantics that must survive resource-operation worker replay.\n * This is deliberately not RepositoryOptions: transactions, authorization overrides and\n * server-owned mutation fields are not presentation policy and must never enter this object.\n * Unknown keys are stripped at enqueue and replay, even for structurally wider service options.\n * Variant identity is already carried by operationPathJson; page/filter/sort remain input data.\n */\nexport const JobResourceResponseOptionsSchema = z.object({\n /** Preserve the repository's real pagination envelope rather than returning a raw array. */\n paginated: z.boolean().optional(),\n /** Preserve the caller's requested population/data shape. */\n dataMode: z.enum(DataMode).optional(),\n /** Preserve an explicit request to omit signed file URL population. */\n populateFiles: z.boolean().optional(),\n});\n\nexport type JobResourceResponseOptions = z.infer<typeof JobResourceResponseOptionsSchema>;\n\n/**\n * Accepted mutation preconditions travel independently from response presentation.\n * Dropping either value makes worker execution accept writes the inline request rejects.\n * This whitelist intentionally excludes transactions and authorization overrides; unknown\n * keys are stripped at publication and replay. Zero is a valid expected version.\n */\nexport const JobResourceMutationPreconditionsSchema = z.object({\n ifMatchVersion: z.number().int().nonnegative().optional(),\n fieldTimestamps: z.record(z.string(), z.number().positive()).optional(),\n});\n\nexport type JobResourceMutationPreconditions = z.infer<typeof JobResourceMutationPreconditionsSchema>;\n\n\n/**\n * Job payload for queue transport.\n *\n * Design notes:\n * - This is NOT a resource schema (used for RabbitMQ message transport)\n * - applicationId is needed for queue routing (not duplicated from context)\n * - operationPathKey is primary identifier, operationPathJson for execution\n * - executionContextJson carries full context for reconstruction\n * - org/user IDs are NOT duplicated - extract from executionContextJson if needed\n */\nexport const JobPayloadSchema = z.object({\n /** Unique job identifier */\n jobId: z.uuid(),\n\n /** Type of job being executed */\n jobType: z.enum(JobTypeValues),\n\n // === Application Routing ===\n /**\n * The PLATFORM's id for the application — the value queue names are built from, the value the\n * crontabs-manager signs into a scheduled message, and the value a consumer verifies a message\n * against before accepting it. It is an ADDRESS on the wire.\n *\n * It is NOT the application record id (`applications._id`) and must never be copied into a row:\n * `JobExecution.applicationId` and `JobPayloadStorage.applicationId` are stamped by the backend's\n * tracker and payload store from the canonical identity. Copying this wire value into those rows is\n * what anchored 13,532 Wonder Todos rows to an id no scope predicate matches (fixed 2026-09-18).\n */\n applicationId: z.string(),\n\n // === Operation Identification ===\n /** Primary key for lookup/matching (required for RESOURCE_OPERATION) */\n operationPathKey: z.string().optional(),\n /** Serialized ResourceConfiguration_OperationPath (required for RESOURCE_OPERATION) */\n operationPathJson: z.string().optional(),\n /** Custom batch reference (required for CUSTOM_BATCH) */\n batchRef: z.string().optional(),\n /** Local minion target; checked before receipt is admitted. */\n minionName: z.string().optional(),\n\n /** Response policy only; absent retains ordinary internal-service defaults. */\n resourceResponseOptions: JobResourceResponseOptionsSchema.optional(),\n /** Optimistic-locking and CRDT guards accepted by the initiating request. */\n resourceMutationPreconditions: JobResourceMutationPreconditionsSchema.optional(),\n\n // === Execution Data ===\n // EITHER inline OR storage reference (mutually exclusive)\n /** JSON-stringified input data for small payloads (<100KB) */\n inputDataJson: z.string().optional(),\n /** Reference to JobPayloadStorage for large payloads */\n inputPayloadStorageId: z.uuid().optional(),\n /** Resource ID for READ/UPDATE/DELETE operations */\n inputId: z.string().optional(),\n /**\n * The rows a BULK operation targets, resolved before the job was enqueued.\n *\n * `inputId` cannot carry them — it is one id — so a bulk operation sent to the background lane\n * used to arrive at the worker with NO target at all: the selector is stripped from `inputData`\n * once the service has read it, and a single-id field has nowhere to put an array. The worker\n * then replayed a targetless write (#1461).\n *\n * Mutually exclusive with `inputId` by construction: the enqueue splits one target into whichever\n * field can hold it. The worker runs the bulk PER ROW from this list, so each row gets the\n * single-row operation's own semantics — pre-image, `enabledCondition`, one audit record, one\n * resource-room sync event — and the job's result reports what happened to each.\n */\n inputIds: z.array(z.string().min(1)).min(1).optional(),\n\n // === Execution Context ===\n /**\n * Serialized execution context (reconstructed on worker side).\n * Optional for CUSTOM_BATCH and SCHEDULED_CRON (they create their own internal context).\n */\n executionContextJson: z.string().optional(),\n\n // === Job Source ===\n /** How the job was initiated */\n initiatedBy: z.enum(JobInitiatorValues).default(JobInitiator.API),\n\n // === Job Configuration ===\n /** Queue priority level */\n priority: z.enum(JobPriorityValues).default(JobPriority.NORMAL),\n /** Current retry attempt (0-indexed) */\n retryCount: z.number().int().min(0).default(0),\n /** Maximum retry attempts */\n maxRetries: z.number().int().min(0).default(3),\n /**\n * Backoff timing for retries (base delay, cap, curve). Resolved from the\n * operation's `queueConfig.retryConfig` at enqueue time (defaults applied), so\n * the worker can honor per-operation backoff without re-reading config. The\n * worker computes the delay from these values and holds the message in a\n * durable broker delay queue before redelivery — see `QueueRetryBackoffConfig`.\n */\n retryConfig: QueueRetryBackoffConfigSchema.optional(),\n /** Reply-wait policy carried with the job. The executor does not enforce this as an execution deadline;\n * fire-and-forget jobs have no waiting caller to time out. */\n timeoutMs: z.number().int().min(1000).default(300000),\n\n // === Timing ===\n /** When the job was created */\n createdAt: z.date(),\n /**\n * Intended execution instant for delayed jobs or the authenticated scheduled instant of a cron occurrence.\n * Distinct from publication/receipt time. New manual cron invocations omit it; historical absence\n * can also mean the occurrence time was not retained and must not be treated as proof of a manual run.\n */\n scheduledAt: z.date().optional(),\n\n // === RPC Support ===\n /**\n * RPC reply-matching id (QUEUED awaitable mode). A fresh uuid minted at enqueue time to correlate a\n * published job with its reply on the RPC reply queue — it is NOT a request trace id. Renamed from\n * `correlationId` when request→job traceability landed (Phase 6): the job now ALSO carries\n * `originCorrelationId` (the enqueuing request's trace id), and the two must never be conflated —\n * one matches a reply, the other joins the job to a distributed trace.\n */\n rpcReplyCorrelationId: z.uuid().optional(),\n /** Reply queue name for RPC pattern */\n replyTo: z.string().optional(),\n\n // === Traceability ===\n /**\n * The correlation id of the REQUEST that enqueued this job, carried onto the payload so the worker\n * that later executes it adopts the same id (see `adoptCorrelationIdIntoCurrentFrame`). This joins\n * the asynchronous job execution — its worker-side logs and audit rows — to the originating\n * request's distributed trace. Distinct from `rpcReplyCorrelationId` (reply matching) and from the\n * AMQP message `correlationId` property (wire-level reply routing). Absent for jobs with no\n * originating request (e.g. some system-enqueued work), in which case the worker mints a fresh id.\n */\n originCorrelationId: z.string().optional(),\n /**\n * The WORK FRAME the job was enqueued inside (#1598 review F14): tenant, case, execution and task, so a\n * model call the worker makes is attributed to the same unit of work as the request that enqueued it. The\n * worker reopens the frame from this field in the same step that adopts `originCorrelationId`, at both\n * consumers (the operations lane and the domain lane).\n *\n * ENGINE-WRITTEN, never client-supplied: the enqueue path copies it from the ambient frame, and no request\n * DTO carries it. Re-deriving attribution in the worker from the job's own arguments was rejected, because\n * every job type would have to know how.\n */\n attribution: ModelCallAttributionInputSchema.optional(),\n\n // === Domain Routing ===\n /** Domain category for domain-specific routing (e.g., 'email', 'agents') */\n domainCategory: z.string().optional(),\n});\n\nexport type JobPayload = z.infer<typeof JobPayloadSchema>;\n\n// ============================================================================\n// JOB PAYLOAD STORAGE SCHEMA (Resource)\n// ============================================================================\n\n/**\n * Default TTL for job payload storage in seconds (24 hours).\n * Large payloads are automatically deleted after this period.\n */\nexport const JOB_PAYLOAD_STORAGE_TTL_SECONDS = 24 * 60 * 60; // 24 hours\n\n/**\n * Schema for stored job payloads.\n * Used when payload exceeds PAYLOAD_SIZE_THRESHOLD_BYTES.\n *\n * Resource Design:\n * - Internal system resource, no frontend exposure\n * - All fields except storageId are backendOnly\n * - TTL: Documents are automatically deleted when expiresAt is reached\n */\nexport const JobPayloadStorageSchema = z.object({\n /** Document ID — auto-generated. `.isPrimaryKey()` is what makes the PostgreSQL planner emit the\n * PRIMARY KEY constraint (MongoDB enforces `_id` uniqueness implicitly); without it this table\n * shipped constraint-less on PostgreSQL. */\n _id: z.string().isPrimaryKey(),\n\n // === Reference (exposed for lookup) ===\n /** Storage ID (used in JobPayload.inputPayloadStorageId) */\n storageId: z.uuid().isUnique({ scope: 'global', sparse: false }),\n\n // === Application Context ===\n /**\n * The application RECORD id (`applications._id`) — the APPLICATION resource scope's key, stamped by\n * the backend's payload store from the canonical identity and the only id it reads a payload back\n * under. Never `JobPayload.applicationId`, which is the platform's wire address.\n */\n applicationId: z.string().isDBIndexed().isBackendOnly(),\n\n // === Content (sensitive, backend-only) ===\n /** JSON-stringified payload - contains actual job data */\n payloadJson: z.string().isBackendOnly(),\n /** Query metadata for an opt-in run projection; selected results live only in payloadJson. */\n scheduledEvidence: ScheduledRunEvidenceFieldsSchema.omit({ results: true }).isBackendOnly().optional(),\n /** Size of the payload in bytes */\n payloadSizeBytes: z.number().int().positive().isBackendOnly(),\n\n // === Compression (internal implementation detail) ===\n /** Whether the payload is compressed */\n isCompressed: z.boolean().default(false).isBackendOnly(),\n /** Compression algorithm used */\n compressionType: z.enum(PayloadCompressionTypeValues).default(PayloadCompressionType.NONE).isBackendOnly(),\n\n // === Lifecycle ===\n /** When the payload was stored */\n createdAt: z.date().isDBIndexed(),\n /**\n * When the payload expires and can be cleaned up.\n * MongoDB TTL index will automatically delete documents at this time.\n */\n expiresAt: z.date().ttl({ expireAfterSeconds: 0 }),\n\n // === Reference Tracking (internal) ===\n /** Number of references to this payload (for cleanup) */\n referenceCount: z.number().int().min(0).default(1).isBackendOnly(),\n});\n\nexport type JobPayloadStorage = z.infer<typeof JobPayloadStorageSchema>;\n\n// ============================================================================\n// JOB RESULT SCHEMA (Transport - not a resource)\n// ============================================================================\n\n/**\n * Job execution result.\n * Returned to callers via RPC reply queue or callback dispatch.\n *\n * This is NOT a resource schema (used for RabbitMQ message transport)\n */\n/**\n * What a caller is told when a resource operation was ACCEPTED rather than performed.\n *\n * A background or fire-and-forget runtime answers the request before the write happens, so the\n * response is an acknowledgement — and a surface that reads it as a result would report success for\n * work that has not run. The two members are not interchangeable: `QUEUED` means the job is on the\n * queue, `PROCESSING` means a worker has it, and a caller polling or explaining the state to a\n * person needs the difference.\n */\nexport enum ResourceOperation_BackgroundAcceptanceStatus {\n QUEUED = 'queued',\n PROCESSING = 'processing',\n}\n\n/**\n * The acknowledgement a non-awaited runtime answers with.\n *\n * Deliberately carries NO message: a response that reaches a person's screen must be worded from\n * the label tree, in their language, by the surface that shows it. This used to include the English\n * sentence \"Job has been queued for background processing\", which the action bar surfaced verbatim\n * as a success toast — display text invented on the server\n * (`.claude/rules/display-text-comes-from-i18n.md`), and a claim of success for a write that had\n * not happened.\n */\nexport const ResourceOperationBackgroundAcceptanceSchema = z.object({\n jobId: z.string().min(1),\n status: z.enum(ResourceOperation_BackgroundAcceptanceStatus),\n});\nexport type ResourceOperationBackgroundAcceptance = z.infer<typeof ResourceOperationBackgroundAcceptanceSchema>;\n\n/**\n * Read a background acceptance out of an operation result, or `undefined` when the result is an\n * ordinary answer.\n *\n * One reader, so the frontend and any other consumer cannot disagree about what \"this has not run\n * yet\" looks like on the wire.\n */\nexport function readBackgroundAcceptance(result: unknown): ResourceOperationBackgroundAcceptance | undefined {\n const parsed = ResourceOperationBackgroundAcceptanceSchema.safeParse(result);\n return parsed.success ? parsed.data : undefined;\n}\n\n/**\n * What a background BULK job did to each row it was given.\n *\n * An asynchronous batch may PARTIALLY succeed, and when it does it must say which items failed\n * (spec-cite: Google AIP-234, \"Batch update\" — a synchronous batch update must be atomic, while a\n * long-running one reports per-item errors; https://google.aip.dev/234). A row count cannot answer\n * that: one refused row and one row that matched nothing look identical.\n *\n * A failure carries the error's REFERENCE rather than its message. The reference is what a client\n * branches on and what a locale turns into words; a message would be the server guessing at the\n * reader's language.\n */\nexport const BulkJobItemFailureSchema = z.object({\n /** The row that was refused. */\n resourceId: z.string().min(1),\n /** The refusal's client-branchable reference. */\n customMessageReference: z.string().optional(),\n /** The refusal's category, so a caller can tell an authorization refusal from a validation one. */\n errorType: z.string().optional(),\n});\nexport type BulkJobItemFailure = z.infer<typeof BulkJobItemFailureSchema>;\n\n/**\n * The result a background BULK job answers with.\n *\n * `attemptedCount` is what the job was GIVEN, not what the selection matched when the person chose:\n * rows can leave the population between the two, and this number is the one the run can vouch for.\n */\nexport const BulkJobPerRowResultSchema = z.object({\n attemptedCount: z.number().int().min(0),\n succeededCount: z.number().int().min(0),\n failedCount: z.number().int().min(0),\n failures: z.array(BulkJobItemFailureSchema),\n});\nexport type BulkJobPerRowResult = z.infer<typeof BulkJobPerRowResultSchema>;\n\nexport const JobResultSchema = z.object({\n /** Job identifier */\n jobId: z.uuid(),\n\n /** Final status of the job */\n status: z.enum(JobStatusValues),\n\n // === Success Result ===\n // EITHER inline OR storage reference (mutually exclusive)\n /** JSON-stringified result data for small results */\n resultJson: z.string().optional(),\n /** Reference to JobPayloadStorage for large results */\n resultPayloadStorageId: z.uuid().optional(),\n\n // === Error Info ===\n /** Error information if job failed (uses backend error schema with full error details) */\n error: WildoError_BackendSchema.optional(),\n\n // === Timing ===\n /** When job execution started */\n startedAt: z.date(),\n /** When job execution completed */\n completedAt: z.date().optional(),\n /** Execution duration in milliseconds */\n durationMs: z.number().int().optional(),\n});\n\nexport type JobResult = z.infer<typeof JobResultSchema>;\n\n// ============================================================================\n// JOB EXECUTION TRACKING SCHEMA (Resource)\n// ============================================================================\n\n/**\n * Default TTL for job execution records in seconds (30 days).\n * Completed/failed jobs are automatically deleted after this period.\n */\nexport const JOB_EXECUTION_TTL_SECONDS = 30 * 24 * 60 * 60; // 30 days\n\n/**\n * Job execution tracking record.\n *\n * Resource Design:\n * - Internal system resource for job lifecycle tracking\n * - Queryable fields (jobId, status, organizationId, userId) are exposed\n * - Sensitive/internal fields are marked .isBackendOnly()\n * - TTL: ordinary history expires after 30 days; scheduled claims only after a terminal outcome\n * - Proper indexes for dashboard/monitoring queries\n */\nexport const JobExecutionSchema = z.object({\n /** Document ID — auto-generated. `.isPrimaryKey()` is what makes the PostgreSQL planner emit the\n * PRIMARY KEY constraint (MongoDB enforces `_id` uniqueness implicitly); without it this table\n * shipped constraint-less on PostgreSQL. */\n _id: z.string().isPrimaryKey(),\n\n // === Job Identity (exposed for queries) ===\n /** Unique job identifier */\n jobId: z.uuid().isUnique({ scope: 'global', sparse: false }),\n /**\n * The application RECORD id (`applications._id`) — the APPLICATION resource scope's key. Stamped by\n * the backend's job tracker from the canonical identity at the moment the wire payload becomes a\n * row, and the only id its recovery and evidence scans filter on. Never copied from\n * `JobPayload.applicationId`, which is the platform's wire address and a different value.\n */\n applicationId: z.string().isDBIndexed(),\n\n // === What Was Executed (exposed for filtering) ===\n /** Type of job */\n jobType: z.enum(JobTypeValues).isDBIndexed(),\n /** Operation path key for resource operations */\n operationPathKey: z.string().optional(),\n /** Batch reference for custom batches */\n batchRef: z.string().optional(),\n /** Domain category for domain jobs (email, agents, etc.) */\n domainCategory: z.string().isDBIndexed().optional(),\n\n // === Context (exposed for org/user filtering) ===\n /** Organization ID from execution context */\n organizationId: z.string().isDBIndexed().optional(),\n /** User ID from execution context */\n userId: z.string().isDBIndexed().optional(),\n /** How the job was initiated */\n initiatedBy: z.enum(JobInitiatorValues),\n\n // === Execution State (exposed for monitoring) ===\n /** Current status */\n status: z.enum(JobExecutionStatusValues).isDBIndexed(),\n /** Queue name where job was published */\n queueName: z.string().isDBIndexed(),\n /** Queue priority */\n priority: z.enum(JobPriorityValues),\n\n // === Retry Tracking (exposed for retry monitoring) ===\n /** Current retry attempt (0-indexed) */\n retryCount: z.number().int().min(0).default(0),\n /** Maximum retry attempts */\n maxRetries: z.number().int().min(0),\n /** When the last retry was attempted */\n lastRetryAt: z.date().optional(),\n\n // === Timing (exposed for performance monitoring) ===\n /**\n * When the job record was created. Cleanup is governed separately by expiresAt.\n *\n * `.default(() => new Date())` is REQUIRED, not decorative: this is a\n * system-managed timestamp that the create pipeline strips from the input\n * before validation (like every other `createdAt`). Without a default, the\n * create-DTO date-coercion (`z.date()` → `z.coerce.date()`) then coerces the\n * now-`undefined` value → `new Date(undefined)` = Invalid Date → the create\n * FATALs with `createdAt: expected date, received Date`. The default supplies\n * a valid Date when the field is absent, matching the canonical timestamp\n * pattern (`z.date().default(() => new Date())` on todos/tasks/etc.). The separate expiresAt field carries the cleanup deadline.\n */\n createdAt: z.date().default(() => new Date()),\n /** Ordinary history expires after 30 days; unfinished scheduled claims have no expiry. */\n expiresAt: z.date().ttl({ expireAfterSeconds: 0 }).optional(),\n /** Durable scheduled ownership and recovery contract. Legacy queue writers must not mutate these rows. */\n scheduledState: ScheduledExecutionStateSchema.isBackendOnly().optional(),\n minionName: z.string().optional(),\n /** When the job was published to queue */\n queuedAt: z.date().optional(),\n /** When worker started processing */\n startedAt: z.date().optional(),\n /** When execution completed (success or failure) */\n completedAt: z.date().isDBIndexed().optional(),\n /** Execution duration in milliseconds */\n durationMs: z.number().int().optional(),\n\n // === Payload References (backend-only, internal implementation) ===\n /** Reference to input payload storage */\n inputPayloadStorageId: z.uuid().isBackendOnly().optional(),\n /** Reference to output payload storage */\n outputPayloadStorageId: z.uuid().isBackendOnly().optional(),\n\n // === Error Info (exposed for error analysis) ===\n /** Error information if job failed (uses backend error schema with full error details) */\n error: WildoError_BackendSchema.optional(),\n\n // === Worker Info (backend-only, debugging only) ===\n /** Pod/worker ID that processed this job */\n workerId: z.string().isBackendOnly().optional(),\n /** Hostname of the worker (for debugging) */\n workerHostname: z.string().isBackendOnly().optional(),\n});\n\nexport type JobExecution = z.infer<typeof JobExecutionSchema>;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jobs.shared.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"jobs.shared.utils.d.ts","sourceRoot":"","sources":["../../../src/queue/jobs.shared.utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EACL,UAAU,EACV,SAAS,EACT,kBAAkB,EAGnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAwB,MAAM,yBAAyB,CAAC;AAMjF;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,uBAAuB,CAAC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,oFAAoF;IACpF,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,WAMlC,CAAC;AAEF;;GAEG;AACH,qBAAa,aAAa;IACxB;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,gBAAgB,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAmBtF;;;;;;;OAOG;IACH,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,WAAW,GAAG,gBAAgB,GAAG,MAAM;IAS3E;;;;;OAKG;IACH,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,gBAAgB,GAAG,MAAM;IAQ1E;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO;IAIvE;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;IAIrD;;;;;;;OAOG;IACH,MAAM,CAAC,sBAAsB,CAC3B,MAAM,EAAE,WAAW,GAAG,gBAAgB,EACtC,cAAc,EAAE,MAAM,EACtB,QAAQ,GAAE,IAAiB,GAC1B,IAAI;IAKP;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAU3C;;;;;OAKG;IACH,MAAM,CAAC,YAAY,CAAC,OAAO,GAAE,OAAO,CAAC,WAAW,CAAM,GAAG,WAAW;CASrE;AAMD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,oCAAoC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,eAAe;IAC1B;;;;;OAKG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IAM9C;;;;;;OAMG;IACH,MAAM,CAAC,gBAAgB,CACrB,OAAO,EAAE,OAAO,EAChB,SAAS,GAAE,MAAqC,GAC/C,OAAO;IAIV;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAChB,OAAO,EAAE,OAAO,EAChB,SAAS,GAAE,MAAqC,GAC/C,mBAAmB;IAUtB;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAUxC;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO;IAInD;;OAEG;IACH,MAAM,CAAC,oBAAoB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO;IAIrD;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO;IAI/C;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO;IAIzC;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO;IAI/C;;;;;OAKG;IACH,MAAM,CAAC,qBAAqB,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM;IASrD;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,UAAU,GAAG,CAAC,GAAG,SAAS;IAWlE;;;;;OAKG;IACH,MAAM,CAAC,uBAAuB,CAAC,YAAY,GAAE,MAAW,GAAG,IAAI;IAI/D;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,UAAU,GAAG;QAClC,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,OAAO,CAAC;QACtB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,KAAK,EAAE,OAAO,CAAC;QACf,WAAW,EAAE,OAAO,CAAC;KACtB;CAeF;AAMD;;GAEG;AACH,qBAAa,cAAc;IACzB;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,GAAG,OAAO;IAalE;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,GAAG,OAAO;IAIjE;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,GAAG,OAAO;IASjE;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,GAAG,OAAO;IAapE;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,GAAG,OAAO;IAIlE;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,GAAG,OAAO;IAInE;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,GAAG,OAAO;IAIpE;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,GAAG,MAAM;IA+BrE;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,SAAS,GAAG,kBAAkB,GAAG,CAAC,SAAS,GAAG,kBAAkB,CAAC,EAAE;IA8B7G;;OAEG;IACH,MAAM,CAAC,iBAAiB,CACtB,UAAU,EAAE,SAAS,GAAG,kBAAkB,EAC1C,QAAQ,EAAE,SAAS,GAAG,kBAAkB,GACvC,OAAO;CAIX"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jobs.shared.utils.js","sourceRoot":"","sources":["../../../../src/queue/jobs.shared.utils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Jobs Shared Utilities\n * \n * All job-related utility classes consolidated in a single file.\n * Includes: retry calculations, payload management, and status utilities.\n */\n\nimport { RetryPolicy_BackoffType } from '../errors/errors.shared.schemas';\nimport {\n JobPayload,\n JobStatus,\n JobExecutionStatus,\n JobPriority,\n PAYLOAD_SIZE_THRESHOLD_BYTES,\n} from './jobs.shared.schemas';\nimport { QueueRetryConfig, QUEUE_RETRY_DEFAULTS } from './queues.shared.schemas';\n\n// ============================================================================\n// JOB RETRY UTILITIES\n// ============================================================================\n\n/**\n * Retry configuration interface (for standalone usage without schema import).\n */\nexport interface RetryConfig {\n retryPolicy: RetryPolicy_BackoffType;\n maxRetries: number;\n baseDelayMs: number;\n maxDelayMs: number;\n /** Duration-estimate input; does not cap execution or affect backoff scheduling. */\n timeoutMs: number;\n}\n\n/**\n * Default retry configuration values.\n * Matches existing patterns from remote-client-base.backend.service.ts.\n */\nexport const DEFAULT_RETRY_CONFIG: RetryConfig = {\n retryPolicy: RetryPolicy_BackoffType.EXPONENTIAL,\n maxRetries: 3,\n baseDelayMs: 1000,\n maxDelayMs: 60000,\n timeoutMs: 300000,\n};\n\n/**\n * Utilities for job retry calculations.\n */\nexport class JobRetryUtils {\n /**\n * Calculate retry delay based on policy and attempt number.\n * \n * Delay calculation (matches existing pattern from remote-client-base):\n * - FIXED: baseDelayMs\n * - LINEAR: baseDelayMs * (attempt + 1)\n * - EXPONENTIAL: baseDelayMs * 2^attempt\n * \n * @param config - Retry configuration (RetryConfig or QueueRetryConfig)\n * @param attempt - Current retry attempt (0-indexed)\n * @returns Delay in milliseconds (capped at maxDelayMs)\n * \n * @example\n * JobRetryUtils.calculateDelay(DEFAULT_RETRY_CONFIG, 0) // => 1000 (1s)\n * JobRetryUtils.calculateDelay(DEFAULT_RETRY_CONFIG, 1) // => 2000 (2s)\n * JobRetryUtils.calculateDelay(DEFAULT_RETRY_CONFIG, 2) // => 4000 (4s)\n */\n static calculateDelay(config: RetryConfig | QueueRetryConfig, attempt: number): number {\n let delay: number;\n \n switch (config.retryPolicy) {\n case RetryPolicy_BackoffType.FIXED:\n delay = config.baseDelayMs;\n break;\n case RetryPolicy_BackoffType.LINEAR:\n delay = config.baseDelayMs * (attempt + 1);\n break;\n case RetryPolicy_BackoffType.EXPONENTIAL:\n default:\n delay = config.baseDelayMs * Math.pow(2, attempt);\n break;\n }\n \n return Math.min(delay, config.maxDelayMs);\n }\n\n /**\n * Estimate retry duration assuming each retry takes exactly config.timeoutMs.\n * This excludes the initial attempt and broker waiting time. Execution is not capped\n * by timeoutMs, so this legacy-named helper is not a maximum or an SLA guarantee.\n * \n * @param config - Retry configuration\n * @returns Estimated retry duration in milliseconds under the stated assumption\n */\n static calculateMaxDuration(config: RetryConfig | QueueRetryConfig): number {\n let totalDelay = 0;\n for (let i = 0; i < config.maxRetries; i++) {\n totalDelay += this.calculateDelay(config, i);\n totalDelay += config.timeoutMs;\n }\n return totalDelay;\n }\n\n /**\n * Calculate total backoff delay for all retries, excluding execution time.\n * \n * @param config - Retry configuration\n * @returns Total delay for all retries in milliseconds\n */\n static calculateTotalDelay(config: RetryConfig | QueueRetryConfig): number {\n let totalDelay = 0;\n for (let i = 0; i < config.maxRetries; i++) {\n totalDelay += this.calculateDelay(config, i);\n }\n return totalDelay;\n }\n\n /**\n * Check if a job should be retried based on current attempt count.\n * \n * @param currentAttempt - Current retry attempt (0-indexed)\n * @param maxRetries - Maximum retry attempts allowed\n * @returns True if the job should be retried\n */\n static shouldRetry(currentAttempt: number, maxRetries: number): boolean {\n return currentAttempt < maxRetries;\n }\n\n /**\n * Get the next retry attempt number.\n * \n * @param currentAttempt - Current retry attempt (0-indexed)\n * @returns Next retry attempt number\n */\n static getNextAttempt(currentAttempt: number): number {\n return currentAttempt + 1;\n }\n\n /**\n * Calculate scheduled time for next retry.\n * \n * @param config - Retry configuration\n * @param currentAttempt - Current retry attempt (0-indexed)\n * @param baseTime - Base time (defaults to now)\n * @returns Date when the retry should be executed\n */\n static calculateNextRetryTime(\n config: RetryConfig | QueueRetryConfig,\n currentAttempt: number,\n baseTime: Date = new Date()\n ): Date {\n const delay = this.calculateDelay(config, currentAttempt);\n return new Date(baseTime.getTime() + delay);\n }\n\n /**\n * Format retry delay as human-readable string.\n * \n * @param delayMs - Delay in milliseconds\n * @returns Human-readable string (e.g., \"1s\", \"30s\", \"1m\", \"5m\")\n */\n static formatDelay(delayMs: number): string {\n if (delayMs < 60000) {\n return `${Math.round(delayMs / 1000)}s`;\n } else if (delayMs < 3600000) {\n return `${Math.round(delayMs / 60000)}m`;\n } else {\n return `${Math.round(delayMs / 3600000)}h`;\n }\n }\n\n /**\n * Get retry configuration with defaults applied.\n * \n * @param partial - Partial retry configuration\n * @returns Complete retry configuration with defaults\n */\n static withDefaults(partial: Partial<RetryConfig> = {}): RetryConfig {\n return {\n retryPolicy: partial.retryPolicy ?? DEFAULT_RETRY_CONFIG.retryPolicy,\n maxRetries: partial.maxRetries ?? DEFAULT_RETRY_CONFIG.maxRetries,\n baseDelayMs: partial.baseDelayMs ?? DEFAULT_RETRY_CONFIG.baseDelayMs,\n maxDelayMs: partial.maxDelayMs ?? DEFAULT_RETRY_CONFIG.maxDelayMs,\n timeoutMs: partial.timeoutMs ?? DEFAULT_RETRY_CONFIG.timeoutMs,\n };\n }\n}\n\n// ============================================================================\n// JOB PAYLOAD UTILITIES\n// ============================================================================\n\n/**\n * Result of payload size analysis.\n */\nexport interface PayloadSizeAnalysis {\n /** Size of the payload in bytes */\n sizeBytes: number;\n /** Whether the payload exceeds the threshold */\n exceedsThreshold: boolean;\n /** Size as human-readable string */\n sizeFormatted: string;\n /** Threshold as human-readable string */\n thresholdFormatted: string;\n}\n\n/**\n * Utilities for job payload operations.\n */\nexport class JobPayloadUtils {\n /**\n * Calculate the size of a payload in bytes.\n * \n * @param payload - Payload to measure (will be JSON stringified if not a string)\n * @returns Size in bytes\n */\n static calculateSize(payload: unknown): number {\n const json = typeof payload === 'string' ? payload : JSON.stringify(payload);\n // Use TextEncoder for cross-platform byte length calculation (works in both Node.js and browser)\n return new TextEncoder().encode(json).length;\n }\n\n /**\n * Check if a payload exceeds the size threshold.\n * \n * @param payload - Payload to check\n * @param threshold - Size threshold in bytes (defaults to PAYLOAD_SIZE_THRESHOLD_BYTES)\n * @returns True if the payload exceeds the threshold\n */\n static exceedsThreshold(\n payload: unknown,\n threshold: number = PAYLOAD_SIZE_THRESHOLD_BYTES\n ): boolean {\n return this.calculateSize(payload) >= threshold;\n }\n\n /**\n * Analyze payload size and provide detailed information.\n * \n * @param payload - Payload to analyze\n * @param threshold - Size threshold in bytes\n * @returns Detailed size analysis\n */\n static analyzeSize(\n payload: unknown,\n threshold: number = PAYLOAD_SIZE_THRESHOLD_BYTES\n ): PayloadSizeAnalysis {\n const sizeBytes = this.calculateSize(payload);\n return {\n sizeBytes,\n exceedsThreshold: sizeBytes >= threshold,\n sizeFormatted: this.formatSize(sizeBytes),\n thresholdFormatted: this.formatSize(threshold),\n };\n }\n\n /**\n * Format size in bytes as human-readable string.\n * \n * @param bytes - Size in bytes\n * @returns Human-readable size string\n */\n static formatSize(bytes: number): string {\n if (bytes < 1024) {\n return `${bytes} B`;\n } else if (bytes < 1024 * 1024) {\n return `${(bytes / 1024).toFixed(1)} KB`;\n } else {\n return `${(bytes / (1024 * 1024)).toFixed(2)} MB`;\n }\n }\n\n /**\n * Check if a job payload has inline input data.\n */\n static hasInlineInputData(job: JobPayload): boolean {\n return job.inputDataJson !== undefined && job.inputDataJson !== null;\n }\n\n /**\n * Check if a job payload has external storage reference.\n */\n static hasExternalInputData(job: JobPayload): boolean {\n return job.inputPayloadStorageId !== undefined && job.inputPayloadStorageId !== null;\n }\n\n /**\n * Check if a job is a high priority job.\n */\n static isHighPriority(job: JobPayload): boolean {\n return job.priority === JobPriority.HIGH || job.priority === JobPriority.CRITICAL;\n }\n\n /**\n * Check if a job is an RPC job (expects reply).\n */\n static isRpcJob(job: JobPayload): boolean {\n return job.rpcReplyCorrelationId !== undefined && job.replyTo !== undefined;\n }\n\n /**\n * Check if a job is a scheduled job.\n */\n static isScheduledJob(job: JobPayload): boolean {\n return job.scheduledAt !== undefined && job.scheduledAt > new Date();\n }\n\n /**\n * Get time until job should be executed (for scheduled jobs).\n * \n * @param job - Job payload to check\n * @returns Milliseconds until execution, 0 if should execute now, -1 if not scheduled\n */\n static getTimeUntilExecution(job: JobPayload): number {\n if (!job.scheduledAt) {\n return -1;\n }\n const now = new Date().getTime();\n const scheduled = new Date(job.scheduledAt).getTime();\n return Math.max(0, scheduled - now);\n }\n\n /**\n * Parse inline input data from job payload.\n * \n * @param job - Job payload\n * @returns Parsed input data or undefined\n */\n static parseInputData<T = unknown>(job: JobPayload): T | undefined {\n if (!job.inputDataJson) {\n return undefined;\n }\n try {\n return JSON.parse(job.inputDataJson) as T;\n } catch {\n return undefined;\n }\n }\n\n /**\n * Calculate expiration time for stored payloads.\n * \n * @param hoursFromNow - Hours until expiration (default: 24)\n * @returns Date when payload should expire\n */\n static calculateExpirationTime(hoursFromNow: number = 24): Date {\n return new Date(Date.now() + hoursFromNow * 60 * 60 * 1000);\n }\n\n /**\n * Generate a summary of job payload for logging.\n * \n * @param job - Job payload to summarize\n * @returns Summary object suitable for logging\n */\n static getSummary(job: JobPayload): {\n jobId: string;\n jobType: string;\n priority: string;\n hasInputData: boolean;\n inputDataSize?: string;\n isRpc: boolean;\n isScheduled: boolean;\n } {\n const inputDataSize = job.inputDataJson \n ? this.formatSize(this.calculateSize(job.inputDataJson))\n : undefined;\n\n return {\n jobId: job.jobId,\n jobType: job.jobType,\n priority: job.priority,\n hasInputData: this.hasInlineInputData(job) || this.hasExternalInputData(job),\n inputDataSize,\n isRpc: this.isRpcJob(job),\n isScheduled: this.isScheduledJob(job),\n };\n }\n}\n\n// ============================================================================\n// JOB STATUS UTILITIES\n// ============================================================================\n\n/**\n * Utilities for job status operations.\n */\nexport class JobStatusUtils {\n /**\n * Check if a job status indicates the job is complete (success or failure).\n * \n * @param status - Job status to check\n * @returns True if job is in a terminal state\n */\n static isTerminal(status: JobStatus | JobExecutionStatus): boolean {\n return [\n JobStatus.COMPLETED,\n JobStatus.FAILED,\n JobStatus.DEAD_LETTER,\n JobStatus.CANCELLED,\n JobExecutionStatus.COMPLETED,\n JobExecutionStatus.FAILED,\n JobExecutionStatus.DEAD_LETTER,\n JobExecutionStatus.CANCELLED,\n ].includes(status as JobStatus);\n }\n\n /**\n * Check if a job status indicates success.\n */\n static isSuccess(status: JobStatus | JobExecutionStatus): boolean {\n return status === JobStatus.COMPLETED || status === JobExecutionStatus.COMPLETED;\n }\n\n /**\n * Check if a job status indicates failure.\n */\n static isFailure(status: JobStatus | JobExecutionStatus): boolean {\n return [\n JobStatus.FAILED,\n JobStatus.DEAD_LETTER,\n JobExecutionStatus.FAILED,\n JobExecutionStatus.DEAD_LETTER,\n ].includes(status as JobStatus);\n }\n\n /**\n * Check if a job is still in progress.\n */\n static isInProgress(status: JobStatus | JobExecutionStatus): boolean {\n return [\n JobStatus.PENDING,\n JobStatus.QUEUED,\n JobStatus.PROCESSING,\n JobStatus.RETRYING,\n JobExecutionStatus.PENDING,\n JobExecutionStatus.QUEUED,\n JobExecutionStatus.PROCESSING,\n JobExecutionStatus.RETRYING,\n ].includes(status as JobStatus);\n }\n\n /**\n * Check if a job is retrying.\n */\n static isRetrying(status: JobStatus | JobExecutionStatus): boolean {\n return status === JobStatus.RETRYING || status === JobExecutionStatus.RETRYING;\n }\n\n /**\n * Check if a job was cancelled.\n */\n static isCancelled(status: JobStatus | JobExecutionStatus): boolean {\n return status === JobStatus.CANCELLED || status === JobExecutionStatus.CANCELLED;\n }\n\n /**\n * Check if a job ended up in dead letter queue.\n */\n static isDeadLetter(status: JobStatus | JobExecutionStatus): boolean {\n return status === JobStatus.DEAD_LETTER || status === JobExecutionStatus.DEAD_LETTER;\n }\n\n /**\n * Get human-readable description of a status.\n */\n static getDescription(status: JobStatus | JobExecutionStatus): string {\n switch (status) {\n case JobStatus.PENDING:\n case JobExecutionStatus.PENDING:\n return 'Job is pending, not yet queued';\n case JobStatus.QUEUED:\n case JobExecutionStatus.QUEUED:\n return 'Job is queued, waiting for worker';\n case JobStatus.PROCESSING:\n case JobExecutionStatus.PROCESSING:\n return 'Job is being processed by a worker';\n case JobStatus.COMPLETED:\n case JobExecutionStatus.COMPLETED:\n return 'Job completed successfully';\n case JobStatus.FAILED:\n case JobExecutionStatus.FAILED:\n return 'Job failed after all retry attempts';\n case JobStatus.RETRYING:\n case JobExecutionStatus.RETRYING:\n return 'Job failed but will be retried';\n case JobStatus.DEAD_LETTER:\n case JobExecutionStatus.DEAD_LETTER:\n return 'Job moved to dead letter queue';\n case JobStatus.CANCELLED:\n case JobExecutionStatus.CANCELLED:\n return 'Job was cancelled';\n default:\n return 'Unknown status';\n }\n }\n\n /**\n * Get the valid next statuses from a given status.\n */\n static getValidTransitions(currentStatus: JobStatus | JobExecutionStatus): (JobStatus | JobExecutionStatus)[] {\n switch (currentStatus) {\n case JobStatus.PENDING:\n case JobExecutionStatus.PENDING:\n return [JobStatus.QUEUED, JobStatus.CANCELLED];\n case JobStatus.QUEUED:\n case JobExecutionStatus.QUEUED:\n return [JobStatus.PROCESSING, JobStatus.CANCELLED];\n case JobStatus.PROCESSING:\n case JobExecutionStatus.PROCESSING:\n return [JobStatus.COMPLETED, JobStatus.FAILED, JobStatus.RETRYING, JobStatus.CANCELLED];\n case JobStatus.RETRYING:\n case JobExecutionStatus.RETRYING:\n return [JobStatus.QUEUED, JobStatus.FAILED, JobStatus.DEAD_LETTER, JobStatus.CANCELLED];\n case JobStatus.FAILED:\n case JobExecutionStatus.FAILED:\n return [JobStatus.DEAD_LETTER];\n // Terminal states have no valid transitions\n case JobStatus.COMPLETED:\n case JobStatus.DEAD_LETTER:\n case JobStatus.CANCELLED:\n case JobExecutionStatus.COMPLETED:\n case JobExecutionStatus.DEAD_LETTER:\n case JobExecutionStatus.CANCELLED:\n return [];\n default:\n return [];\n }\n }\n\n /**\n * Check if a status transition is valid.\n */\n static isValidTransition(\n fromStatus: JobStatus | JobExecutionStatus,\n toStatus: JobStatus | JobExecutionStatus\n ): boolean {\n const validNext = this.getValidTransitions(fromStatus);\n return validNext.includes(toStatus);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"jobs.shared.utils.js","sourceRoot":"","sources":["../../../src/queue/jobs.shared.utils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Jobs Shared Utilities\n * \n * All job-related utility classes consolidated in a single file.\n * Includes: retry calculations, payload management, and status utilities.\n */\n\nimport { RetryPolicy_BackoffType } from '../errors/errors.shared.schemas';\nimport {\n JobPayload,\n JobStatus,\n JobExecutionStatus,\n JobPriority,\n PAYLOAD_SIZE_THRESHOLD_BYTES,\n} from './jobs.shared.schemas';\nimport { QueueRetryConfig, QUEUE_RETRY_DEFAULTS } from './queues.shared.schemas';\n\n// ============================================================================\n// JOB RETRY UTILITIES\n// ============================================================================\n\n/**\n * Retry configuration interface (for standalone usage without schema import).\n */\nexport interface RetryConfig {\n retryPolicy: RetryPolicy_BackoffType;\n maxRetries: number;\n baseDelayMs: number;\n maxDelayMs: number;\n /** Duration-estimate input; does not cap execution or affect backoff scheduling. */\n timeoutMs: number;\n}\n\n/**\n * Default retry configuration values.\n * Matches existing patterns from remote-client-base.backend.service.ts.\n */\nexport const DEFAULT_RETRY_CONFIG: RetryConfig = {\n retryPolicy: RetryPolicy_BackoffType.EXPONENTIAL,\n maxRetries: 3,\n baseDelayMs: 1000,\n maxDelayMs: 60000,\n timeoutMs: 300000,\n};\n\n/**\n * Utilities for job retry calculations.\n */\nexport class JobRetryUtils {\n /**\n * Calculate retry delay based on policy and attempt number.\n * \n * Delay calculation (matches existing pattern from remote-client-base):\n * - FIXED: baseDelayMs\n * - LINEAR: baseDelayMs * (attempt + 1)\n * - EXPONENTIAL: baseDelayMs * 2^attempt\n * \n * @param config - Retry configuration (RetryConfig or QueueRetryConfig)\n * @param attempt - Current retry attempt (0-indexed)\n * @returns Delay in milliseconds (capped at maxDelayMs)\n * \n * @example\n * JobRetryUtils.calculateDelay(DEFAULT_RETRY_CONFIG, 0) // => 1000 (1s)\n * JobRetryUtils.calculateDelay(DEFAULT_RETRY_CONFIG, 1) // => 2000 (2s)\n * JobRetryUtils.calculateDelay(DEFAULT_RETRY_CONFIG, 2) // => 4000 (4s)\n */\n static calculateDelay(config: RetryConfig | QueueRetryConfig, attempt: number): number {\n let delay: number;\n \n switch (config.retryPolicy) {\n case RetryPolicy_BackoffType.FIXED:\n delay = config.baseDelayMs;\n break;\n case RetryPolicy_BackoffType.LINEAR:\n delay = config.baseDelayMs * (attempt + 1);\n break;\n case RetryPolicy_BackoffType.EXPONENTIAL:\n default:\n delay = config.baseDelayMs * Math.pow(2, attempt);\n break;\n }\n \n return Math.min(delay, config.maxDelayMs);\n }\n\n /**\n * Estimate retry duration assuming each retry takes exactly config.timeoutMs.\n * This excludes the initial attempt and broker waiting time. Execution is not capped\n * by timeoutMs, so this legacy-named helper is not a maximum or an SLA guarantee.\n * \n * @param config - Retry configuration\n * @returns Estimated retry duration in milliseconds under the stated assumption\n */\n static calculateMaxDuration(config: RetryConfig | QueueRetryConfig): number {\n let totalDelay = 0;\n for (let i = 0; i < config.maxRetries; i++) {\n totalDelay += this.calculateDelay(config, i);\n totalDelay += config.timeoutMs;\n }\n return totalDelay;\n }\n\n /**\n * Calculate total backoff delay for all retries, excluding execution time.\n * \n * @param config - Retry configuration\n * @returns Total delay for all retries in milliseconds\n */\n static calculateTotalDelay(config: RetryConfig | QueueRetryConfig): number {\n let totalDelay = 0;\n for (let i = 0; i < config.maxRetries; i++) {\n totalDelay += this.calculateDelay(config, i);\n }\n return totalDelay;\n }\n\n /**\n * Check if a job should be retried based on current attempt count.\n * \n * @param currentAttempt - Current retry attempt (0-indexed)\n * @param maxRetries - Maximum retry attempts allowed\n * @returns True if the job should be retried\n */\n static shouldRetry(currentAttempt: number, maxRetries: number): boolean {\n return currentAttempt < maxRetries;\n }\n\n /**\n * Get the next retry attempt number.\n * \n * @param currentAttempt - Current retry attempt (0-indexed)\n * @returns Next retry attempt number\n */\n static getNextAttempt(currentAttempt: number): number {\n return currentAttempt + 1;\n }\n\n /**\n * Calculate scheduled time for next retry.\n * \n * @param config - Retry configuration\n * @param currentAttempt - Current retry attempt (0-indexed)\n * @param baseTime - Base time (defaults to now)\n * @returns Date when the retry should be executed\n */\n static calculateNextRetryTime(\n config: RetryConfig | QueueRetryConfig,\n currentAttempt: number,\n baseTime: Date = new Date()\n ): Date {\n const delay = this.calculateDelay(config, currentAttempt);\n return new Date(baseTime.getTime() + delay);\n }\n\n /**\n * Format retry delay as human-readable string.\n * \n * @param delayMs - Delay in milliseconds\n * @returns Human-readable string (e.g., \"1s\", \"30s\", \"1m\", \"5m\")\n */\n static formatDelay(delayMs: number): string {\n if (delayMs < 60000) {\n return `${Math.round(delayMs / 1000)}s`;\n } else if (delayMs < 3600000) {\n return `${Math.round(delayMs / 60000)}m`;\n } else {\n return `${Math.round(delayMs / 3600000)}h`;\n }\n }\n\n /**\n * Get retry configuration with defaults applied.\n * \n * @param partial - Partial retry configuration\n * @returns Complete retry configuration with defaults\n */\n static withDefaults(partial: Partial<RetryConfig> = {}): RetryConfig {\n return {\n retryPolicy: partial.retryPolicy ?? DEFAULT_RETRY_CONFIG.retryPolicy,\n maxRetries: partial.maxRetries ?? DEFAULT_RETRY_CONFIG.maxRetries,\n baseDelayMs: partial.baseDelayMs ?? DEFAULT_RETRY_CONFIG.baseDelayMs,\n maxDelayMs: partial.maxDelayMs ?? DEFAULT_RETRY_CONFIG.maxDelayMs,\n timeoutMs: partial.timeoutMs ?? DEFAULT_RETRY_CONFIG.timeoutMs,\n };\n }\n}\n\n// ============================================================================\n// JOB PAYLOAD UTILITIES\n// ============================================================================\n\n/**\n * Result of payload size analysis.\n */\nexport interface PayloadSizeAnalysis {\n /** Size of the payload in bytes */\n sizeBytes: number;\n /** Whether the payload exceeds the threshold */\n exceedsThreshold: boolean;\n /** Size as human-readable string */\n sizeFormatted: string;\n /** Threshold as human-readable string */\n thresholdFormatted: string;\n}\n\n/**\n * Utilities for job payload operations.\n */\nexport class JobPayloadUtils {\n /**\n * Calculate the size of a payload in bytes.\n * \n * @param payload - Payload to measure (will be JSON stringified if not a string)\n * @returns Size in bytes\n */\n static calculateSize(payload: unknown): number {\n const json = typeof payload === 'string' ? payload : JSON.stringify(payload);\n // Use TextEncoder for cross-platform byte length calculation (works in both Node.js and browser)\n return new TextEncoder().encode(json).length;\n }\n\n /**\n * Check if a payload exceeds the size threshold.\n * \n * @param payload - Payload to check\n * @param threshold - Size threshold in bytes (defaults to PAYLOAD_SIZE_THRESHOLD_BYTES)\n * @returns True if the payload exceeds the threshold\n */\n static exceedsThreshold(\n payload: unknown,\n threshold: number = PAYLOAD_SIZE_THRESHOLD_BYTES\n ): boolean {\n return this.calculateSize(payload) >= threshold;\n }\n\n /**\n * Analyze payload size and provide detailed information.\n * \n * @param payload - Payload to analyze\n * @param threshold - Size threshold in bytes\n * @returns Detailed size analysis\n */\n static analyzeSize(\n payload: unknown,\n threshold: number = PAYLOAD_SIZE_THRESHOLD_BYTES\n ): PayloadSizeAnalysis {\n const sizeBytes = this.calculateSize(payload);\n return {\n sizeBytes,\n exceedsThreshold: sizeBytes >= threshold,\n sizeFormatted: this.formatSize(sizeBytes),\n thresholdFormatted: this.formatSize(threshold),\n };\n }\n\n /**\n * Format size in bytes as human-readable string.\n * \n * @param bytes - Size in bytes\n * @returns Human-readable size string\n */\n static formatSize(bytes: number): string {\n if (bytes < 1024) {\n return `${bytes} B`;\n } else if (bytes < 1024 * 1024) {\n return `${(bytes / 1024).toFixed(1)} KB`;\n } else {\n return `${(bytes / (1024 * 1024)).toFixed(2)} MB`;\n }\n }\n\n /**\n * Check if a job payload has inline input data.\n */\n static hasInlineInputData(job: JobPayload): boolean {\n return job.inputDataJson !== undefined && job.inputDataJson !== null;\n }\n\n /**\n * Check if a job payload has external storage reference.\n */\n static hasExternalInputData(job: JobPayload): boolean {\n return job.inputPayloadStorageId !== undefined && job.inputPayloadStorageId !== null;\n }\n\n /**\n * Check if a job is a high priority job.\n */\n static isHighPriority(job: JobPayload): boolean {\n return job.priority === JobPriority.HIGH || job.priority === JobPriority.CRITICAL;\n }\n\n /**\n * Check if a job is an RPC job (expects reply).\n */\n static isRpcJob(job: JobPayload): boolean {\n return job.rpcReplyCorrelationId !== undefined && job.replyTo !== undefined;\n }\n\n /**\n * Check if a job is a scheduled job.\n */\n static isScheduledJob(job: JobPayload): boolean {\n return job.scheduledAt !== undefined && job.scheduledAt > new Date();\n }\n\n /**\n * Get time until job should be executed (for scheduled jobs).\n * \n * @param job - Job payload to check\n * @returns Milliseconds until execution, 0 if should execute now, -1 if not scheduled\n */\n static getTimeUntilExecution(job: JobPayload): number {\n if (!job.scheduledAt) {\n return -1;\n }\n const now = new Date().getTime();\n const scheduled = new Date(job.scheduledAt).getTime();\n return Math.max(0, scheduled - now);\n }\n\n /**\n * Parse inline input data from job payload.\n * \n * @param job - Job payload\n * @returns Parsed input data or undefined\n */\n static parseInputData<T = unknown>(job: JobPayload): T | undefined {\n if (!job.inputDataJson) {\n return undefined;\n }\n try {\n return JSON.parse(job.inputDataJson) as T;\n } catch {\n return undefined;\n }\n }\n\n /**\n * Calculate expiration time for stored payloads.\n * \n * @param hoursFromNow - Hours until expiration (default: 24)\n * @returns Date when payload should expire\n */\n static calculateExpirationTime(hoursFromNow: number = 24): Date {\n return new Date(Date.now() + hoursFromNow * 60 * 60 * 1000);\n }\n\n /**\n * Generate a summary of job payload for logging.\n * \n * @param job - Job payload to summarize\n * @returns Summary object suitable for logging\n */\n static getSummary(job: JobPayload): {\n jobId: string;\n jobType: string;\n priority: string;\n hasInputData: boolean;\n inputDataSize?: string;\n isRpc: boolean;\n isScheduled: boolean;\n } {\n const inputDataSize = job.inputDataJson \n ? this.formatSize(this.calculateSize(job.inputDataJson))\n : undefined;\n\n return {\n jobId: job.jobId,\n jobType: job.jobType,\n priority: job.priority,\n hasInputData: this.hasInlineInputData(job) || this.hasExternalInputData(job),\n inputDataSize,\n isRpc: this.isRpcJob(job),\n isScheduled: this.isScheduledJob(job),\n };\n }\n}\n\n// ============================================================================\n// JOB STATUS UTILITIES\n// ============================================================================\n\n/**\n * Utilities for job status operations.\n */\nexport class JobStatusUtils {\n /**\n * Check if a job status indicates the job is complete (success or failure).\n * \n * @param status - Job status to check\n * @returns True if job is in a terminal state\n */\n static isTerminal(status: JobStatus | JobExecutionStatus): boolean {\n return [\n JobStatus.COMPLETED,\n JobStatus.FAILED,\n JobStatus.DEAD_LETTER,\n JobStatus.CANCELLED,\n JobExecutionStatus.COMPLETED,\n JobExecutionStatus.FAILED,\n JobExecutionStatus.DEAD_LETTER,\n JobExecutionStatus.CANCELLED,\n ].includes(status as JobStatus);\n }\n\n /**\n * Check if a job status indicates success.\n */\n static isSuccess(status: JobStatus | JobExecutionStatus): boolean {\n return status === JobStatus.COMPLETED || status === JobExecutionStatus.COMPLETED;\n }\n\n /**\n * Check if a job status indicates failure.\n */\n static isFailure(status: JobStatus | JobExecutionStatus): boolean {\n return [\n JobStatus.FAILED,\n JobStatus.DEAD_LETTER,\n JobExecutionStatus.FAILED,\n JobExecutionStatus.DEAD_LETTER,\n ].includes(status as JobStatus);\n }\n\n /**\n * Check if a job is still in progress.\n */\n static isInProgress(status: JobStatus | JobExecutionStatus): boolean {\n return [\n JobStatus.PENDING,\n JobStatus.QUEUED,\n JobStatus.PROCESSING,\n JobStatus.RETRYING,\n JobExecutionStatus.PENDING,\n JobExecutionStatus.QUEUED,\n JobExecutionStatus.PROCESSING,\n JobExecutionStatus.RETRYING,\n ].includes(status as JobStatus);\n }\n\n /**\n * Check if a job is retrying.\n */\n static isRetrying(status: JobStatus | JobExecutionStatus): boolean {\n return status === JobStatus.RETRYING || status === JobExecutionStatus.RETRYING;\n }\n\n /**\n * Check if a job was cancelled.\n */\n static isCancelled(status: JobStatus | JobExecutionStatus): boolean {\n return status === JobStatus.CANCELLED || status === JobExecutionStatus.CANCELLED;\n }\n\n /**\n * Check if a job ended up in dead letter queue.\n */\n static isDeadLetter(status: JobStatus | JobExecutionStatus): boolean {\n return status === JobStatus.DEAD_LETTER || status === JobExecutionStatus.DEAD_LETTER;\n }\n\n /**\n * Get human-readable description of a status.\n */\n static getDescription(status: JobStatus | JobExecutionStatus): string {\n switch (status) {\n case JobStatus.PENDING:\n case JobExecutionStatus.PENDING:\n return 'Job is pending, not yet queued';\n case JobStatus.QUEUED:\n case JobExecutionStatus.QUEUED:\n return 'Job is queued, waiting for worker';\n case JobStatus.PROCESSING:\n case JobExecutionStatus.PROCESSING:\n return 'Job is being processed by a worker';\n case JobStatus.COMPLETED:\n case JobExecutionStatus.COMPLETED:\n return 'Job completed successfully';\n case JobStatus.FAILED:\n case JobExecutionStatus.FAILED:\n return 'Job failed after all retry attempts';\n case JobStatus.RETRYING:\n case JobExecutionStatus.RETRYING:\n return 'Job failed but will be retried';\n case JobStatus.DEAD_LETTER:\n case JobExecutionStatus.DEAD_LETTER:\n return 'Job moved to dead letter queue';\n case JobStatus.CANCELLED:\n case JobExecutionStatus.CANCELLED:\n return 'Job was cancelled';\n default:\n return 'Unknown status';\n }\n }\n\n /**\n * Get the valid next statuses from a given status.\n */\n static getValidTransitions(currentStatus: JobStatus | JobExecutionStatus): (JobStatus | JobExecutionStatus)[] {\n switch (currentStatus) {\n case JobStatus.PENDING:\n case JobExecutionStatus.PENDING:\n return [JobStatus.QUEUED, JobStatus.CANCELLED];\n case JobStatus.QUEUED:\n case JobExecutionStatus.QUEUED:\n return [JobStatus.PROCESSING, JobStatus.CANCELLED];\n case JobStatus.PROCESSING:\n case JobExecutionStatus.PROCESSING:\n return [JobStatus.COMPLETED, JobStatus.FAILED, JobStatus.RETRYING, JobStatus.CANCELLED];\n case JobStatus.RETRYING:\n case JobExecutionStatus.RETRYING:\n return [JobStatus.QUEUED, JobStatus.FAILED, JobStatus.DEAD_LETTER, JobStatus.CANCELLED];\n case JobStatus.FAILED:\n case JobExecutionStatus.FAILED:\n return [JobStatus.DEAD_LETTER];\n // Terminal states have no valid transitions\n case JobStatus.COMPLETED:\n case JobStatus.DEAD_LETTER:\n case JobStatus.CANCELLED:\n case JobExecutionStatus.COMPLETED:\n case JobExecutionStatus.DEAD_LETTER:\n case JobExecutionStatus.CANCELLED:\n return [];\n default:\n return [];\n }\n }\n\n /**\n * Check if a status transition is valid.\n */\n static isValidTransition(\n fromStatus: JobStatus | JobExecutionStatus,\n toStatus: JobStatus | JobExecutionStatus\n ): boolean {\n const validNext = this.getValidTransitions(fromStatus);\n return validNext.includes(toStatus);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queues.shared.schemas.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"queues.shared.schemas.d.ts","sourceRoot":"","sources":["../../../src/queue/queues.shared.schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAiC,MAAM,uBAAuB,CAAC;AAMnF;;GAEG;AACH,oBAAY,iBAAiB;IAC3B,2EAA2E;IAC3E,MAAM,WAAW;IACjB,yFAAyF;IACzF,SAAS,cAAc;IACvB,2FAA2F;IAC3F,SAAS,cAAc;CACxB;AAED;;GAEG;AACH,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,OAAO,YAAY;CACpB;AAED;;GAEG;AACH,oBAAY,YAAY;IACtB,qDAAqD;IACrD,QAAQ,aAAa;IACrB,wCAAwC;IACxC,UAAU,eAAe;CAC1B;AAaD;;;;;;;;GAQG;AACH;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,uCAAuC;;;;;;;;;mBAmB9B,CAAC;AAEvB,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uCAAuC,CAAC,CAAC;AAExG,4GAA4G;AAC5G,MAAM,MAAM,yCAAyC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uCAAuC,CAAC,CAAC;AAChH,sEAAsE;AAEtE;;;GAGG;AACH,eAAO,MAAM,qBAAqB;;;;CAOxB,CAAC;AAMX;;;GAGG;AACH,eAAO,MAAM,sBAAsB;;;;;;iBAejC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,EAAE,gBAMlC,CAAC;AAMF;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;iBAKrC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;iBAwBpC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CA2BrE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAM,CAAC;AAE7E;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAKrF;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAE9E;AAMD;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;iBAmC7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;iBAepC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;iBAwBnC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queues.shared.schemas.js","sourceRoot":"","sources":["../../../../src/queue/queues.shared.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Queues Shared Schemas\n *\n * All queue-related enums, schemas, configuration, and types consolidated in a single file.\n * Includes: queue config, retry config, category registry, and monitoring schemas.\n */\n\nimport { z } from 'zod';\nimport { RetryPolicy_BackoffType } from '../errors/errors.shared.schemas';\nimport { JobPriority, QueueRetryBackoffConfigSchema } from './jobs.shared.schemas';\n\n// ============================================================================\n// ENUMS\n// ============================================================================\n\n/**\n * Consumer mode for queue categories.\n */\nexport enum QueueConsumerMode {\n /** Any worker in the pool consumes (general operations, scheduled jobs) */\n SHARED = 'shared',\n /** Dedicated consumer process/pod (email, agents, exports - different resource needs) */\n DEDICATED = 'dedicated',\n /** All pods consume, filter locally (callbacks - find the pod with matching callbackId) */\n BROADCAST = 'broadcast',\n}\n\n/**\n * Queue health status.\n */\nexport enum QueueHealthStatus {\n HEALTHY = 'healthy',\n DEGRADED = 'degraded',\n UNHEALTHY = 'unhealthy',\n UNKNOWN = 'unknown',\n}\n\n/**\n * Queue variant for queue name construction.\n */\nexport enum QueueVariant {\n /** Priority queue for high/critical priority jobs */\n PRIORITY = 'priority',\n /** Dead letter queue for failed jobs */\n DEADLETTER = 'deadletter',\n}\n\n// ============================================================================\n// ZOD ENUM VALUE EXTRACTION (for Zod 4)\n// ============================================================================\n\nconst QueueConsumerModeValues = Object.values(QueueConsumerMode) as [string, ...string[]];\nconst QueueHealthStatusValues = Object.values(QueueHealthStatus) as [string, ...string[]];\n\n// ============================================================================\n// QUEUE CONFIGURATION SCHEMA\n// ============================================================================\n\n/**\n * Queue-specific configuration for operations.\n * All fields are optional with sensible defaults.\n *\n * Operation policy controls routing and retry timing; actual errors carry their handling strategy.\n *\n * Authorization is NOT configured here - it is inherited automatically\n * from the operation's `roles` and `resourcePrimaryScope`.\n */\n/**\n * @wildo_source:part:start saas.models.resource-config.queue-policy facet:layer:shared facet:audience:app-developer\n *\n * Queue policy for an operation declared with createResourceConfiguration_Initialization\n * from @wildo-ai/saas-models. Set queueConfig beside serviceRuntimeMode, outside variants.\n * Omitted fields take the schema defaults. timeoutMs limits caller waiting, not execution.\n * Priority selects the initial queue lane; retries do not promise permanent priority ordering.\n * maxRetries limits additional attempts after an actual failure, not duplicate broker deliveries.\n *\n * @example\n * // Inside an operation configuration:\n * // serviceRuntimeMode: ResourceOperation_ServiceRuntimeMode.QUEUED,\n * // queueConfig: { timeoutMs: 30000, maxRetries: 0 },\n */\nexport const ResourceConfiguration_QueueConfigSchema = z.object({\n /** Priority for queue routing (HIGH/CRITICAL → priority queue) */\n priority: z.enum(JobPriority).default(JobPriority.NORMAL),\n\n /** Maximum retry attempts before dead-letter */\n maxRetries: z.number().int().min(0).default(3),\n\n /** Caller reply-wait deadline in milliseconds (default: 5 minutes). Does not cancel worker execution. */\n timeoutMs: z.number().int().min(1000).max(2147483647).default(300000),\n\n /**\n * Retry backoff timing (base delay, cap, curve). Controls how long a failed\n * job of this operation waits before each re-attempt. Optional — unset fields\n * fall back to `QUEUE_RETRY_DEFAULTS`. Honored by the queue worker via a\n * durable broker delay queue (see `QueueRetryBackoffConfig`). Distinct from\n * `maxRetries` (how many attempts) and `timeoutMs` (caller reply-wait deadline).\n */\n retryConfig: QueueRetryBackoffConfigSchema.optional(),\n\n}).strict().optional();\n\nexport type ResourceConfiguration_QueueConfig = z.infer<typeof ResourceConfiguration_QueueConfigSchema>;\n\n/** Application input accepts omitted defaulted fields; the resource factory validates and resolves them. */\nexport type ResourceConfiguration_QueueConfigAuthored = z.input<typeof ResourceConfiguration_QueueConfigSchema>;\n/** @wildo_source:part:end saas.models.resource-config.queue-policy */\n\n/**\n * Default values for queue configuration.\n * Used when queueConfig is not specified on an operation.\n */\nexport const QUEUE_CONFIG_DEFAULTS = {\n priority: 'normal',\n maxRetries: 3,\n timeoutMs: 300000, // 5 minutes\n // Retry backoff timing defaults (baseDelayMs / maxDelayMs / retryPolicy) live in\n // QUEUE_RETRY_DEFAULTS below — the single source of truth the enqueue path reads\n // per-field to resolve an operation's optional `queueConfig.retryConfig`.\n} as const;\n\n// ============================================================================\n// QUEUE RETRY CONFIGURATION SCHEMA\n// ============================================================================\n\n/**\n * Retry configuration for queue jobs.\n * Aligns with existing patterns from WildoError and remote-client-base.\n */\nexport const QueueRetryConfigSchema = z.object({\n /** Retry policy (matches WildoError pattern) */\n retryPolicy: z.enum(RetryPolicy_BackoffType).default(RetryPolicy_BackoffType.EXPONENTIAL),\n\n /** Maximum retry attempts */\n maxRetries: z.number().int().min(0).default(3),\n\n /** Base delay in ms (for first retry / base of exponential) */\n baseDelayMs: z.number().int().min(100).default(1000),\n\n /** Maximum delay cap (prevents infinite backoff) */\n maxDelayMs: z.number().int().min(1000).default(60000), // 1 minute cap\n\n /** Duration estimate input; retry scheduling does not enforce an execution deadline */\n timeoutMs: z.number().int().min(1000).default(300000), // 5 minutes\n});\n\nexport type QueueRetryConfig = z.infer<typeof QueueRetryConfigSchema>;\n\n/**\n * Default retry configuration values.\n * Matches existing patterns from remote-client-base.backend.service.ts:\n * - RETRY_DELAY = 1000\n * - RETRY_MAX_ATTEMPTS = 3\n * - TIMEOUT = 300000\n */\nexport const QUEUE_RETRY_DEFAULTS: QueueRetryConfig = {\n retryPolicy: RetryPolicy_BackoffType.EXPONENTIAL,\n maxRetries: 3,\n baseDelayMs: 1000,\n maxDelayMs: 60000,\n timeoutMs: 300000,\n};\n\n// ============================================================================\n// QUEUE CATEGORY CONFIGURATION SCHEMA\n// ============================================================================\n\n/**\n * Rate limit configuration for domain queues.\n */\nexport const QueueRateLimitConfigSchema = z.object({\n /** Maximum requests in window */\n max: z.number().int().min(1),\n /** Window duration in milliseconds */\n windowMs: z.number().int().min(1000),\n});\n\nexport type QueueRateLimitConfig = z.infer<typeof QueueRateLimitConfigSchema>;\n\n/**\n * Queue category configuration.\n */\nexport const QueueCategoryConfigSchema = z.object({\n /** Human-readable description */\n description: z.string(),\n\n /** How consumers should handle this queue */\n consumerMode: z.enum(QueueConsumerModeValues),\n\n /** Whether this queue has a dead-letter queue */\n hasDeadletter: z.boolean().default(true),\n\n /** Whether this queue has a priority variant */\n hasPriority: z.boolean().default(false),\n\n /** Whether messages require JWT signature verification (scheduled queue) */\n requiresSignature: z.boolean().default(false),\n\n /** Rate limit configuration (for domain queues) */\n rateLimit: QueueRateLimitConfigSchema.optional(),\n\n /** Maximum concurrent executions (for domain queues) */\n concurrency: z.number().int().min(1).optional(),\n\n /** Optional category metadata. Core queue execution does not enforce a deadline from this field. */\n timeoutMs: z.number().int().min(1000).optional(),\n});\n\nexport type QueueCategoryConfig = z.infer<typeof QueueCategoryConfigSchema>;\n\n/**\n * Core queue categories (always available).\n * Additional domains can be registered at app startup.\n */\nexport const CORE_QUEUE_CATEGORIES: Record<string, QueueCategoryConfig> = {\n /** QUEUED resource operations (API-triggered) */\n operations: {\n description: 'QUEUED resource operations from API',\n consumerMode: QueueConsumerMode.SHARED,\n hasDeadletter: true,\n hasPriority: true,\n requiresSignature: false,\n },\n\n /** Cron/batch jobs from crontabs-manager (JWT signed) */\n scheduled: {\n description: 'Cron/batch jobs from crontabs-manager',\n consumerMode: QueueConsumerMode.SHARED,\n hasDeadletter: true,\n hasPriority: false,\n requiresSignature: true, // JWT signed messages only\n },\n\n /** Internal callback distribution */\n callbacks: {\n description: 'Internal callback distribution',\n consumerMode: QueueConsumerMode.BROADCAST,\n hasDeadletter: false,\n hasPriority: false,\n requiresSignature: false,\n },\n};\n\n/**\n * Registry for custom queue categories (domain-specific).\n * Populated at application startup via registerQueueCategory().\n */\nexport const customQueueCategories: Record<string, QueueCategoryConfig> = {};\n\n/**\n * Register a custom queue category (typically domain-specific).\n * Category names are automatically prefixed with 'domain-'.\n *\n * @param name - Category name (e.g., 'email', 'agents')\n * @param config - Queue category configuration\n * @throws Error if attempting to override a core category\n *\n * @example\n * registerQueueCategory('email', {\n * description: 'Email sending operations',\n * consumerMode: QueueConsumerMode.DEDICATED,\n * hasDeadletter: true,\n * rateLimit: { max: 100, windowMs: 60000 },\n * concurrency: 5,\n * });\n */\nexport function registerQueueCategory(name: string, config: QueueCategoryConfig): void {\n if (CORE_QUEUE_CATEGORIES[name]) {\n throw new Error(`Cannot override core queue category: ${name}`);\n }\n customQueueCategories[`domain-${name}`] = config;\n}\n\n/**\n * Get a queue category by name.\n * Checks both core and custom categories.\n *\n * @param name - Category name\n * @returns Queue category configuration or undefined\n */\nexport function getQueueCategory(name: string): QueueCategoryConfig | undefined {\n return CORE_QUEUE_CATEGORIES[name] ?? customQueueCategories[name];\n}\n\n// ============================================================================\n// QUEUE MONITORING SCHEMAS\n// ============================================================================\n\n/**\n * Queue metrics for monitoring.\n */\nexport const QueueMetricsSchema = z.object({\n /** Queue name */\n queueName: z.string(),\n\n // === Queue Stats ===\n /** Messages waiting to be processed */\n pendingCount: z.number().int().min(0),\n /** Messages currently being processed */\n processingCount: z.number().int().min(0),\n /** Messages in dead letter queue */\n deadLetterCount: z.number().int().min(0),\n\n // === Rate Metrics (per minute) ===\n /** Messages published per minute */\n publishRatePerMinute: z.number().min(0),\n /** Messages consumed per minute */\n consumeRatePerMinute: z.number().min(0),\n\n // === Latency Metrics (milliseconds) ===\n /** Average processing time */\n avgProcessingTimeMs: z.number().min(0),\n /** 95th percentile processing time */\n p95ProcessingTimeMs: z.number().min(0),\n /** 99th percentile processing time */\n p99ProcessingTimeMs: z.number().min(0),\n\n // === Error Metrics ===\n /** Error rate (0-1) */\n errorRate: z.number().min(0).max(1),\n /** Retry rate (0-1) */\n retryRate: z.number().min(0).max(1),\n\n // === Timestamp ===\n /** When metrics were collected */\n collectedAt: z.date(),\n});\n\nexport type QueueMetrics = z.infer<typeof QueueMetricsSchema>;\n\n/**\n * Alert threshold configuration.\n */\nexport const QueueAlertThresholdSchema = z.object({\n /** Queue name or pattern to monitor */\n queuePattern: z.string(),\n\n /** Alert when dead letter count exceeds this value */\n deadLetterThreshold: z.number().int().min(0).optional(),\n\n /** Alert when processing latency exceeds this value (ms) */\n latencyThresholdMs: z.number().int().min(0).optional(),\n\n /** Alert when error rate exceeds this value (0-1) */\n errorRateThreshold: z.number().min(0).max(1).optional(),\n\n /** Alert when pending count exceeds this value */\n pendingCountThreshold: z.number().int().min(0).optional(),\n});\n\nexport type QueueAlertThreshold = z.infer<typeof QueueAlertThresholdSchema>;\n\n/**\n * Queue health summary.\n */\nexport const QueueHealthSummarySchema = z.object({\n /** Overall health status */\n status: z.enum(QueueHealthStatusValues),\n\n /** Number of healthy queues */\n healthyQueues: z.number().int().min(0),\n\n /** Number of degraded queues */\n degradedQueues: z.number().int().min(0),\n\n /** Number of unhealthy queues */\n unhealthyQueues: z.number().int().min(0),\n\n /** Active alerts */\n activeAlerts: z.array(z.object({\n queueName: z.string(),\n alertType: z.string(),\n value: z.number(),\n threshold: z.number(),\n triggeredAt: z.date(),\n })),\n\n /** When health was checked */\n checkedAt: z.date(),\n});\n\nexport type QueueHealthSummary = z.infer<typeof QueueHealthSummarySchema>;\n"]}
|
|
1
|
+
{"version":3,"file":"queues.shared.schemas.js","sourceRoot":"","sources":["../../../src/queue/queues.shared.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Queues Shared Schemas\n *\n * All queue-related enums, schemas, configuration, and types consolidated in a single file.\n * Includes: queue config, retry config, category registry, and monitoring schemas.\n */\n\nimport { z } from 'zod';\nimport { RetryPolicy_BackoffType } from '../errors/errors.shared.schemas';\nimport { JobPriority, QueueRetryBackoffConfigSchema } from './jobs.shared.schemas';\n\n// ============================================================================\n// ENUMS\n// ============================================================================\n\n/**\n * Consumer mode for queue categories.\n */\nexport enum QueueConsumerMode {\n /** Any worker in the pool consumes (general operations, scheduled jobs) */\n SHARED = 'shared',\n /** Dedicated consumer process/pod (email, agents, exports - different resource needs) */\n DEDICATED = 'dedicated',\n /** All pods consume, filter locally (callbacks - find the pod with matching callbackId) */\n BROADCAST = 'broadcast',\n}\n\n/**\n * Queue health status.\n */\nexport enum QueueHealthStatus {\n HEALTHY = 'healthy',\n DEGRADED = 'degraded',\n UNHEALTHY = 'unhealthy',\n UNKNOWN = 'unknown',\n}\n\n/**\n * Queue variant for queue name construction.\n */\nexport enum QueueVariant {\n /** Priority queue for high/critical priority jobs */\n PRIORITY = 'priority',\n /** Dead letter queue for failed jobs */\n DEADLETTER = 'deadletter',\n}\n\n// ============================================================================\n// ZOD ENUM VALUE EXTRACTION (for Zod 4)\n// ============================================================================\n\nconst QueueConsumerModeValues = Object.values(QueueConsumerMode) as [string, ...string[]];\nconst QueueHealthStatusValues = Object.values(QueueHealthStatus) as [string, ...string[]];\n\n// ============================================================================\n// QUEUE CONFIGURATION SCHEMA\n// ============================================================================\n\n/**\n * Queue-specific configuration for operations.\n * All fields are optional with sensible defaults.\n *\n * Operation policy controls routing and retry timing; actual errors carry their handling strategy.\n *\n * Authorization is NOT configured here - it is inherited automatically\n * from the operation's `roles` and `resourcePrimaryScope`.\n */\n/**\n * @wildo_source:part:start saas.models.resource-config.queue-policy facet:layer:shared facet:audience:app-developer\n *\n * Queue policy for an operation declared with createResourceConfiguration_Initialization\n * from @wildo-ai/saas-models. Set queueConfig beside serviceRuntimeMode, outside variants.\n * Omitted fields take the schema defaults. timeoutMs limits caller waiting, not execution.\n * Priority selects the initial queue lane; retries do not promise permanent priority ordering.\n * maxRetries limits additional attempts after an actual failure, not duplicate broker deliveries.\n *\n * @example\n * // Inside an operation configuration:\n * // serviceRuntimeMode: ResourceOperation_ServiceRuntimeMode.QUEUED,\n * // queueConfig: { timeoutMs: 30000, maxRetries: 0 },\n */\nexport const ResourceConfiguration_QueueConfigSchema = z.object({\n /** Priority for queue routing (HIGH/CRITICAL → priority queue) */\n priority: z.enum(JobPriority).default(JobPriority.NORMAL),\n\n /** Maximum retry attempts before dead-letter */\n maxRetries: z.number().int().min(0).default(3),\n\n /** Caller reply-wait deadline in milliseconds (default: 5 minutes). Does not cancel worker execution. */\n timeoutMs: z.number().int().min(1000).max(2147483647).default(300000),\n\n /**\n * Retry backoff timing (base delay, cap, curve). Controls how long a failed\n * job of this operation waits before each re-attempt. Optional — unset fields\n * fall back to `QUEUE_RETRY_DEFAULTS`. Honored by the queue worker via a\n * durable broker delay queue (see `QueueRetryBackoffConfig`). Distinct from\n * `maxRetries` (how many attempts) and `timeoutMs` (caller reply-wait deadline).\n */\n retryConfig: QueueRetryBackoffConfigSchema.optional(),\n\n}).strict().optional();\n\nexport type ResourceConfiguration_QueueConfig = z.infer<typeof ResourceConfiguration_QueueConfigSchema>;\n\n/** Application input accepts omitted defaulted fields; the resource factory validates and resolves them. */\nexport type ResourceConfiguration_QueueConfigAuthored = z.input<typeof ResourceConfiguration_QueueConfigSchema>;\n/** @wildo_source:part:end saas.models.resource-config.queue-policy */\n\n/**\n * Default values for queue configuration.\n * Used when queueConfig is not specified on an operation.\n */\nexport const QUEUE_CONFIG_DEFAULTS = {\n priority: 'normal',\n maxRetries: 3,\n timeoutMs: 300000, // 5 minutes\n // Retry backoff timing defaults (baseDelayMs / maxDelayMs / retryPolicy) live in\n // QUEUE_RETRY_DEFAULTS below — the single source of truth the enqueue path reads\n // per-field to resolve an operation's optional `queueConfig.retryConfig`.\n} as const;\n\n// ============================================================================\n// QUEUE RETRY CONFIGURATION SCHEMA\n// ============================================================================\n\n/**\n * Retry configuration for queue jobs.\n * Aligns with existing patterns from WildoError and remote-client-base.\n */\nexport const QueueRetryConfigSchema = z.object({\n /** Retry policy (matches WildoError pattern) */\n retryPolicy: z.enum(RetryPolicy_BackoffType).default(RetryPolicy_BackoffType.EXPONENTIAL),\n\n /** Maximum retry attempts */\n maxRetries: z.number().int().min(0).default(3),\n\n /** Base delay in ms (for first retry / base of exponential) */\n baseDelayMs: z.number().int().min(100).default(1000),\n\n /** Maximum delay cap (prevents infinite backoff) */\n maxDelayMs: z.number().int().min(1000).default(60000), // 1 minute cap\n\n /** Duration estimate input; retry scheduling does not enforce an execution deadline */\n timeoutMs: z.number().int().min(1000).default(300000), // 5 minutes\n});\n\nexport type QueueRetryConfig = z.infer<typeof QueueRetryConfigSchema>;\n\n/**\n * Default retry configuration values.\n * Matches existing patterns from remote-client-base.backend.service.ts:\n * - RETRY_DELAY = 1000\n * - RETRY_MAX_ATTEMPTS = 3\n * - TIMEOUT = 300000\n */\nexport const QUEUE_RETRY_DEFAULTS: QueueRetryConfig = {\n retryPolicy: RetryPolicy_BackoffType.EXPONENTIAL,\n maxRetries: 3,\n baseDelayMs: 1000,\n maxDelayMs: 60000,\n timeoutMs: 300000,\n};\n\n// ============================================================================\n// QUEUE CATEGORY CONFIGURATION SCHEMA\n// ============================================================================\n\n/**\n * Rate limit configuration for domain queues.\n */\nexport const QueueRateLimitConfigSchema = z.object({\n /** Maximum requests in window */\n max: z.number().int().min(1),\n /** Window duration in milliseconds */\n windowMs: z.number().int().min(1000),\n});\n\nexport type QueueRateLimitConfig = z.infer<typeof QueueRateLimitConfigSchema>;\n\n/**\n * Queue category configuration.\n */\nexport const QueueCategoryConfigSchema = z.object({\n /** Human-readable description */\n description: z.string(),\n\n /** How consumers should handle this queue */\n consumerMode: z.enum(QueueConsumerModeValues),\n\n /** Whether this queue has a dead-letter queue */\n hasDeadletter: z.boolean().default(true),\n\n /** Whether this queue has a priority variant */\n hasPriority: z.boolean().default(false),\n\n /** Whether messages require JWT signature verification (scheduled queue) */\n requiresSignature: z.boolean().default(false),\n\n /** Rate limit configuration (for domain queues) */\n rateLimit: QueueRateLimitConfigSchema.optional(),\n\n /** Maximum concurrent executions (for domain queues) */\n concurrency: z.number().int().min(1).optional(),\n\n /** Optional category metadata. Core queue execution does not enforce a deadline from this field. */\n timeoutMs: z.number().int().min(1000).optional(),\n});\n\nexport type QueueCategoryConfig = z.infer<typeof QueueCategoryConfigSchema>;\n\n/**\n * Core queue categories (always available).\n * Additional domains can be registered at app startup.\n */\nexport const CORE_QUEUE_CATEGORIES: Record<string, QueueCategoryConfig> = {\n /** QUEUED resource operations (API-triggered) */\n operations: {\n description: 'QUEUED resource operations from API',\n consumerMode: QueueConsumerMode.SHARED,\n hasDeadletter: true,\n hasPriority: true,\n requiresSignature: false,\n },\n\n /** Cron/batch jobs from crontabs-manager (JWT signed) */\n scheduled: {\n description: 'Cron/batch jobs from crontabs-manager',\n consumerMode: QueueConsumerMode.SHARED,\n hasDeadletter: true,\n hasPriority: false,\n requiresSignature: true, // JWT signed messages only\n },\n\n /** Internal callback distribution */\n callbacks: {\n description: 'Internal callback distribution',\n consumerMode: QueueConsumerMode.BROADCAST,\n hasDeadletter: false,\n hasPriority: false,\n requiresSignature: false,\n },\n};\n\n/**\n * Registry for custom queue categories (domain-specific).\n * Populated at application startup via registerQueueCategory().\n */\nexport const customQueueCategories: Record<string, QueueCategoryConfig> = {};\n\n/**\n * Register a custom queue category (typically domain-specific).\n * Category names are automatically prefixed with 'domain-'.\n *\n * @param name - Category name (e.g., 'email', 'agents')\n * @param config - Queue category configuration\n * @throws Error if attempting to override a core category\n *\n * @example\n * registerQueueCategory('email', {\n * description: 'Email sending operations',\n * consumerMode: QueueConsumerMode.DEDICATED,\n * hasDeadletter: true,\n * rateLimit: { max: 100, windowMs: 60000 },\n * concurrency: 5,\n * });\n */\nexport function registerQueueCategory(name: string, config: QueueCategoryConfig): void {\n if (CORE_QUEUE_CATEGORIES[name]) {\n throw new Error(`Cannot override core queue category: ${name}`);\n }\n customQueueCategories[`domain-${name}`] = config;\n}\n\n/**\n * Get a queue category by name.\n * Checks both core and custom categories.\n *\n * @param name - Category name\n * @returns Queue category configuration or undefined\n */\nexport function getQueueCategory(name: string): QueueCategoryConfig | undefined {\n return CORE_QUEUE_CATEGORIES[name] ?? customQueueCategories[name];\n}\n\n// ============================================================================\n// QUEUE MONITORING SCHEMAS\n// ============================================================================\n\n/**\n * Queue metrics for monitoring.\n */\nexport const QueueMetricsSchema = z.object({\n /** Queue name */\n queueName: z.string(),\n\n // === Queue Stats ===\n /** Messages waiting to be processed */\n pendingCount: z.number().int().min(0),\n /** Messages currently being processed */\n processingCount: z.number().int().min(0),\n /** Messages in dead letter queue */\n deadLetterCount: z.number().int().min(0),\n\n // === Rate Metrics (per minute) ===\n /** Messages published per minute */\n publishRatePerMinute: z.number().min(0),\n /** Messages consumed per minute */\n consumeRatePerMinute: z.number().min(0),\n\n // === Latency Metrics (milliseconds) ===\n /** Average processing time */\n avgProcessingTimeMs: z.number().min(0),\n /** 95th percentile processing time */\n p95ProcessingTimeMs: z.number().min(0),\n /** 99th percentile processing time */\n p99ProcessingTimeMs: z.number().min(0),\n\n // === Error Metrics ===\n /** Error rate (0-1) */\n errorRate: z.number().min(0).max(1),\n /** Retry rate (0-1) */\n retryRate: z.number().min(0).max(1),\n\n // === Timestamp ===\n /** When metrics were collected */\n collectedAt: z.date(),\n});\n\nexport type QueueMetrics = z.infer<typeof QueueMetricsSchema>;\n\n/**\n * Alert threshold configuration.\n */\nexport const QueueAlertThresholdSchema = z.object({\n /** Queue name or pattern to monitor */\n queuePattern: z.string(),\n\n /** Alert when dead letter count exceeds this value */\n deadLetterThreshold: z.number().int().min(0).optional(),\n\n /** Alert when processing latency exceeds this value (ms) */\n latencyThresholdMs: z.number().int().min(0).optional(),\n\n /** Alert when error rate exceeds this value (0-1) */\n errorRateThreshold: z.number().min(0).max(1).optional(),\n\n /** Alert when pending count exceeds this value */\n pendingCountThreshold: z.number().int().min(0).optional(),\n});\n\nexport type QueueAlertThreshold = z.infer<typeof QueueAlertThresholdSchema>;\n\n/**\n * Queue health summary.\n */\nexport const QueueHealthSummarySchema = z.object({\n /** Overall health status */\n status: z.enum(QueueHealthStatusValues),\n\n /** Number of healthy queues */\n healthyQueues: z.number().int().min(0),\n\n /** Number of degraded queues */\n degradedQueues: z.number().int().min(0),\n\n /** Number of unhealthy queues */\n unhealthyQueues: z.number().int().min(0),\n\n /** Active alerts */\n activeAlerts: z.array(z.object({\n queueName: z.string(),\n alertType: z.string(),\n value: z.number(),\n threshold: z.number(),\n triggeredAt: z.date(),\n })),\n\n /** When health was checked */\n checkedAt: z.date(),\n});\n\nexport type QueueHealthSummary = z.infer<typeof QueueHealthSummarySchema>;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queues.shared.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"queues.shared.utils.d.ts","sourceRoot":"","sources":["../../../src/queue/queues.shared.utils.ts"],"names":[],"mappings":"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"}
|