@wildo-ai/saas-models 1.1.7 → 1.1.8
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.map +1 -1
- 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.map +1 -1
- package/dist/esm/applications/applications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.schemas.js.map +1 -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.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.map +1 -1
- package/dist/esm/billing/billing-configuration.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-configuration.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-enums.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-enums.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-types.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-types.shared.schemas.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/billing/credit-pool.shared.schemas.d.ts.map +1 -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.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.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.map +1 -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.map +1 -1
- package/dist/esm/billing/product-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product-definition.shared.schemas.js.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/billing/public-pricing-catalog.shared.atoms.js.map +1 -1
- package/dist/esm/billing/public-pricing-catalog.shared.d.ts.map +1 -1
- package/dist/esm/billing/public-pricing-catalog.shared.js.map +1 -1
- package/dist/esm/billing/referral-reward.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/referral-reward.shared.schemas.js.map +1 -1
- package/dist/esm/billing/referral.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/referral.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/referral.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/referral.shared.schemas.js.map +1 -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.map +1 -1
- package/dist/esm/billing/subscription.shared.schemas.d.ts.map +1 -1
- 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.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.map +1 -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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/compliance/privacy/legal-hold-subject-attribution.shared.utils.js.map +1 -1
- package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/legal-holds.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/legal-holds.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/legal-holds.shared.schemas.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/compliance/privacy/provider-capability-disclosure.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/purpose-ref.shared.schemas.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/compliance/privacy/retention-binding.shared.utils.js.map +1 -1
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/retention-enforcement-records.shared.schemas.js.map +1 -1
- package/dist/esm/compliance/privacy/retention-schedule.shared.schemas.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/compliance/privacy/retention-scope-deleted.shared.utils.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/compliance/privacy/subject-data-recipients.shared.schemas.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/config/entity-identity-config.shared.schemas.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/errors/caught-error-description.shared.utils.js.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/errors/errors.shared.schemas.js.map +1 -1
- package/dist/esm/errors/errors.shared.utils.d.ts.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/external-data/external-data-pipeline-description.shared.js.map +1 -1
- package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.d.ts.map +1 -1
- package/dist/esm/external-data/external-data-pipeline-pass-mode.shared.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/external-data/external-data-provenance.shared.d.ts.map +1 -1
- package/dist/esm/external-data/external-data-provenance.shared.js.map +1 -1
- package/dist/esm/external-data.exports.d.ts.map +1 -1
- 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.map +1 -1
- 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.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.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.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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/external-providers/model-cost-accounting-config.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-address-lookup-contract.shared.types.js.map +1 -1
- package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-augmentation-opt-ins.shared.schemas.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/external-providers/provider-package-allow-list.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-protocol.shared.schemas.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/external-providers/provider-scope-reauthorization.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/provider-shared-connections.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-shared-connections.shared.schemas.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/external-providers/provider-usage-cost.shared.js.map +1 -1
- package/dist/esm/external-providers/provider-usage-pricing.example.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-usage-pricing.example.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/features/connected-feature.example.d.ts.map +1 -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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/features/scope-features.shared.schemas.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/flows-actors/actors.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/flows-actors/agent-work-decisions.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/agent-work-decisions.shared.schemas.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/flows-actors/autonomous-agents.shared.schemas.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.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.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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/flows-actors/model-call-attributions.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/flows-actors/model-call-attributions.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/model-call-attributions.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/model-cost-period-aggregates.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/model-cost-summary.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/model-cost-summary.shared.schemas.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/flows-actors/review-deadlines.shared.schemas.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/flows-actors/work-attribution.shared.schemas.js.map +1 -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.map +1 -1
- package/dist/esm/frontend-definitions/settings-destination-ref.definitions.d.ts.map +1 -1
- 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.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.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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/http-api-binding/http-api-erasure-stance.shared.d.ts.map +1 -1
- package/dist/esm/http-api-binding/http-api-erasure-stance.shared.js.map +1 -1
- package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.d.ts.map +1 -1
- package/dist/esm/http-api-binding/http-api-rest-write-operations.shared.schemas.js.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/i18n/application-config-vocabulary.shared.js.map +1 -1
- package/dist/esm/i18n/engine-open-vocabulary-values.shared.d.ts.map +1 -1
- package/dist/esm/i18n/engine-open-vocabulary-values.shared.js.map +1 -1
- package/dist/esm/i18n/engine-open-vocabulary.shared.d.ts.map +1 -1
- package/dist/esm/i18n/engine-open-vocabulary.shared.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/inbound/conversation-threads.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/inbound/conversation-threads.shared.schemas.d.ts.map +1 -1
- package/dist/esm/inbound/conversation-threads.shared.schemas.js.map +1 -1
- package/dist/esm/inbound/inbound-channels.shared.schemas.d.ts.map +1 -1
- package/dist/esm/inbound/inbound-channels.shared.schemas.js.map +1 -1
- package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/inbound/inbound-delivery.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/inbound/inbound-delivery.shared.schemas.d.ts.map +1 -1
- package/dist/esm/inbound/inbound-delivery.shared.schemas.js.map +1 -1
- package/dist/esm/inbound/inbound-endpoint-env.shared.d.ts.map +1 -1
- package/dist/esm/inbound/inbound-endpoint-env.shared.js.map +1 -1
- package/dist/esm/index.d.ts.map +1 -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.map +1 -1
- 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.map +1 -1
- 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.map +1 -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.map +1 -1
- 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.map +1 -1
- package/dist/esm/notifications/inbound-email/inbound-email.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/inbound-email/inbound-email.shared.schemas.js.map +1 -1
- 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.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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.d.ts.map +1 -1
- 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.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.map +1 -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.map +1 -1
- 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.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.map +1 -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.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.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.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.map +1 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organizations.shared.schemas.d.ts.map +1 -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.map +1 -1
- package/dist/esm/organizations/service-provider-activity-feed.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/service-provider-activity-feed.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/service-provider-capability-grants.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/service-provider-capability-grants.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/service-provider-client-controls.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/service-provider-client-controls.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/service-provider-relationships.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/service-provider-relationships.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/service-provider-relationships.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/tenant-teardown-config.shared.schemas.js.map +1 -1
- package/dist/esm/provider-registration-runtime.exports.d.ts.map +1 -1
- package/dist/esm/provider-registration-runtime.exports.js.map +1 -1
- package/dist/esm/public-runtime/index.d.ts.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-urls.d.ts.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/resources/embedded-resource-mark.shared.utils.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/resources/resources-config.shared.schemas.d.ts.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/resources/resources.shared.core.definitions.js.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.utils.js.map +1 -1
- package/dist/esm/resources/utils/collection-export.shared.utils.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/resources/utils/http-api-write-declaration.shared.utils.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/resources/utils/no-subject-data-stance-coherence.shared.utils.js.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/resources/utils/request-schema-field-carriage.shared.utils.js.map +1 -1
- 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.map +1 -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.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.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/resources/work-unit.shared.schemas.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/service-provider-client-authentication.shared.schemas.js.map +1 -1
- 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.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.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.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.map +1 -1
- 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.map +1 -1
- 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.map +1 -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.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.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.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.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/security/connected-accounts/provider-connection-listing.shared.schemas.js.map +1 -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.map +1 -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.map +1 -1
- 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.map +1 -1
- package/dist/esm/security/credential-rotation-grace.shared.utils.d.ts.map +1 -1
- package/dist/esm/security/credential-rotation-grace.shared.utils.js.map +1 -1
- 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.map +1 -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.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/security/outbound-target-control.shared.schemas.js.map +1 -1
- package/dist/esm/security/submission-challenge/submission-challenge.shared.d.ts.map +1 -1
- package/dist/esm/security/submission-challenge/submission-challenge.shared.js.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.d.ts.map +1 -1
- package/dist/esm/systems-of-record/system-of-record-actions.shared.schemas.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- 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.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.map +1 -1
- 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.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.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.map +1 -1
- package/dist/esm/users/users.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/users.shared.schemas.js.map +1 -1
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/public-runtime/index.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @wildo_source:part:start saas.public-runtime.contract facet:layer:shared facet:family:bundle-boundary\n *\n * @wildo-package-subpath @wildo-ai/saas-models/public-runtime\n *\n * Browser-safe, decorator-framework-free atom subset of\n * `@wildo-ai/saas-models`.\n *\n * Why this subpath exists:\n * The package's root barrel (`./index.ts`) calls `initZodDecorators()` at\n * module load (line 3) and re-exports the entire decorator-framework-bound\n * schema graph (~150 schemas, transitively pulls\n * `@wildo-ai/external-connectors-models` + `@wildo-ai/zod-decorators` +\n * `reflect-metadata`). Browser bundles that need only a handful of stable\n * atoms (cross-frontend handoff DTOs, canonical HTTP header keys, locale\n * enums) should NOT pay that cost.\n *\n * This subpath exposes that minimal stable surface, sourced from\n * side-effect-free atom files (saas-models-public-runtime.md K-1 / K-2 /\n * K-4):\n *\n * - Cross-Frontend Handoff + Token Exchange DTO atoms\n * (`../security/authentications/cross-frontend-handoff.shared.dto.schemas`):\n * `CrossFrontendHandoffErrorCode`, `CrossFrontendHandoffRequestSchema`,\n * `CrossFrontendHandoffResponseSchema`, `TokenExchangeRequestSchema`,\n * `TokenExchangeResponseSchema`,\n * `CrossFrontendHandoffRequest`, `CrossFrontendHandoffResponse`,\n * `TokenExchangeRequest`, `TokenExchangeResponse`. The token-exchange\n * schemas were added\n * in cross-app-jwt-propagation.md Step 5 — every receiver of an\n * AUTH_CODE_EXCHANGE token (SaaS app, docs site) is by construction\n * a client-bundle target, so the response shape MUST live here too\n * (not just in the heavy backend schemas barrel).\n * - Frontend-kind enum\n * (`../config/app-frontend-type.shared.schemas`): `AppFrontendType`\n * — the SAAS_APP / STATIC_WEBSITE / TECH_DOC runtime taxonomy.\n * Consumed by website discovery, scaffolding, CSP config, and\n * companion services that need to introspect a service's runtime\n * kind without booting the full schema graph. The atom file's\n * file-level JSDoc is the canonical home for the kind-by-kind\n * rationale AND the locked \"no native variants\" design decision\n * — read that file before authoring any AppFrontendType-driven\n * conditional.\n * - Canonical HTTP header keys (`../requests/header-keys.shared`):\n * `WildoHeaderKeys` (already a zero-dep `as const` atom — re-exported\n * whole; per K-2 splitting it would itself violate DRY).\n * - Locale enums (re-exported transparently from\n * `@wildo-ai/presets-components-models/public-runtime`):\n * `AvailableLanguage`, `TextDirection`. Consumers see ONE import path\n * (`@wildo-ai/saas-models/public-runtime`) — the\n * `presets-components-models/public-runtime` subpath is an internal\n * seam (saas-models-public-runtime.md K-6).\n *\n * @wildo-boundary (saas-models-public-runtime.md K-3)\n * - This file and every file it transitively imports MUST NOT import from:\n * `@wildo-ai/zod-decorators`, `@wildo-ai/external-connectors-models`,\n * the `@wildo-ai/presets-components-models` ROOT barrel (only the\n * `/public-runtime` subpath of that package is allowed), `inversify`,\n * `reflect-metadata`, `mongoose`, `axios`, `express`, `socket.io`,\n * `pino`, `helmet`, `argon2`, `bcrypt`, `jsonwebtoken`.\n * - DO NOT import from this package's ROOT barrel (`../index`) — that\n * barrel runs `initZodDecorators()` and pulls the full schema tree.\n * - Allowed imports: `zod` (peer dep, browser-safe), files inside\n * `./public-runtime/`, the atom files extracted by Steps 1 + 2 of the\n * plan, and the\n * `@wildo-ai/presets-components-models/public-runtime` subpath.\n *\n * @wildo-bundle-budget\n * The output of this barrel + transitive imports MUST stay free of:\n * `initZodDecorators()` invocation, `reflect-metadata`, the full\n * `authentication.shared.dto.schemas.ts` web of types\n * (`UserContextSchema`, `SessionType`, `AuthMethod`, `AuthFactorLevel`,\n * `AuthSessionPurpose`, `AuthUtils`). The Step 5 vitest boundary test\n * snapshots `Object.getOwnPropertyNames(z.ZodType.prototype)` before and\n * after importing this module and asserts the prototype is unchanged\n * (proof that `initZodDecorators` did NOT run).\n *\n * @wildo-dry-contract\n * Every atom exposed here lives in EXACTLY one source file. The original\n * home (e.g. `authentication.shared.dto.schemas.ts`,\n * `localization/language.shared.schemas.ts`) re-exports from the same atom\n * so existing root-barrel consumers keep working unchanged. Adding a new\n * atom: split it out of its current heavy file FIRST (matching K-2\n * protocol), add a re-export at the original home, then add the import\n * here. NEVER duplicate a declaration into a `_public-runtime/` folder.\n */\n\nexport {\n CrossFrontendHandoffErrorCode,\n CrossFrontendHandoffRequestSchema,\n CrossFrontendHandoffResponseSchema,\n TokenExchangeRequestSchema,\n TokenExchangeResponseSchema,\n type CrossFrontendHandoffRequest,\n type CrossFrontendHandoffResponse,\n type TokenExchangeRequest,\n type TokenExchangeResponse,\n} from '../security/authentications/cross-frontend-handoff.shared.dto.schemas';\n\n/**\n * The single same-origin redirect predicate.\n *\n * On the bundle-safe seam because the two BROWSER receivers of a post-authentication redirect — the\n * SaaS app (`saas-frontend-lib`) and the docs site (`saas-technical-doc`) — are client-bundle targets\n * by construction, while the ISSUER-side schema in this package validates the same value on the\n * server. All three must reach one predicate or they drift; they already had, in the same direction,\n * across four hand-written copies. The source atom is import-free, so it adds nothing to the budget.\n */\nexport { isSameOriginRedirectPath } from '../security/authentications/same-origin-redirect-path.shared';\n\n/**\n * The caught-value describers, for code that must stay light.\n *\n * The backend provider loader is held to a measured module graph and imports only light doors; the\n * package root would take its import-time graph from 136 modules to 624 for one function (#1591). The\n * source atom imports nothing at runtime, so it adds nothing to the budget.\n */\nexport {\n describeCaughtError,\n describeCaughtErrorWithKind,\n} from '../errors/caught-error-description.shared.utils';\n\nexport { WildoHeaderKeys } from '../requests/header-keys.shared';\n\n/** The public submission challenge (#1735): answers a browser form encodes and solves. Imports nothing. */\nexport {\n ProofOfWorkAlgorithm,\n SUBMISSION_CHALLENGE_PROOF_OF_WORK_PATH,\n SUBMISSION_CHALLENGE_ACTION_PATTERN,\n SUBMISSION_CHALLENGE_RESPONSE_MAX_LENGTH,\n SubmissionChallengeAction,\n SubmissionChallengeRefusalCode,\n SubmissionChallengeResponseKind,\n encodeSubmissionChallengeResponse,\n hashProofOfWorkCandidate,\n isSubmissionChallengeActionName,\n solveProofOfWorkChallenge,\n type ProofOfWorkChallenge,\n type ResourceOperationSubmissionChallenge,\n type SubmissionChallengeResponse,\n} from '../security/submission-challenge/submission-challenge.shared';\n\n/**\n * Main API mount prefix (`/api/v1`) — the SINGLE SOURCE OF TRUTH for the path\n * under which the entire main controllers registry is served. Exposed on the\n * bundle-safe seam because browser-bound runtimes that call the SaaS backend\n * (e.g. the docs auth client's token-exchange / cross-frontend-handoff\n * requests) must prefix their request URLs with the SAME value the backend\n * mounts and the SaaS-app HTTP client uses. Deriving every consumer from one\n * symbol is what prevents the prefix-drift class — a mismatched prefix\n * silently breaks auth (see the refresh-cookie `Path` regression that\n * motivated the shared symbol). The source atom\n * (`../requests/manual-controllers-routes-urls`) imports only the import-free\n * submission-challenge atom (itself on this seam), so it adds nothing to the\n * decorator-free bundle budget.\n */\nexport { MAIN_API_BASE_PATH } from '../requests/manual-controllers-routes-urls';\n\n/**\n * A caught value as one readable line, for a bundle-isolated package (`saas-website`) — the rendering\n * `describeCaughtError` (above) delegates to for every value that is not the engine's own error. Both\n * atoms are import-free; one rendering, two doors (#1518's \"[object Object]\" fix, #1591).\n */\nexport { describeThrownValue } from '../errors/thrown-value-description.shared.utils';\n\nexport { AppFrontendType } from '../config/app-frontend-type.shared.schemas';\n\n/**\n * The public pricing catalogue (#1835): the plain, JSON-safe shape a website pricing island reads, with\n * the two pricing-surface vocabularies it needs. The source atom is import-free; the derivation from the\n * billing catalogue (`derivePublicPricingCatalog`) stays on the root barrel, where `ProductType` and\n * `BillingInterval` live.\n */\nexport {\n ProductPriceDisclosure,\n ProductAvailability,\n PublicPricingRecurrenceUnit,\n PublicPricingAmountBasis,\n publicPricingAmountDecimal,\n type PublicPricingPrice,\n type PublicPricingPlan,\n type PublicPricingCatalog,\n} from '../billing/public-pricing-catalog.shared.atoms';\n\n/**\n * Canonical Zod-issue rendering. Browser-bound runtimes validate untrusted\n * input too — MDX frontmatter at build time, API responses at runtime — and\n * each one previously re-derived its own `path: message` formatter, drifting on\n * root labels and truncation. The source atom is import-free (the issue shape is\n * structural, not a `zod` type import), so it adds nothing to the bundle budget.\n */\nexport {\n ALL_ZOD_ISSUES,\n DEFAULT_ZOD_ISSUE_RENDER_LIMIT,\n ZOD_ROOT_ISSUE_PATH_LABEL,\n formatZodIssue,\n formatZodIssues,\n summarizeZodIssues,\n type FormattableZodIssue,\n type ZodIssueFormattingOptions,\n} from '../errors/zod-issue-formatting.shared.utils';\n\nexport {\n AvailableLanguage,\n TextDirection,\n} from '@wildo-ai/presets-components-models/public-runtime';\n\n/**\n * Provider metadata atom (provider-registration-refactor §Phase 0.1 +\n * §Phase 1.g). The schema is built with plain Zod (no decorator\n * framework) and the type is `z.infer<…>`. Re-exported here so the\n * browser-bound `@wildo-ai/external-connectors-public/app`,\n * `@wildo-ai/external-connectors-public/techdoc`, and\n * `@wildo-ai/external-connectors-public/website` can consume it WITHOUT\n * pulling the saas-models\n * root barrel (which would boot `initZodDecorators()`).\n */\nexport {\n buildProviderDisplayNameLabelKey,\n defineProviderMetadata,\n ENGINE_PROVIDER_ORIGIN,\n ProviderCatalogueProvenanceSchema,\n ProviderCatalogueSource,\n ProviderIdentitySchema,\n ProviderMetadataSchema,\n ProviderOriginKind,\n ProviderOriginSchema,\n ProviderTier,\n type DefineProviderMetadataInput,\n type ProviderCatalogueProvenance,\n type ProviderIdentity,\n type ProviderMetadata,\n type ProviderOrigin,\n} from '../external-providers/provider-metadata.shared.schemas';\n\n/**\n * A provider's compliance primitives, reachable from the FRONTEND facets.\n *\n * `ProviderComplianceProfile` was reachable only from the backend provider contract until\n * 2026-09-07 (#345), which left the half of the provider population that executes in the DATA\n * SUBJECT'S BROWSER unable to state a deployment model, a processing region or a legal entity —\n * exactly the recipients a processor register and a transfer statement must name.\n *\n * `ProviderDeploymentModel` is exported as a VALUE, not merely a type: a provider module writes\n * `ProviderDeploymentModel.VENDOR_HOSTED` in its own declaration, so the enum enters the frontend\n * facets' module graph. It is a closed enum over two string members with no Zod decorators and no\n * side effects, which is the same bar the tier rule below is exported under. `ProviderComplianceDetermination` and\n * `ProviderComplianceFact` (#1708) meet the same bar: a browser facet writes an UNDETERMINED profile, or cites the\n * facts its evidence establishes, with their members.\n */\nexport {\n ProviderDeploymentModel,\n ProviderComplianceDetermination,\n ProviderComplianceFact,\n ProviderComplianceProfileSchema,\n establishedProviderComplianceProfile,\n type EstablishedProviderComplianceProfile,\n type ProviderComplianceProfile,\n} from '../external-providers/provider-compliance-profile.shared.schemas';\n\n/**\n * Consent purposes (#534) — the set a person grants, read by the visitor-tier `WebsiteConsentGate` in\n * the browser bundle and stored by the application. Carved into an import-free atom\n * (`consent-purposes.shared.ts`) so the website and the engine share ONE vocabulary: a website that\n * mirrored the string literals would be a second copy that drifts the day a purpose is added.\n */\nexport {\n ANONYMOUS_CONSENT_RECORD_METHOD,\n ANONYMOUS_CONSENT_RECORD_PATH,\n applicationAskedConsentPurposes,\n CONSENT_PURPOSES,\n ConsentPurpose,\n hasGrantedConsentPurposes,\n missingConsentPurposes,\n normalizeConsentPurposes,\n WEBSITE_VISITOR_CONSENT_STORAGE_KEY,\n} from '../compliance/privacy/consent-purposes.shared';\n\n/**\n * The tier rule (#328) is enforced by every facet's `compose*Providers`,\n * three of which are browser-bound and reach this package only here. It\n * depends on the closed capability→slot map and the metadata enums only —\n * no Zod decorators, no side effects.\n */\nexport {\n assertProviderTierCoherence,\n engineSlotsBoundByCapabilities,\n findProviderTierViolations,\n type ProviderTierRuleSubject,\n} from '../external-providers/provider-tier-rule.shared.utils';\n\n/**\n * Frontend-provider bootstrap atoms shared by browser-bound runtimes.\n *\n * Safe for `/public-runtime` because the entry/block schemas depend only on\n * plain Zod plus `ProviderMetadataSchema`; the heavier\n * `AppConfiguration_FrontendBootstrapResponse` contract stays on the root-barrel\n * side.\n */\nexport {\n FileStorageAccepted,\n FrontendProviderEntrySchema,\n FrontendProvidersBlockSchema,\n type FrontendProviderEntry,\n type FrontendProvidersBlock,\n} from '../external-providers/frontend-provider-entry.shared.schemas';\n\n/**\n * Frontend-surface atoms a provider declares (#332, slice S4a): its CSP\n * footprint, the vendor SDK package it loads, and any third-party `<script>` it\n * asks the surface to add.\n *\n * These are the DATA half of the frontend provider surface and they ride inside\n * `FrontendProviderEntry`, so they must reach the same browser-bound consumers\n * through the same door. Plain Zod, no decorators, no side effects. The\n * executable half lives on the facet module types in\n * `@wildo-ai/external-connectors-public` and never crosses this seam.\n */\nexport {\n normalizeProviderFrontendCspFootprint,\n PROVIDER_FRONTEND_CSP_ORIGIN_BUCKETS,\n ProviderAddressLookupDeclarationSchema,\n ProviderAddressLookupPlaceIdRetention,\n ProviderFrontendComponentDescriptorSchema,\n ProviderFrontendComponentDescriptorsSchema,\n ProviderFrontendCspDerivedOriginSchema,\n ProviderFrontendCspFootprintSchema,\n ProviderFrontendCspOriginBucket,\n ProviderFrontendScriptCrossOrigin,\n ProviderFrontendScriptDeclarationSchema,\n ProviderFrontendSdkDescriptorSchema,\n ProviderFrontendSelectionDelivery,\n type ProviderAddressLookupDeclaration,\n type ProviderFrontendComponentDescriptor,\n type ProviderFrontendComponentDescriptors,\n type ProviderFrontendCspDerivedOrigin,\n type ProviderFrontendCspFootprint,\n type ProviderFrontendCspFootprintDeclaration,\n type ProviderFrontendScriptDeclaration,\n type ProviderFrontendSdkDescriptor,\n} from '../external-providers/provider-frontend-surface.shared.schemas';\n\n/**\n * The contract between a provider's frontend COMPONENT and the surface that\n * mounts it (#394). Types only — no schema, no runtime value — and it lives in\n * this package rather than beside the module types it serves because a component\n * ships in its OWN package and that package would otherwise close a dependency\n * cycle through emitted declarations. Its own file says why in full.\n */\nexport type {\n ProviderFilePickerConstraints,\n ProviderFilePickerProps,\n ProviderFileSelection,\n} from '../external-providers/provider-frontend-component-contract.shared.types';\n\n/**\n * How an application supplies a frontend provider's public keys, and the\n * dependency-free schema helper the engine's own provider modules declare their\n * keys with (#394 P3). Browser-safe: pure functions and one enum, no Zod.\n */\nexport {\n defineFrontendPublicConfigSchema,\n FRONTEND_PROVIDER_PUBLIC_CONFIG_KEY,\n FrontendProviderPublicConfigError,\n FrontendProviderPublicConfigRefusal,\n FrontendPublicConfigValueKind,\n FRONTEND_PUBLIC_CONFIG_SECRET_CONTAINMENT_MIN_LENGTH,\n assertFrontendProvidersServeOnlyDeclaredKeys,\n assertNoSecretValueInFrontendProviders,\n findSecretValuesInFrontendProviders,\n overlayFrontendProviderPublicConfig,\n readDeclaredPublicConfigKeys,\n type FrontendPublicConfigKeySpec,\n type FrontendPublicConfigSchema,\n type FrontendPublicConfigSecretMatch,\n type FrontendPublicConfigSecretValue,\n type OverlayFrontendProviderPublicConfigInput,\n} from '../external-providers/frontend-provider-public-config.shared';\n\n/**\n * The public-config shape a built-in frontend capability expects (#380). Named\n * rather than conventional: the keys were previously read by hand at each use\n * site, where a renamed one produced `undefined` and a silently wrong surface.\n */\nexport {\n admissibleFrontendPublicConfigKeys,\n FRONTEND_CAPABILITY_PUBLIC_CONFIG_SCHEMAS,\n FrontendFilePickerPublicConfigSchema,\n frontendCapabilityPublicConfigKeys,\n layerProviderFilePickerConstraints,\n partitionFrontendCapabilityPublicConfig,\n type FrontendFilePickerPublicConfig,\n} from '../external-providers/frontend-capability-public-config.shared.schemas';\n\n/**\n * The RUNTIME half of the same idea (#437): what a built-in frontend capability\n * calls on the provider that fills it. `FRONTEND_ERROR_MONITORING` is the first —\n * the framework reports a caught crash without knowing which vendor is listening,\n * so the capability declares the method and the provider adapts to it. Pure types\n * plus one guard; no Zod, no decorators.\n */\nexport {\n isFrontendErrorMonitoringSink,\n isFrontendProductAnalyticsSink,\n isFrontendCaptchaSink,\n type FrontendCaptchaSink,\n type FrontendCrashReport,\n type FrontendErrorMonitoringSink,\n type FrontendProductAnalyticsEvent,\n type FrontendProductAnalyticsSink,\n} from '../external-providers/frontend-capability-runtime.shared.types';\n\n/**\n * Provider capability atoms (provider-registration-refactor §Phase 0.2\n * + §Phase 1.g). Closed built-in enum + open declaration-merging seam\n * + computed union type. Pure types and `as const` — no Zod, no\n * decorators, no side effects. Required by every facet's provider\n * module shape, so it MUST live on the bundle-safe seam.\n */\nexport {\n BUILTIN_PROVIDER_CAPABILITY,\n type BuiltinProviderCapability,\n type ProviderCapability,\n} from '../external-providers/provider-capability.shared.schemas';\nexport {\n BUILTIN_PROVIDER_PROTOCOL,\n type BuiltinProviderProtocol,\n type ProviderProtocol,\n} from '../external-providers/provider-protocol.shared.schemas';\n\n/**\n * Generic registry composition core (provider-registration-refactor\n * §Phase 1.e + §Phase 1.g). Used by every facet's `compose<Facet>Providers`\n * wrapper (backend, frontend-app, frontend-techdoc, frontend-website).\n * The browser-bound facets need this on the bundle-safe seam; the backend\n * facet inherits via the same import path for DRY.\n *\n * Pure runtime — only TYPE-imports `ProviderCapability` from the atom\n * above, so the closure stays decorator-free.\n */\nexport {\n composeProviderRegistry,\n ProviderCompositionConflictError,\n type ProviderRegistryFragment,\n type ComposedProviderRegistry,\n type ProviderCompositionConflict,\n} from '../external-providers/compose-provider-registry.shared';\n\n/**\n * Portable lexical primitives — a sha256-digest grammar, a namespaced/opaque ref grammar, a\n * positive version, a lowercase UUIDv4, an ISO datetime, and two array-canonicality predicates.\n *\n * ## Why they are HERE and not only behind `@wildo-ai/saas-models/meta-workflows`\n *\n * They are shared by two domains, and only one of them is meta-workflows. Measured 2026-09-19: of\n * 41 import sites of the meta-workflows subpath, **7 take nothing but these primitives**, and all\n * seven are `saas-specifications/src/technical-documentation/*.schemas.ts` — a browser-bound tier\n * whose bundle-isolation allow-list had to admit an entire authoring domain to obtain seven\n * regexes.\n *\n * No K-2 extraction was needed: `portable-primitives.meta-workflows.shared.schemas` imports `zod`\n * and nothing else, so it is already the zero-dependency atom K-2 asks for — the\n * `WildoHeaderKeys` case, re-exported whole. The meta-workflows door keeps publishing it for its\n * 34 mixed consumers; that is two SUBPATHS onto one atom, which `check:package-entrypoints` rule 1\n * does not refuse (it is root-vs-subpath), and it is what a curated bundle-safe subset IS.\n *\n * The `MetaWorkflow_` prefix is kept deliberately: renaming a symbol that 34 other sites import is\n * a separate change from making it reachable on the bundle-safe seam, and doing both at once would\n * hide one in the other.\n */\nexport {\n MetaWorkflow_Sha256DigestSchema,\n MetaWorkflow_NamespacedRefSchema,\n MetaWorkflow_OpaqueRefSchema,\n MetaWorkflow_PositiveVersionSchema,\n MetaWorkflow_PositiveOrdinalSchema,\n MetaWorkflow_NonNegativeRevisionSchema,\n MetaWorkflow_LowercaseUuidV4Schema,\n MetaWorkflow_IsoDateTimeSchema,\n MetaWorkflow_NonNegativeFiniteNumberSchema,\n metaWorkflowValuesAreUnique,\n metaWorkflowValuesAreLexicallySorted,\n compareMetaWorkflowCanonicalStrings,\n} from '../meta-workflows/portable-primitives.meta-workflows.shared.schemas';\n\n/** @wildo_source:part:end saas.public-runtime.contract */\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/public-runtime/index.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @wildo_source:part:start saas.public-runtime.contract facet:layer:shared facet:family:bundle-boundary\n *\n * @wildo-package-subpath @wildo-ai/saas-models/public-runtime\n *\n * Browser-safe, decorator-framework-free atom subset of\n * `@wildo-ai/saas-models`.\n *\n * Why this subpath exists:\n * The package's root barrel (`./index.ts`) calls `initZodDecorators()` at\n * module load (line 3) and re-exports the entire decorator-framework-bound\n * schema graph (~150 schemas, transitively pulls\n * `@wildo-ai/external-connectors-models` + `@wildo-ai/zod-decorators` +\n * `reflect-metadata`). Browser bundles that need only a handful of stable\n * atoms (cross-frontend handoff DTOs, canonical HTTP header keys, locale\n * enums) should NOT pay that cost.\n *\n * This subpath exposes that minimal stable surface, sourced from\n * side-effect-free atom files (saas-models-public-runtime.md K-1 / K-2 /\n * K-4):\n *\n * - Cross-Frontend Handoff + Token Exchange DTO atoms\n * (`../security/authentications/cross-frontend-handoff.shared.dto.schemas`):\n * `CrossFrontendHandoffErrorCode`, `CrossFrontendHandoffRequestSchema`,\n * `CrossFrontendHandoffResponseSchema`, `TokenExchangeRequestSchema`,\n * `TokenExchangeResponseSchema`,\n * `CrossFrontendHandoffRequest`, `CrossFrontendHandoffResponse`,\n * `TokenExchangeRequest`, `TokenExchangeResponse`. The token-exchange\n * schemas were added\n * in cross-app-jwt-propagation.md Step 5 — every receiver of an\n * AUTH_CODE_EXCHANGE token (SaaS app, docs site) is by construction\n * a client-bundle target, so the response shape MUST live here too\n * (not just in the heavy backend schemas barrel).\n * - Frontend-kind enum\n * (`../config/app-frontend-type.shared.schemas`): `AppFrontendType`\n * — the SAAS_APP / STATIC_WEBSITE / TECH_DOC runtime taxonomy.\n * Consumed by website discovery, scaffolding, CSP config, and\n * companion services that need to introspect a service's runtime\n * kind without booting the full schema graph. The atom file's\n * file-level JSDoc is the canonical home for the kind-by-kind\n * rationale AND the locked \"no native variants\" design decision\n * — read that file before authoring any AppFrontendType-driven\n * conditional.\n * - Canonical HTTP header keys (`../requests/header-keys.shared`):\n * `WildoHeaderKeys` (already a zero-dep `as const` atom — re-exported\n * whole; per K-2 splitting it would itself violate DRY).\n * - Locale enums (re-exported transparently from\n * `@wildo-ai/presets-components-models/public-runtime`):\n * `AvailableLanguage`, `TextDirection`. Consumers see ONE import path\n * (`@wildo-ai/saas-models/public-runtime`) — the\n * `presets-components-models/public-runtime` subpath is an internal\n * seam (saas-models-public-runtime.md K-6).\n *\n * @wildo-boundary (saas-models-public-runtime.md K-3)\n * - This file and every file it transitively imports MUST NOT import from:\n * `@wildo-ai/zod-decorators`, `@wildo-ai/external-connectors-models`,\n * the `@wildo-ai/presets-components-models` ROOT barrel (only the\n * `/public-runtime` subpath of that package is allowed), `inversify`,\n * `reflect-metadata`, `mongoose`, `axios`, `express`, `socket.io`,\n * `pino`, `helmet`, `argon2`, `bcrypt`, `jsonwebtoken`.\n * - DO NOT import from this package's ROOT barrel (`../index`) — that\n * barrel runs `initZodDecorators()` and pulls the full schema tree.\n * - Allowed imports: `zod` (peer dep, browser-safe), files inside\n * `./public-runtime/`, the atom files extracted by Steps 1 + 2 of the\n * plan, and the\n * `@wildo-ai/presets-components-models/public-runtime` subpath.\n *\n * @wildo-bundle-budget\n * The output of this barrel + transitive imports MUST stay free of:\n * `initZodDecorators()` invocation, `reflect-metadata`, the full\n * `authentication.shared.dto.schemas.ts` web of types\n * (`UserContextSchema`, `SessionType`, `AuthMethod`, `AuthFactorLevel`,\n * `AuthSessionPurpose`, `AuthUtils`). The Step 5 vitest boundary test\n * snapshots `Object.getOwnPropertyNames(z.ZodType.prototype)` before and\n * after importing this module and asserts the prototype is unchanged\n * (proof that `initZodDecorators` did NOT run).\n *\n * @wildo-dry-contract\n * Every atom exposed here lives in EXACTLY one source file. The original\n * home (e.g. `authentication.shared.dto.schemas.ts`,\n * `localization/language.shared.schemas.ts`) re-exports from the same atom\n * so existing root-barrel consumers keep working unchanged. Adding a new\n * atom: split it out of its current heavy file FIRST (matching K-2\n * protocol), add a re-export at the original home, then add the import\n * here. NEVER duplicate a declaration into a `_public-runtime/` folder.\n */\n\nexport {\n CrossFrontendHandoffErrorCode,\n CrossFrontendHandoffRequestSchema,\n CrossFrontendHandoffResponseSchema,\n TokenExchangeRequestSchema,\n TokenExchangeResponseSchema,\n type CrossFrontendHandoffRequest,\n type CrossFrontendHandoffResponse,\n type TokenExchangeRequest,\n type TokenExchangeResponse,\n} from '../security/authentications/cross-frontend-handoff.shared.dto.schemas';\n\n/**\n * The single same-origin redirect predicate.\n *\n * On the bundle-safe seam because the two BROWSER receivers of a post-authentication redirect — the\n * SaaS app (`saas-frontend-lib`) and the docs site (`saas-technical-doc`) — are client-bundle targets\n * by construction, while the ISSUER-side schema in this package validates the same value on the\n * server. All three must reach one predicate or they drift; they already had, in the same direction,\n * across four hand-written copies. The source atom is import-free, so it adds nothing to the budget.\n */\nexport { isSameOriginRedirectPath } from '../security/authentications/same-origin-redirect-path.shared';\n\n/**\n * The caught-value describers, for code that must stay light.\n *\n * The backend provider loader is held to a measured module graph and imports only light doors; the\n * package root would take its import-time graph from 136 modules to 624 for one function (#1591). The\n * source atom imports nothing at runtime, so it adds nothing to the budget.\n */\nexport {\n describeCaughtError,\n describeCaughtErrorWithKind,\n} from '../errors/caught-error-description.shared.utils';\n\nexport { WildoHeaderKeys } from '../requests/header-keys.shared';\n\n/** The public submission challenge (#1735): answers a browser form encodes and solves. Imports nothing. */\nexport {\n ProofOfWorkAlgorithm,\n SUBMISSION_CHALLENGE_PROOF_OF_WORK_PATH,\n SUBMISSION_CHALLENGE_ACTION_PATTERN,\n SUBMISSION_CHALLENGE_RESPONSE_MAX_LENGTH,\n SubmissionChallengeAction,\n SubmissionChallengeRefusalCode,\n SubmissionChallengeResponseKind,\n encodeSubmissionChallengeResponse,\n hashProofOfWorkCandidate,\n isSubmissionChallengeActionName,\n solveProofOfWorkChallenge,\n type ProofOfWorkChallenge,\n type ResourceOperationSubmissionChallenge,\n type SubmissionChallengeResponse,\n} from '../security/submission-challenge/submission-challenge.shared';\n\n/**\n * Main API mount prefix (`/api/v1`) — the SINGLE SOURCE OF TRUTH for the path\n * under which the entire main controllers registry is served. Exposed on the\n * bundle-safe seam because browser-bound runtimes that call the SaaS backend\n * (e.g. the docs auth client's token-exchange / cross-frontend-handoff\n * requests) must prefix their request URLs with the SAME value the backend\n * mounts and the SaaS-app HTTP client uses. Deriving every consumer from one\n * symbol is what prevents the prefix-drift class — a mismatched prefix\n * silently breaks auth (see the refresh-cookie `Path` regression that\n * motivated the shared symbol). The source atom\n * (`../requests/manual-controllers-routes-urls`) imports only the import-free\n * submission-challenge atom (itself on this seam), so it adds nothing to the\n * decorator-free bundle budget.\n */\nexport { MAIN_API_BASE_PATH } from '../requests/manual-controllers-routes-urls';\n\n/**\n * A caught value as one readable line, for a bundle-isolated package (`saas-website`) — the rendering\n * `describeCaughtError` (above) delegates to for every value that is not the engine's own error. Both\n * atoms are import-free; one rendering, two doors (#1518's \"[object Object]\" fix, #1591).\n */\nexport { describeThrownValue } from '../errors/thrown-value-description.shared.utils';\n\nexport { AppFrontendType } from '../config/app-frontend-type.shared.schemas';\n\n/**\n * The public pricing catalogue (#1835): the plain, JSON-safe shape a website pricing island reads, with\n * the two pricing-surface vocabularies it needs. The source atom is import-free; the derivation from the\n * billing catalogue (`derivePublicPricingCatalog`) stays on the root barrel, where `ProductType` and\n * `BillingInterval` live.\n */\nexport {\n ProductPriceDisclosure,\n ProductAvailability,\n PublicPricingRecurrenceUnit,\n PublicPricingAmountBasis,\n publicPricingAmountDecimal,\n type PublicPricingPrice,\n type PublicPricingPlan,\n type PublicPricingCatalog,\n} from '../billing/public-pricing-catalog.shared.atoms';\n\n/**\n * Canonical Zod-issue rendering. Browser-bound runtimes validate untrusted\n * input too — MDX frontmatter at build time, API responses at runtime — and\n * each one previously re-derived its own `path: message` formatter, drifting on\n * root labels and truncation. The source atom is import-free (the issue shape is\n * structural, not a `zod` type import), so it adds nothing to the bundle budget.\n */\nexport {\n ALL_ZOD_ISSUES,\n DEFAULT_ZOD_ISSUE_RENDER_LIMIT,\n ZOD_ROOT_ISSUE_PATH_LABEL,\n formatZodIssue,\n formatZodIssues,\n summarizeZodIssues,\n type FormattableZodIssue,\n type ZodIssueFormattingOptions,\n} from '../errors/zod-issue-formatting.shared.utils';\n\nexport {\n AvailableLanguage,\n TextDirection,\n} from '@wildo-ai/presets-components-models/public-runtime';\n\n/**\n * Provider metadata atom (provider-registration-refactor §Phase 0.1 +\n * §Phase 1.g). The schema is built with plain Zod (no decorator\n * framework) and the type is `z.infer<…>`. Re-exported here so the\n * browser-bound `@wildo-ai/external-connectors-public/app`,\n * `@wildo-ai/external-connectors-public/techdoc`, and\n * `@wildo-ai/external-connectors-public/website` can consume it WITHOUT\n * pulling the saas-models\n * root barrel (which would boot `initZodDecorators()`).\n */\nexport {\n buildProviderDisplayNameLabelKey,\n defineProviderMetadata,\n ENGINE_PROVIDER_ORIGIN,\n ProviderCatalogueProvenanceSchema,\n ProviderCatalogueSource,\n ProviderIdentitySchema,\n ProviderMetadataSchema,\n ProviderOriginKind,\n ProviderOriginSchema,\n ProviderTier,\n type DefineProviderMetadataInput,\n type ProviderCatalogueProvenance,\n type ProviderIdentity,\n type ProviderMetadata,\n type ProviderOrigin,\n} from '../external-providers/provider-metadata.shared.schemas';\n\n/**\n * A provider's compliance primitives, reachable from the FRONTEND facets.\n *\n * `ProviderComplianceProfile` was reachable only from the backend provider contract until\n * 2026-09-07 (#345), which left the half of the provider population that executes in the DATA\n * SUBJECT'S BROWSER unable to state a deployment model, a processing region or a legal entity —\n * exactly the recipients a processor register and a transfer statement must name.\n *\n * `ProviderDeploymentModel` is exported as a VALUE, not merely a type: a provider module writes\n * `ProviderDeploymentModel.VENDOR_HOSTED` in its own declaration, so the enum enters the frontend\n * facets' module graph. It is a closed enum over two string members with no Zod decorators and no\n * side effects, which is the same bar the tier rule below is exported under. `ProviderComplianceDetermination` and\n * `ProviderComplianceFact` (#1708) meet the same bar: a browser facet writes an UNDETERMINED profile, or cites the\n * facts its evidence establishes, with their members.\n */\nexport {\n ProviderDeploymentModel,\n ProviderComplianceDetermination,\n ProviderComplianceFact,\n ProviderComplianceProfileSchema,\n establishedProviderComplianceProfile,\n type EstablishedProviderComplianceProfile,\n type ProviderComplianceProfile,\n} from '../external-providers/provider-compliance-profile.shared.schemas';\n\n/**\n * Consent purposes (#534) — the set a person grants, read by the visitor-tier `WebsiteConsentGate` in\n * the browser bundle and stored by the application. Carved into an import-free atom\n * (`consent-purposes.shared.ts`) so the website and the engine share ONE vocabulary: a website that\n * mirrored the string literals would be a second copy that drifts the day a purpose is added.\n */\nexport {\n ANONYMOUS_CONSENT_RECORD_METHOD,\n ANONYMOUS_CONSENT_RECORD_PATH,\n applicationAskedConsentPurposes,\n CONSENT_PURPOSES,\n ConsentPurpose,\n hasGrantedConsentPurposes,\n missingConsentPurposes,\n normalizeConsentPurposes,\n WEBSITE_VISITOR_CONSENT_STORAGE_KEY,\n} from '../compliance/privacy/consent-purposes.shared';\n\n/**\n * The tier rule (#328) is enforced by every facet's `compose*Providers`,\n * three of which are browser-bound and reach this package only here. It\n * depends on the closed capability→slot map and the metadata enums only —\n * no Zod decorators, no side effects.\n */\nexport {\n assertProviderTierCoherence,\n engineSlotsBoundByCapabilities,\n findProviderTierViolations,\n type ProviderTierRuleSubject,\n} from '../external-providers/provider-tier-rule.shared.utils';\n\n/**\n * Frontend-provider bootstrap atoms shared by browser-bound runtimes.\n *\n * Safe for `/public-runtime` because the entry/block schemas depend only on\n * plain Zod plus `ProviderMetadataSchema`; the heavier\n * `AppConfiguration_FrontendBootstrapResponse` contract stays on the root-barrel\n * side.\n */\nexport {\n FileStorageAccepted,\n FrontendProviderEntrySchema,\n FrontendProvidersBlockSchema,\n type FrontendProviderEntry,\n type FrontendProvidersBlock,\n} from '../external-providers/frontend-provider-entry.shared.schemas';\n\n/**\n * Frontend-surface atoms a provider declares (#332, slice S4a): its CSP\n * footprint, the vendor SDK package it loads, and any third-party `<script>` it\n * asks the surface to add.\n *\n * These are the DATA half of the frontend provider surface and they ride inside\n * `FrontendProviderEntry`, so they must reach the same browser-bound consumers\n * through the same door. Plain Zod, no decorators, no side effects. The\n * executable half lives on the facet module types in\n * `@wildo-ai/external-connectors-public` and never crosses this seam.\n */\nexport {\n normalizeProviderFrontendCspFootprint,\n PROVIDER_FRONTEND_CSP_ORIGIN_BUCKETS,\n ProviderAddressLookupDeclarationSchema,\n ProviderAddressLookupPlaceIdRetention,\n ProviderFrontendComponentDescriptorSchema,\n ProviderFrontendComponentDescriptorsSchema,\n ProviderFrontendCspDerivedOriginSchema,\n ProviderFrontendCspFootprintSchema,\n ProviderFrontendCspOriginBucket,\n ProviderFrontendScriptCrossOrigin,\n ProviderFrontendScriptDeclarationSchema,\n ProviderFrontendSdkDescriptorSchema,\n ProviderFrontendSelectionDelivery,\n type ProviderAddressLookupDeclaration,\n type ProviderFrontendComponentDescriptor,\n type ProviderFrontendComponentDescriptors,\n type ProviderFrontendCspDerivedOrigin,\n type ProviderFrontendCspFootprint,\n type ProviderFrontendCspFootprintDeclaration,\n type ProviderFrontendScriptDeclaration,\n type ProviderFrontendSdkDescriptor,\n} from '../external-providers/provider-frontend-surface.shared.schemas';\n\n/**\n * The contract between a provider's frontend COMPONENT and the surface that\n * mounts it (#394). Types only — no schema, no runtime value — and it lives in\n * this package rather than beside the module types it serves because a component\n * ships in its OWN package and that package would otherwise close a dependency\n * cycle through emitted declarations. Its own file says why in full.\n */\nexport type {\n ProviderFilePickerConstraints,\n ProviderFilePickerProps,\n ProviderFileSelection,\n} from '../external-providers/provider-frontend-component-contract.shared.types';\n\n/**\n * How an application supplies a frontend provider's public keys, and the\n * dependency-free schema helper the engine's own provider modules declare their\n * keys with (#394 P3). Browser-safe: pure functions and one enum, no Zod.\n */\nexport {\n defineFrontendPublicConfigSchema,\n FRONTEND_PROVIDER_PUBLIC_CONFIG_KEY,\n FrontendProviderPublicConfigError,\n FrontendProviderPublicConfigRefusal,\n FrontendPublicConfigValueKind,\n FRONTEND_PUBLIC_CONFIG_SECRET_CONTAINMENT_MIN_LENGTH,\n assertFrontendProvidersServeOnlyDeclaredKeys,\n assertNoSecretValueInFrontendProviders,\n findSecretValuesInFrontendProviders,\n overlayFrontendProviderPublicConfig,\n readDeclaredPublicConfigKeys,\n type FrontendPublicConfigKeySpec,\n type FrontendPublicConfigSchema,\n type FrontendPublicConfigSecretMatch,\n type FrontendPublicConfigSecretValue,\n type OverlayFrontendProviderPublicConfigInput,\n} from '../external-providers/frontend-provider-public-config.shared';\n\n/**\n * The public-config shape a built-in frontend capability expects (#380). Named\n * rather than conventional: the keys were previously read by hand at each use\n * site, where a renamed one produced `undefined` and a silently wrong surface.\n */\nexport {\n admissibleFrontendPublicConfigKeys,\n FRONTEND_CAPABILITY_PUBLIC_CONFIG_SCHEMAS,\n FrontendFilePickerPublicConfigSchema,\n frontendCapabilityPublicConfigKeys,\n layerProviderFilePickerConstraints,\n partitionFrontendCapabilityPublicConfig,\n type FrontendFilePickerPublicConfig,\n} from '../external-providers/frontend-capability-public-config.shared.schemas';\n\n/**\n * The RUNTIME half of the same idea (#437): what a built-in frontend capability\n * calls on the provider that fills it. `FRONTEND_ERROR_MONITORING` is the first —\n * the framework reports a caught crash without knowing which vendor is listening,\n * so the capability declares the method and the provider adapts to it. Pure types\n * plus one guard; no Zod, no decorators.\n */\nexport {\n isFrontendErrorMonitoringSink,\n isFrontendProductAnalyticsSink,\n isFrontendCaptchaSink,\n type FrontendCaptchaSink,\n type FrontendCrashReport,\n type FrontendErrorMonitoringSink,\n type FrontendProductAnalyticsEvent,\n type FrontendProductAnalyticsSink,\n} from '../external-providers/frontend-capability-runtime.shared.types';\n\n/**\n * Provider capability atoms (provider-registration-refactor §Phase 0.2\n * + §Phase 1.g). Closed built-in enum + open declaration-merging seam\n * + computed union type. Pure types and `as const` — no Zod, no\n * decorators, no side effects. Required by every facet's provider\n * module shape, so it MUST live on the bundle-safe seam.\n */\nexport {\n BUILTIN_PROVIDER_CAPABILITY,\n type BuiltinProviderCapability,\n type ProviderCapability,\n} from '../external-providers/provider-capability.shared.schemas';\nexport {\n BUILTIN_PROVIDER_PROTOCOL,\n type BuiltinProviderProtocol,\n type ProviderProtocol,\n} from '../external-providers/provider-protocol.shared.schemas';\n\n/**\n * Generic registry composition core (provider-registration-refactor\n * §Phase 1.e + §Phase 1.g). Used by every facet's `compose<Facet>Providers`\n * wrapper (backend, frontend-app, frontend-techdoc, frontend-website).\n * The browser-bound facets need this on the bundle-safe seam; the backend\n * facet inherits via the same import path for DRY.\n *\n * Pure runtime — only TYPE-imports `ProviderCapability` from the atom\n * above, so the closure stays decorator-free.\n */\nexport {\n composeProviderRegistry,\n ProviderCompositionConflictError,\n type ProviderRegistryFragment,\n type ComposedProviderRegistry,\n type ProviderCompositionConflict,\n} from '../external-providers/compose-provider-registry.shared';\n\n/**\n * Portable lexical primitives — a sha256-digest grammar, a namespaced/opaque ref grammar, a\n * positive version, a lowercase UUIDv4, an ISO datetime, and two array-canonicality predicates.\n *\n * ## Why they are HERE and not only behind `@wildo-ai/saas-models/meta-workflows`\n *\n * They are shared by two domains, and only one of them is meta-workflows. Measured 2026-09-19: of\n * 41 import sites of the meta-workflows subpath, **7 take nothing but these primitives**, and all\n * seven are `saas-specifications/src/technical-documentation/*.schemas.ts` — a browser-bound tier\n * whose bundle-isolation allow-list had to admit an entire authoring domain to obtain seven\n * regexes.\n *\n * No K-2 extraction was needed: `portable-primitives.meta-workflows.shared.schemas` imports `zod`\n * and nothing else, so it is already the zero-dependency atom K-2 asks for — the\n * `WildoHeaderKeys` case, re-exported whole. The meta-workflows door keeps publishing it for its\n * 34 mixed consumers; that is two SUBPATHS onto one atom, which `check:package-entrypoints` rule 1\n * does not refuse (it is root-vs-subpath), and it is what a curated bundle-safe subset IS.\n *\n * The `MetaWorkflow_` prefix is kept deliberately: renaming a symbol that 34 other sites import is\n * a separate change from making it reachable on the bundle-safe seam, and doing both at once would\n * hide one in the other.\n */\nexport {\n MetaWorkflow_Sha256DigestSchema,\n MetaWorkflow_NamespacedRefSchema,\n MetaWorkflow_OpaqueRefSchema,\n MetaWorkflow_PositiveVersionSchema,\n MetaWorkflow_PositiveOrdinalSchema,\n MetaWorkflow_NonNegativeRevisionSchema,\n MetaWorkflow_LowercaseUuidV4Schema,\n MetaWorkflow_IsoDateTimeSchema,\n MetaWorkflow_NonNegativeFiniteNumberSchema,\n metaWorkflowValuesAreUnique,\n metaWorkflowValuesAreLexicallySorted,\n compareMetaWorkflowCanonicalStrings,\n} from '../meta-workflows/portable-primitives.meta-workflows.shared.schemas';\n\n/** @wildo_source:part:end saas.public-runtime.contract */\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jobs.shared.resources-config.schemas.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"jobs.shared.resources-config.schemas.d.ts","sourceRoot":"","sources":["../../../../src/queue/jobs.shared.resources-config.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,EAAE,qBAAqB,EAAwD,MAAM,gDAAgD,CAAC;AAC7I,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AAC1F,OAAO,EAA4D,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAGvI,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EAKxB,MAAM,uBAAuB,CAAC;AAO/B;;GAEG;AACH,oBAAY,sBAAsB;IAChC,kDAAkD;IAClD,QAAQ,aAAa;CACtB;AAED;;GAEG;AACH,KAAK,2BAA2B,GAC5B,qBAAqB,CAAC,MAAM,GAC5B,qBAAqB,CAAC,IAAI,GAC1B,qBAAqB,CAAC,MAAM,GAC5B,qBAAqB,CAAC,IAAI,GAC1B,qBAAqB,CAAC,MAAM,GAC5B,qBAAqB,CAAC,WAAW,CAAC;AAkBtC;;;;;;;;;;GAUG;AACH,eAAO,MAAM,wDAAwD,GACnE,wBAAwB,oBAAoB,EAAE,KAC7C,qBAAqB,CAAC,SAAS,EAAE,2BAA2B,EAAE,OAAO,kBAAkB,CAuLzF,CAAC;AAMF;;GAEG;AACH,oBAAY,2BAA2B;IACrC,gEAAgE;IAChE,QAAQ,aAAa;CACtB;AAED;;GAEG;AACH,KAAK,gCAAgC,GACjC,qBAAqB,CAAC,MAAM,GAC5B,qBAAqB,CAAC,IAAI,GAC1B,qBAAqB,CAAC,MAAM,GAC5B,qBAAqB,CAAC,MAAM,GAC5B,qBAAqB,CAAC,WAAW,CAAC;AAWtC;;;;;;;;GAQG;AACH,eAAO,MAAM,6DAA6D,GACxE,wBAAwB,oBAAoB,EAAE,KAC7C,qBAAqB,CAAC,SAAS,EAAE,gCAAgC,EAAE,OAAO,uBAAuB,CAwGnG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jobs.shared.resources-config.schemas.js","sourceRoot":"","sources":["../../../src/queue/jobs.shared.resources-config.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Job Resource Configurations\n * \n * Defines resource configurations for JobExecution and JobPayloadStorage.\n * \n * Resource Design Principles:\n * - REPOSITORY_ONLY variants throughout: both resources are reached by queue services and internal retention sweeps, so neither declares an API variant and neither generates a route\n * - Proper requestDto schemas for each variant\n * - isBackendOnly fields are automatically filtered in responses\n * \n * Key Resources:\n * - JobExecution: Tracks job lifecycle; terminal history expires, unresolved scheduled work is retained\n * - JobPayloadStorage: Stores operational payloads (24-hour default) and finite selected scheduled evidence\n */\n\nimport { z } from 'zod';\nimport { createResourceConfiguration_Initialization } from '../resources/resources-config.shared.factory';\nimport { CoreResourceOperation, CoreResourceType, coreResourceShared_FieldIdentifier } from '../resources/resources.shared.core.definitions';\nimport type { ResourceConfiguration } from '../resources/resources-config.shared.schemas';\nimport { ResourceOperationRiskLevel, ResourceOperationVariantType, ResourceRelationship } from '../resources/resources.shared.schemas';\nimport { CORE_APP_ROLES } from '../security/authorizations/roles.shared.schemas';\nimport { ResourceSystemAccessMode } from '../resources/resources-config.shared.schemas';\nimport { \n JobExecutionSchema, \n JobPayloadStorageSchema,\n JobExecutionStatus,\n JobType,\n JobInitiator,\n JobPriority,\n} from './jobs.shared.schemas';\n\n\n// ============================================================================\n// JOB EXECUTION RESOURCE CONFIGURATION\n// ============================================================================\n\n/**\n * Variant keys for JobExecution operations.\n */\nexport enum JobExecutionVariantKey {\n /** Internal queue service operations (default) */\n INTERNAL = 'internal',\n}\n\n/**\n * Core operations available for JobExecution.\n */\ntype JobExecution_CoreOperations = \n | CoreResourceOperation.CREATE \n | CoreResourceOperation.READ \n | CoreResourceOperation.UPDATE\n | CoreResourceOperation.LIST\n | CoreResourceOperation.SEARCH\n | CoreResourceOperation.DELETE_MANY;\n\n// Filter fields for JobExecution LIST/SEARCH\nconst JOB_EXECUTION_FILTER_FIELDS = {\n applicationId: z.string(),\n jobType: z.enum(Object.values(JobType) as [string, ...string[]]),\n status: z.enum(Object.values(JobExecutionStatus) as [string, ...string[]]),\n organizationId: z.string(),\n userId: z.string(),\n queueName: z.string(),\n domainCategory: z.string(),\n initiatedBy: z.enum(Object.values(JobInitiator) as [string, ...string[]]),\n priority: z.enum(Object.values(JobPriority) as [string, ...string[]]),\n};\n\n// Sort fields for JobExecution LIST/SEARCH\nconst JOB_EXECUTION_SORT_FIELDS = ['createdAt', 'completedAt', 'durationMs', 'retryCount'] as const;\n\n/**\n * Factory function for JobExecution resource configuration.\n * \n * JobExecution tracks the lifecycle of all jobs processed by the queue system.\n * It provides visibility into job status, retries, timing, and error information.\n * \n * Variants: one per operation, all REPOSITORY_ONLY (CREATE, READ, UPDATE, LIST, SEARCH, DELETE_MANY), for queue\n * services and bounded retention maintenance. There is no API variant, so no route is generated and nothing here is reachable over\n * HTTP. In particular there is no admin cancel verb: cancelling a job is a queue-service call, not\n * an API call, and adding an operator-facing one means declaring an API variant here first.\n */\nexport const jobExecution_ResourceConfiguration_InitializationFactory = (\n resourcesRelationships: ResourceRelationship[]\n): ResourceConfiguration<undefined, JobExecution_CoreOperations, typeof JobExecutionSchema> => {\n\n // === CREATE Schemas ===\n // Full create schema for internal use\n const JobExecutionCreateInternalSchema = JobExecutionSchema.omit({\n _id: true,\n retryCount: true, // Starts at 0 (default)\n lastRetryAt: true, // Set on retry\n startedAt: true, // Set when processing starts\n completedAt: true, // Set when completed\n durationMs: true, // Calculated on completion\n outputPayloadStorageId: true, // Set after execution\n error: true, // Set on failure\n workerId: true, // Set by worker\n workerHostname: true, // Set by worker\n });\n\n // === UPDATE Schemas ===\n // Internal service can update most fields (status changes, timing, errors)\n const JobExecutionUpdateInternalSchema = z.object({\n // Status updates\n status: z.enum(Object.values(JobExecutionStatus) as [string, ...string[]]).optional(),\n \n // Timing updates\n queuedAt: z.date().optional(),\n startedAt: z.date().optional(),\n completedAt: z.date().optional(),\n durationMs: z.number().int().optional(),\n lastRetryAt: z.date().optional(),\n \n // Retry tracking\n retryCount: z.number().int().min(0).optional(),\n \n // Worker info\n workerId: z.string().optional(),\n workerHostname: z.string().optional(),\n \n // Payload references\n outputPayloadStorageId: z.uuid().optional(),\n \n // Error info\n error: JobExecutionSchema.shape.error,\n });\n\n return createResourceConfiguration_Initialization<\n undefined,\n JobExecution_CoreOperations,\n typeof JobExecutionSchema\n >({\n mainSchema: JobExecutionSchema,\n resourceIdentifier: CoreResourceType.JOB_EXECUTIONS,\n resourceFieldIdentifier: coreResourceShared_FieldIdentifier[CoreResourceType.JOB_EXECUTIONS],\n resourceRelationships: resourcesRelationships,\n isSystemResource: true, // Internal infrastructure component\n\n /**\n * Subject-export disclosure: explicitly FORBIDDEN. A job execution is an OPERATIONAL record of\n * the platform doing work — it references a subject without being data *about* them in any sense\n * a data subject would recognise, and it is already out of Art. 20 scope as controller-generated.\n *\n * FORBIDDEN rather than left undeclared on purpose: this is a decision someone took, not a gap\n * nobody has filled, and the export refusal says so — precisely so a future operator clearing a\n * startup error cannot \"fix\" it by opting in.\n */\n systemAccessPolicy: { exportSubject: ResourceSystemAccessMode.FORBIDDEN },\n\n /*\n * DELIBERATELY NO `retentionPolicy`, and this comment is the declaration of that.\n *\n * Issue #138 asks that every engine resource declaring `exportSubject` either declare an erasure\n * posture or be deliberately and visibly exempt. This one is exempt, for the same reason the export\n * refusal directly above gives: a job execution is an operational record of the platform doing work,\n * not data about a person. It declares no personal-data category, and no field of it would be scrubbed.\n *\n * Declaring `RETAIN_ONLY` here would be worse than saying nothing. The mode is a positive assertion\n * about a resource that holds personal data of a subject; making it would place this row in the\n * subject-erasure population, inject the `retentionStatus` / `impersonalizedAt` markers and the\n * route-less LIST + UPDATE_MANY plumbing, and require a migration on all three schema planes — all to\n * describe an erasure path that never visits this collection.\n *\n * If a future job payload ever carries subject content, that is a `.dataCategories()` declaration on\n * the payload first, and this exemption is then wrong and must be revisited with it.\n */\n\n coreOperations: [\n CoreResourceOperation.CREATE,\n CoreResourceOperation.READ,\n CoreResourceOperation.UPDATE,\n CoreResourceOperation.LIST,\n CoreResourceOperation.SEARCH,\n CoreResourceOperation.DELETE_MANY,\n ],\n \n operationsConfiguration: {\n // The built-in bounded retention sweep resolves this contract before deleting expired rows.\n // Repository-only: supplying maintenance behavior must not create a public deletion route.\n [CoreResourceOperation.DELETE_MANY]: {\n variants: [{\n variantKey: JobExecutionVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.HIGH,\n }],\n },\n // === CREATE ===\n [CoreResourceOperation.CREATE]: {\n variants: [\n // Internal: Queue services create job records\n {\n variantKey: JobExecutionVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n requestDto: JobExecutionCreateInternalSchema,\n },\n ],\n },\n \n // === READ ===\n [CoreResourceOperation.READ]: {\n variants: [\n // Internal: Queue services read job details\n {\n variantKey: JobExecutionVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n },\n ],\n },\n \n // === UPDATE ===\n [CoreResourceOperation.UPDATE]: {\n variants: [\n // Internal: Queue services update job status\n {\n variantKey: JobExecutionVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n requestDto: JobExecutionUpdateInternalSchema,\n },\n ],\n },\n \n // === LIST ===\n [CoreResourceOperation.LIST]: {\n variants: [\n // Internal: Queue services list jobs\n {\n variantKey: JobExecutionVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n },\n ],\n },\n\n // === SEARCH ===\n [CoreResourceOperation.SEARCH]: {\n variants: [\n {\n variantKey: JobExecutionVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n isSearchable: true,\n searchableFields: ['jobId', 'operationPathKey', 'batchRef'],\n searchableOptions: { caseSensitive: false, fullMatchOnly: false },\n filterFields: JOB_EXECUTION_FILTER_FIELDS,\n sortFields: JOB_EXECUTION_SORT_FIELDS,\n maxPaginatedResultPerPageLimit: 100,\n },\n ],\n },\n },\n });\n};\n\n// ============================================================================\n// JOB PAYLOAD STORAGE RESOURCE CONFIGURATION\n// ============================================================================\n\n/**\n * Variant keys for JobPayloadStorage operations.\n */\nexport enum JobPayloadStorageVariantKey {\n /** Internal queue service operations (default, only variant) */\n INTERNAL = 'internal',\n}\n\n/**\n * Core operations available for JobPayloadStorage.\n */\ntype JobPayloadStorage_CoreOperations = \n | CoreResourceOperation.CREATE \n | CoreResourceOperation.READ \n | CoreResourceOperation.DELETE\n | CoreResourceOperation.SEARCH\n | CoreResourceOperation.DELETE_MANY;\n\n// Filter fields for JobPayloadStorage\nconst JOB_PAYLOAD_STORAGE_FILTER_FIELDS = {\n applicationId: z.string(),\n isCompressed: z.boolean(),\n};\n\n// Sort fields for JobPayloadStorage\nconst JOB_PAYLOAD_STORAGE_SORT_FIELDS = ['createdAt', 'expiresAt', 'payloadSizeBytes'] as const;\n\n/**\n * Factory function for JobPayloadStorage resource configuration.\n * \n * JobPayloadStorage stores large job payloads (>100KB) that exceed RabbitMQ\n * message size limits. Referenced by storageId in JobPayload messages.\n * \n * Variants:\n * - INTERNAL only: No API exposure (contains sensitive payload data)\n */\nexport const jobPayloadStorage_ResourceConfiguration_InitializationFactory = (\n resourcesRelationships: ResourceRelationship[]\n): ResourceConfiguration<undefined, JobPayloadStorage_CoreOperations, typeof JobPayloadStorageSchema> => {\n\n // === CREATE Schema ===\n // Internal services provide all data except auto-generated fields\n const JobPayloadStorageCreateInternalSchema = JobPayloadStorageSchema.omit({\n _id: true,\n createdAt: true, // Repository owns timestamps; input cleaning removes them before DTO validation.\n referenceCount: true, // Starts at 1 (default)\n });\n\n return createResourceConfiguration_Initialization<\n undefined,\n JobPayloadStorage_CoreOperations,\n typeof JobPayloadStorageSchema\n >({\n mainSchema: JobPayloadStorageSchema,\n resourceIdentifier: CoreResourceType.JOB_PAYLOAD_STORAGE,\n resourceFieldIdentifier: coreResourceShared_FieldIdentifier[CoreResourceType.JOB_PAYLOAD_STORAGE],\n resourceRelationships: resourcesRelationships,\n isSystemResource: true, // Internal infrastructure component\n\n coreOperations: [\n CoreResourceOperation.CREATE,\n CoreResourceOperation.READ,\n CoreResourceOperation.DELETE,\n CoreResourceOperation.SEARCH,\n CoreResourceOperation.DELETE_MANY,\n ],\n \n operationsConfiguration: {\n // The built-in bounded retention sweep resolves this contract before deleting expired rows.\n // Repository-only: supplying maintenance behavior must not create a public deletion route.\n [CoreResourceOperation.DELETE_MANY]: {\n variants: [{\n variantKey: JobPayloadStorageVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.HIGH,\n }],\n },\n // === CREATE ===\n [CoreResourceOperation.CREATE]: {\n variants: [\n // Internal: Queue services store payloads\n {\n variantKey: JobPayloadStorageVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n requestDto: JobPayloadStorageCreateInternalSchema,\n },\n ],\n },\n \n // === READ ===\n [CoreResourceOperation.READ]: {\n variants: [\n // Internal: Queue services retrieve payloads\n {\n variantKey: JobPayloadStorageVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n },\n ],\n },\n \n // === DELETE ===\n [CoreResourceOperation.DELETE]: {\n variants: [\n // Internal: Queue services delete payloads\n {\n variantKey: JobPayloadStorageVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n },\n ],\n },\n\n // === SEARCH ===\n [CoreResourceOperation.SEARCH]: {\n variants: [\n {\n variantKey: JobPayloadStorageVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n isSearchable: true,\n searchableFields: ['storageId'],\n searchableOptions: { caseSensitive: true, fullMatchOnly: true },\n filterFields: JOB_PAYLOAD_STORAGE_FILTER_FIELDS,\n sortFields: JOB_PAYLOAD_STORAGE_SORT_FIELDS,\n maxPaginatedResultPerPageLimit: 100,\n },\n ],\n },\n },\n });\n};\n"]}
|
|
1
|
+
{"version":3,"file":"jobs.shared.resources-config.schemas.js","sourceRoot":"","sources":["../../../../src/queue/jobs.shared.resources-config.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,0CAA0C,EAAE,MAAM,8CAA8C,CAAC;AAC1G,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,kCAAkC,EAAE,MAAM,gDAAgD,CAAC;AAE7I,OAAO,EAAE,0BAA0B,EAAE,4BAA4B,EAAwB,MAAM,uCAAuC,CAAC;AACvI,OAAO,EAAE,cAAc,EAAE,MAAM,iDAAiD,CAAC;AACjF,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,OAAO,EACP,YAAY,EACZ,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAG/B,+EAA+E;AAC/E,uCAAuC;AACvC,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAN,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAChC,kDAAkD;IAClD,+CAAqB,CAAA;AACvB,CAAC,EAHW,sBAAsB,KAAtB,sBAAsB,QAGjC;AAaD,6CAA6C;AAC7C,MAAM,2BAA2B,GAAG;IAClC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAA0B,CAAC;IAChE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAA0B,CAAC;IAC1E,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;IAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;IAC1B,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAA0B,CAAC;IACzE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAA0B,CAAC;CACtE,CAAC;AAEF,2CAA2C;AAC3C,MAAM,yBAAyB,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,CAAU,CAAC;AAEpG;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,wDAAwD,GAAG,CACtE,sBAA8C,EAC4C,EAAE;IAE5F,yBAAyB;IACzB,sCAAsC;IACtC,MAAM,gCAAgC,GAAG,kBAAkB,CAAC,IAAI,CAAC;QAC/D,GAAG,EAAE,IAAI;QACT,UAAU,EAAE,IAAI,EAAS,wBAAwB;QACjD,WAAW,EAAE,IAAI,EAAQ,eAAe;QACxC,SAAS,EAAE,IAAI,EAAU,6BAA6B;QACtD,WAAW,EAAE,IAAI,EAAQ,qBAAqB;QAC9C,UAAU,EAAE,IAAI,EAAS,2BAA2B;QACpD,sBAAsB,EAAE,IAAI,EAAE,sBAAsB;QACpD,KAAK,EAAE,IAAI,EAAc,iBAAiB;QAC1C,QAAQ,EAAE,IAAI,EAAW,gBAAgB;QACzC,cAAc,EAAE,IAAI,EAAK,gBAAgB;KAC1C,CAAC,CAAC;IAEH,yBAAyB;IACzB,2EAA2E;IAC3E,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;QAChD,iBAAiB;QACjB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAA0B,CAAC,CAAC,QAAQ,EAAE;QAErF,iBAAiB;QACjB,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;QAC7B,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;QAC9B,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;QAChC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;QACvC,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;QAEhC,iBAAiB;QACjB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;QAE9C,cAAc;QACd,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC/B,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAErC,qBAAqB;QACrB,sBAAsB,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;QAE3C,aAAa;QACb,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC,KAAK;KACtC,CAAC,CAAC;IAEH,OAAO,0CAA0C,CAI/C;QACA,UAAU,EAAE,kBAAkB;QAC9B,kBAAkB,EAAE,gBAAgB,CAAC,cAAc;QACnD,uBAAuB,EAAE,kCAAkC,CAAC,gBAAgB,CAAC,cAAc,CAAC;QAC5F,qBAAqB,EAAE,sBAAsB;QAC7C,gBAAgB,EAAE,IAAI,EAAE,oCAAoC;QAE5D;;;;;;;;WAQG;QACH,kBAAkB,EAAE,EAAE,aAAa,EAAE,wBAAwB,CAAC,SAAS,EAAE;QAEzE;;;;;;;;;;;;;;;;WAgBG;QAEH,cAAc,EAAE;YACd,qBAAqB,CAAC,MAAM;YAC5B,qBAAqB,CAAC,IAAI;YAC1B,qBAAqB,CAAC,MAAM;YAC5B,qBAAqB,CAAC,IAAI;YAC1B,qBAAqB,CAAC,MAAM;YAC5B,qBAAqB,CAAC,WAAW;SAClC;QAED,uBAAuB,EAAE;YACvB,4FAA4F;YAC5F,2FAA2F;YAC3F,CAAC,qBAAqB,CAAC,WAAW,CAAC,EAAE;gBACnC,QAAQ,EAAE,CAAC;wBACT,UAAU,EAAE,sBAAsB,CAAC,QAAQ;wBAC3C,WAAW,EAAE,4BAA4B,CAAC,eAAe;wBACzD,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,CAAC,cAAc,CAAC,qBAAqB,CAAC;wBAC7C,SAAS,EAAE,0BAA0B,CAAC,IAAI;qBAC3C,CAAC;aACH;YACD,iBAAiB;YACjB,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE;gBAC9B,QAAQ,EAAE;oBACR,8CAA8C;oBAC9C;wBACE,UAAU,EAAE,sBAAsB,CAAC,QAAQ;wBAC3C,WAAW,EAAE,4BAA4B,CAAC,eAAe;wBACzD,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,CAAC,cAAc,CAAC,qBAAqB,CAAC;wBAC7C,SAAS,EAAE,0BAA0B,CAAC,GAAG;wBACzC,UAAU,EAAE,gCAAgC;qBAC7C;iBACF;aACF;YAED,eAAe;YACf,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE;gBAC5B,QAAQ,EAAE;oBACR,4CAA4C;oBAC5C;wBACE,UAAU,EAAE,sBAAsB,CAAC,QAAQ;wBAC3C,WAAW,EAAE,4BAA4B,CAAC,eAAe;wBACzD,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,CAAC,cAAc,CAAC,qBAAqB,CAAC;wBAC7C,SAAS,EAAE,0BAA0B,CAAC,GAAG;qBAC1C;iBACF;aACF;YAED,iBAAiB;YACjB,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE;gBAC9B,QAAQ,EAAE;oBACR,6CAA6C;oBAC7C;wBACE,UAAU,EAAE,sBAAsB,CAAC,QAAQ;wBAC3C,WAAW,EAAE,4BAA4B,CAAC,eAAe;wBACzD,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,CAAC,cAAc,CAAC,qBAAqB,CAAC;wBAC7C,SAAS,EAAE,0BAA0B,CAAC,GAAG;wBACzC,UAAU,EAAE,gCAAgC;qBAC7C;iBACF;aACF;YAED,eAAe;YACf,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE;gBAC5B,QAAQ,EAAE;oBACR,qCAAqC;oBACrC;wBACE,UAAU,EAAE,sBAAsB,CAAC,QAAQ;wBAC3C,WAAW,EAAE,4BAA4B,CAAC,eAAe;wBACzD,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,CAAC,cAAc,CAAC,qBAAqB,CAAC;wBAC7C,SAAS,EAAE,0BAA0B,CAAC,GAAG;qBAC1C;iBACF;aACF;YAED,iBAAiB;YACjB,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE;gBAC9B,QAAQ,EAAE;oBACR;wBACE,UAAU,EAAE,sBAAsB,CAAC,QAAQ;wBAC3C,WAAW,EAAE,4BAA4B,CAAC,eAAe;wBACzD,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,CAAC,cAAc,CAAC,qBAAqB,CAAC;wBAC7C,SAAS,EAAE,0BAA0B,CAAC,GAAG;wBACzC,YAAY,EAAE,IAAI;wBAClB,gBAAgB,EAAE,CAAC,OAAO,EAAE,kBAAkB,EAAE,UAAU,CAAC;wBAC3D,iBAAiB,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE;wBACjE,YAAY,EAAE,2BAA2B;wBACzC,UAAU,EAAE,yBAAyB;wBACrC,8BAA8B,EAAE,GAAG;qBACpC;iBACF;aACF;SACF;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,+EAA+E;AAC/E,6CAA6C;AAC7C,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAN,IAAY,2BAGX;AAHD,WAAY,2BAA2B;IACrC,gEAAgE;IAChE,oDAAqB,CAAA;AACvB,CAAC,EAHW,2BAA2B,KAA3B,2BAA2B,QAGtC;AAYD,sCAAsC;AACtC,MAAM,iCAAiC,GAAG;IACxC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE;CAC1B,CAAC;AAEF,oCAAoC;AACpC,MAAM,+BAA+B,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,kBAAkB,CAAU,CAAC;AAEhG;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,6DAA6D,GAAG,CAC3E,sBAA8C,EACsD,EAAE;IAEtG,wBAAwB;IACxB,kEAAkE;IAClE,MAAM,qCAAqC,GAAG,uBAAuB,CAAC,IAAI,CAAC;QACzE,GAAG,EAAE,IAAI;QACT,SAAS,EAAE,IAAI,EAAE,iFAAiF;QAClG,cAAc,EAAE,IAAI,EAAE,wBAAwB;KAC/C,CAAC,CAAC;IAEH,OAAO,0CAA0C,CAI/C;QACA,UAAU,EAAE,uBAAuB;QACnC,kBAAkB,EAAE,gBAAgB,CAAC,mBAAmB;QACxD,uBAAuB,EAAE,kCAAkC,CAAC,gBAAgB,CAAC,mBAAmB,CAAC;QACjG,qBAAqB,EAAE,sBAAsB;QAC7C,gBAAgB,EAAE,IAAI,EAAE,oCAAoC;QAE5D,cAAc,EAAE;YACd,qBAAqB,CAAC,MAAM;YAC5B,qBAAqB,CAAC,IAAI;YAC1B,qBAAqB,CAAC,MAAM;YAC5B,qBAAqB,CAAC,MAAM;YAC5B,qBAAqB,CAAC,WAAW;SAClC;QAED,uBAAuB,EAAE;YACvB,4FAA4F;YAC5F,2FAA2F;YAC3F,CAAC,qBAAqB,CAAC,WAAW,CAAC,EAAE;gBACnC,QAAQ,EAAE,CAAC;wBACT,UAAU,EAAE,2BAA2B,CAAC,QAAQ;wBAChD,WAAW,EAAE,4BAA4B,CAAC,eAAe;wBACzD,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,CAAC,cAAc,CAAC,qBAAqB,CAAC;wBAC7C,SAAS,EAAE,0BAA0B,CAAC,IAAI;qBAC3C,CAAC;aACH;YACD,iBAAiB;YACjB,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE;gBAC9B,QAAQ,EAAE;oBACR,0CAA0C;oBAC1C;wBACE,UAAU,EAAE,2BAA2B,CAAC,QAAQ;wBAChD,WAAW,EAAE,4BAA4B,CAAC,eAAe;wBACzD,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,CAAC,cAAc,CAAC,qBAAqB,CAAC;wBAC7C,SAAS,EAAE,0BAA0B,CAAC,GAAG;wBACzC,UAAU,EAAE,qCAAqC;qBAClD;iBACF;aACF;YAED,eAAe;YACf,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE;gBAC5B,QAAQ,EAAE;oBACR,6CAA6C;oBAC7C;wBACE,UAAU,EAAE,2BAA2B,CAAC,QAAQ;wBAChD,WAAW,EAAE,4BAA4B,CAAC,eAAe;wBACzD,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,CAAC,cAAc,CAAC,qBAAqB,CAAC;wBAC7C,SAAS,EAAE,0BAA0B,CAAC,GAAG;qBAC1C;iBACF;aACF;YAED,iBAAiB;YACjB,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE;gBAC9B,QAAQ,EAAE;oBACR,2CAA2C;oBAC3C;wBACE,UAAU,EAAE,2BAA2B,CAAC,QAAQ;wBAChD,WAAW,EAAE,4BAA4B,CAAC,eAAe;wBACzD,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,CAAC,cAAc,CAAC,qBAAqB,CAAC;wBAC7C,SAAS,EAAE,0BAA0B,CAAC,GAAG;qBAC1C;iBACF;aACF;YAED,iBAAiB;YACjB,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE;gBAC9B,QAAQ,EAAE;oBACR;wBACE,UAAU,EAAE,2BAA2B,CAAC,QAAQ;wBAChD,WAAW,EAAE,4BAA4B,CAAC,eAAe;wBACzD,SAAS,EAAE,IAAI;wBACf,KAAK,EAAE,CAAC,cAAc,CAAC,qBAAqB,CAAC;wBAC7C,SAAS,EAAE,0BAA0B,CAAC,GAAG;wBACzC,YAAY,EAAE,IAAI;wBAClB,gBAAgB,EAAE,CAAC,WAAW,CAAC;wBAC/B,iBAAiB,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;wBAC/D,YAAY,EAAE,iCAAiC;wBAC/C,UAAU,EAAE,+BAA+B;wBAC3C,8BAA8B,EAAE,GAAG;qBACpC;iBACF;aACF;SACF;KACF,CAAC,CAAC;AACL,CAAC,CAAC","sourcesContent":["/**\n * Job Resource Configurations\n * \n * Defines resource configurations for JobExecution and JobPayloadStorage.\n * \n * Resource Design Principles:\n * - REPOSITORY_ONLY variants throughout: both resources are reached by queue services and internal retention sweeps, so neither declares an API variant and neither generates a route\n * - Proper requestDto schemas for each variant\n * - isBackendOnly fields are automatically filtered in responses\n * \n * Key Resources:\n * - JobExecution: Tracks job lifecycle; terminal history expires, unresolved scheduled work is retained\n * - JobPayloadStorage: Stores operational payloads (24-hour default) and finite selected scheduled evidence\n */\n\nimport { z } from 'zod';\nimport { createResourceConfiguration_Initialization } from '../resources/resources-config.shared.factory';\nimport { CoreResourceOperation, CoreResourceType, coreResourceShared_FieldIdentifier } from '../resources/resources.shared.core.definitions';\nimport type { ResourceConfiguration } from '../resources/resources-config.shared.schemas';\nimport { ResourceOperationRiskLevel, ResourceOperationVariantType, ResourceRelationship } from '../resources/resources.shared.schemas';\nimport { CORE_APP_ROLES } from '../security/authorizations/roles.shared.schemas';\nimport { ResourceSystemAccessMode } from '../resources/resources-config.shared.schemas';\nimport { \n JobExecutionSchema, \n JobPayloadStorageSchema,\n JobExecutionStatus,\n JobType,\n JobInitiator,\n JobPriority,\n} from './jobs.shared.schemas';\n\n\n// ============================================================================\n// JOB EXECUTION RESOURCE CONFIGURATION\n// ============================================================================\n\n/**\n * Variant keys for JobExecution operations.\n */\nexport enum JobExecutionVariantKey {\n /** Internal queue service operations (default) */\n INTERNAL = 'internal',\n}\n\n/**\n * Core operations available for JobExecution.\n */\ntype JobExecution_CoreOperations = \n | CoreResourceOperation.CREATE \n | CoreResourceOperation.READ \n | CoreResourceOperation.UPDATE\n | CoreResourceOperation.LIST\n | CoreResourceOperation.SEARCH\n | CoreResourceOperation.DELETE_MANY;\n\n// Filter fields for JobExecution LIST/SEARCH\nconst JOB_EXECUTION_FILTER_FIELDS = {\n applicationId: z.string(),\n jobType: z.enum(Object.values(JobType) as [string, ...string[]]),\n status: z.enum(Object.values(JobExecutionStatus) as [string, ...string[]]),\n organizationId: z.string(),\n userId: z.string(),\n queueName: z.string(),\n domainCategory: z.string(),\n initiatedBy: z.enum(Object.values(JobInitiator) as [string, ...string[]]),\n priority: z.enum(Object.values(JobPriority) as [string, ...string[]]),\n};\n\n// Sort fields for JobExecution LIST/SEARCH\nconst JOB_EXECUTION_SORT_FIELDS = ['createdAt', 'completedAt', 'durationMs', 'retryCount'] as const;\n\n/**\n * Factory function for JobExecution resource configuration.\n * \n * JobExecution tracks the lifecycle of all jobs processed by the queue system.\n * It provides visibility into job status, retries, timing, and error information.\n * \n * Variants: one per operation, all REPOSITORY_ONLY (CREATE, READ, UPDATE, LIST, SEARCH, DELETE_MANY), for queue\n * services and bounded retention maintenance. There is no API variant, so no route is generated and nothing here is reachable over\n * HTTP. In particular there is no admin cancel verb: cancelling a job is a queue-service call, not\n * an API call, and adding an operator-facing one means declaring an API variant here first.\n */\nexport const jobExecution_ResourceConfiguration_InitializationFactory = (\n resourcesRelationships: ResourceRelationship[]\n): ResourceConfiguration<undefined, JobExecution_CoreOperations, typeof JobExecutionSchema> => {\n\n // === CREATE Schemas ===\n // Full create schema for internal use\n const JobExecutionCreateInternalSchema = JobExecutionSchema.omit({\n _id: true,\n retryCount: true, // Starts at 0 (default)\n lastRetryAt: true, // Set on retry\n startedAt: true, // Set when processing starts\n completedAt: true, // Set when completed\n durationMs: true, // Calculated on completion\n outputPayloadStorageId: true, // Set after execution\n error: true, // Set on failure\n workerId: true, // Set by worker\n workerHostname: true, // Set by worker\n });\n\n // === UPDATE Schemas ===\n // Internal service can update most fields (status changes, timing, errors)\n const JobExecutionUpdateInternalSchema = z.object({\n // Status updates\n status: z.enum(Object.values(JobExecutionStatus) as [string, ...string[]]).optional(),\n \n // Timing updates\n queuedAt: z.date().optional(),\n startedAt: z.date().optional(),\n completedAt: z.date().optional(),\n durationMs: z.number().int().optional(),\n lastRetryAt: z.date().optional(),\n \n // Retry tracking\n retryCount: z.number().int().min(0).optional(),\n \n // Worker info\n workerId: z.string().optional(),\n workerHostname: z.string().optional(),\n \n // Payload references\n outputPayloadStorageId: z.uuid().optional(),\n \n // Error info\n error: JobExecutionSchema.shape.error,\n });\n\n return createResourceConfiguration_Initialization<\n undefined,\n JobExecution_CoreOperations,\n typeof JobExecutionSchema\n >({\n mainSchema: JobExecutionSchema,\n resourceIdentifier: CoreResourceType.JOB_EXECUTIONS,\n resourceFieldIdentifier: coreResourceShared_FieldIdentifier[CoreResourceType.JOB_EXECUTIONS],\n resourceRelationships: resourcesRelationships,\n isSystemResource: true, // Internal infrastructure component\n\n /**\n * Subject-export disclosure: explicitly FORBIDDEN. A job execution is an OPERATIONAL record of\n * the platform doing work — it references a subject without being data *about* them in any sense\n * a data subject would recognise, and it is already out of Art. 20 scope as controller-generated.\n *\n * FORBIDDEN rather than left undeclared on purpose: this is a decision someone took, not a gap\n * nobody has filled, and the export refusal says so — precisely so a future operator clearing a\n * startup error cannot \"fix\" it by opting in.\n */\n systemAccessPolicy: { exportSubject: ResourceSystemAccessMode.FORBIDDEN },\n\n /*\n * DELIBERATELY NO `retentionPolicy`, and this comment is the declaration of that.\n *\n * Issue #138 asks that every engine resource declaring `exportSubject` either declare an erasure\n * posture or be deliberately and visibly exempt. This one is exempt, for the same reason the export\n * refusal directly above gives: a job execution is an operational record of the platform doing work,\n * not data about a person. It declares no personal-data category, and no field of it would be scrubbed.\n *\n * Declaring `RETAIN_ONLY` here would be worse than saying nothing. The mode is a positive assertion\n * about a resource that holds personal data of a subject; making it would place this row in the\n * subject-erasure population, inject the `retentionStatus` / `impersonalizedAt` markers and the\n * route-less LIST + UPDATE_MANY plumbing, and require a migration on all three schema planes — all to\n * describe an erasure path that never visits this collection.\n *\n * If a future job payload ever carries subject content, that is a `.dataCategories()` declaration on\n * the payload first, and this exemption is then wrong and must be revisited with it.\n */\n\n coreOperations: [\n CoreResourceOperation.CREATE,\n CoreResourceOperation.READ,\n CoreResourceOperation.UPDATE,\n CoreResourceOperation.LIST,\n CoreResourceOperation.SEARCH,\n CoreResourceOperation.DELETE_MANY,\n ],\n \n operationsConfiguration: {\n // The built-in bounded retention sweep resolves this contract before deleting expired rows.\n // Repository-only: supplying maintenance behavior must not create a public deletion route.\n [CoreResourceOperation.DELETE_MANY]: {\n variants: [{\n variantKey: JobExecutionVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.HIGH,\n }],\n },\n // === CREATE ===\n [CoreResourceOperation.CREATE]: {\n variants: [\n // Internal: Queue services create job records\n {\n variantKey: JobExecutionVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n requestDto: JobExecutionCreateInternalSchema,\n },\n ],\n },\n \n // === READ ===\n [CoreResourceOperation.READ]: {\n variants: [\n // Internal: Queue services read job details\n {\n variantKey: JobExecutionVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n },\n ],\n },\n \n // === UPDATE ===\n [CoreResourceOperation.UPDATE]: {\n variants: [\n // Internal: Queue services update job status\n {\n variantKey: JobExecutionVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n requestDto: JobExecutionUpdateInternalSchema,\n },\n ],\n },\n \n // === LIST ===\n [CoreResourceOperation.LIST]: {\n variants: [\n // Internal: Queue services list jobs\n {\n variantKey: JobExecutionVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n },\n ],\n },\n\n // === SEARCH ===\n [CoreResourceOperation.SEARCH]: {\n variants: [\n {\n variantKey: JobExecutionVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n isSearchable: true,\n searchableFields: ['jobId', 'operationPathKey', 'batchRef'],\n searchableOptions: { caseSensitive: false, fullMatchOnly: false },\n filterFields: JOB_EXECUTION_FILTER_FIELDS,\n sortFields: JOB_EXECUTION_SORT_FIELDS,\n maxPaginatedResultPerPageLimit: 100,\n },\n ],\n },\n },\n });\n};\n\n// ============================================================================\n// JOB PAYLOAD STORAGE RESOURCE CONFIGURATION\n// ============================================================================\n\n/**\n * Variant keys for JobPayloadStorage operations.\n */\nexport enum JobPayloadStorageVariantKey {\n /** Internal queue service operations (default, only variant) */\n INTERNAL = 'internal',\n}\n\n/**\n * Core operations available for JobPayloadStorage.\n */\ntype JobPayloadStorage_CoreOperations = \n | CoreResourceOperation.CREATE \n | CoreResourceOperation.READ \n | CoreResourceOperation.DELETE\n | CoreResourceOperation.SEARCH\n | CoreResourceOperation.DELETE_MANY;\n\n// Filter fields for JobPayloadStorage\nconst JOB_PAYLOAD_STORAGE_FILTER_FIELDS = {\n applicationId: z.string(),\n isCompressed: z.boolean(),\n};\n\n// Sort fields for JobPayloadStorage\nconst JOB_PAYLOAD_STORAGE_SORT_FIELDS = ['createdAt', 'expiresAt', 'payloadSizeBytes'] as const;\n\n/**\n * Factory function for JobPayloadStorage resource configuration.\n * \n * JobPayloadStorage stores large job payloads (>100KB) that exceed RabbitMQ\n * message size limits. Referenced by storageId in JobPayload messages.\n * \n * Variants:\n * - INTERNAL only: No API exposure (contains sensitive payload data)\n */\nexport const jobPayloadStorage_ResourceConfiguration_InitializationFactory = (\n resourcesRelationships: ResourceRelationship[]\n): ResourceConfiguration<undefined, JobPayloadStorage_CoreOperations, typeof JobPayloadStorageSchema> => {\n\n // === CREATE Schema ===\n // Internal services provide all data except auto-generated fields\n const JobPayloadStorageCreateInternalSchema = JobPayloadStorageSchema.omit({\n _id: true,\n createdAt: true, // Repository owns timestamps; input cleaning removes them before DTO validation.\n referenceCount: true, // Starts at 1 (default)\n });\n\n return createResourceConfiguration_Initialization<\n undefined,\n JobPayloadStorage_CoreOperations,\n typeof JobPayloadStorageSchema\n >({\n mainSchema: JobPayloadStorageSchema,\n resourceIdentifier: CoreResourceType.JOB_PAYLOAD_STORAGE,\n resourceFieldIdentifier: coreResourceShared_FieldIdentifier[CoreResourceType.JOB_PAYLOAD_STORAGE],\n resourceRelationships: resourcesRelationships,\n isSystemResource: true, // Internal infrastructure component\n\n coreOperations: [\n CoreResourceOperation.CREATE,\n CoreResourceOperation.READ,\n CoreResourceOperation.DELETE,\n CoreResourceOperation.SEARCH,\n CoreResourceOperation.DELETE_MANY,\n ],\n \n operationsConfiguration: {\n // The built-in bounded retention sweep resolves this contract before deleting expired rows.\n // Repository-only: supplying maintenance behavior must not create a public deletion route.\n [CoreResourceOperation.DELETE_MANY]: {\n variants: [{\n variantKey: JobPayloadStorageVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.HIGH,\n }],\n },\n // === CREATE ===\n [CoreResourceOperation.CREATE]: {\n variants: [\n // Internal: Queue services store payloads\n {\n variantKey: JobPayloadStorageVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n requestDto: JobPayloadStorageCreateInternalSchema,\n },\n ],\n },\n \n // === READ ===\n [CoreResourceOperation.READ]: {\n variants: [\n // Internal: Queue services retrieve payloads\n {\n variantKey: JobPayloadStorageVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n },\n ],\n },\n \n // === DELETE ===\n [CoreResourceOperation.DELETE]: {\n variants: [\n // Internal: Queue services delete payloads\n {\n variantKey: JobPayloadStorageVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n },\n ],\n },\n\n // === SEARCH ===\n [CoreResourceOperation.SEARCH]: {\n variants: [\n {\n variantKey: JobPayloadStorageVariantKey.INTERNAL,\n variantType: ResourceOperationVariantType.REPOSITORY_ONLY,\n isDefault: true,\n roles: [CORE_APP_ROLES.APP_ADMIN_SUPER_ADMIN],\n riskLevel: ResourceOperationRiskLevel.LOW,\n isSearchable: true,\n searchableFields: ['storageId'],\n searchableOptions: { caseSensitive: true, fullMatchOnly: true },\n filterFields: JOB_PAYLOAD_STORAGE_FILTER_FIELDS,\n sortFields: JOB_PAYLOAD_STORAGE_SORT_FIELDS,\n maxPaginatedResultPerPageLimit: 100,\n },\n ],\n },\n },\n });\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jobs.shared.schemas.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"jobs.shared.schemas.d.ts","sourceRoot":"","sources":["../../../../src/queue/jobs.shared.schemas.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
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
|
+
{"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"]}
|