@wildo-ai/saas-models 1.1.4 → 1.1.5
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/_inspect.d.ts.map +1 -1
- package/dist/esm/applications/application-metadata.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/applications/application-metadata.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/application-subject.shared.schemas.d.ts.map +1 -1
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.d.ts +1 -1
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.js +2 -2
- package/dist/esm/applications/application-versions.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/applications/applications-context.schemas.d.ts +236 -18
- package/dist/esm/applications/applications-context.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts +1 -0
- package/dist/esm/applications/applications.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.resources-config.schemas.js +1 -1
- package/dist/esm/applications/applications.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/applications/applications.shared.schemas.d.ts +3 -2
- package/dist/esm/applications/applications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/applications/applications.shared.schemas.js +40 -5
- package/dist/esm/applications/applications.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-account.shared.resources-config.schemas.d.ts +1 -2
- 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 +1 -2
- 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-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 +87 -5
- package/dist/esm/billing/billing-enums.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-enums.shared.schemas.js +91 -5
- package/dist/esm/billing/billing-enums.shared.schemas.js.map +1 -1
- package/dist/esm/billing/billing-types.shared.schemas.d.ts +24 -4
- package/dist/esm/billing/billing-types.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/billing-types.shared.schemas.js +24 -8
- 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.schemas.d.ts.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.schemas.d.ts.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 +32 -2
- 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 +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.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product.shared.resources-config.schemas.js +32 -2
- package/dist/esm/billing/product.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/product.shared.schemas.d.ts +1 -0
- package/dist/esm/billing/product.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/product.shared.schemas.js +3 -0
- 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 +33 -3
- 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/referral.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/referral.shared.resources-config.schemas.js +22 -2
- package/dist/esm/billing/referral.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/referral.shared.schemas.d.ts +1 -0
- package/dist/esm/billing/referral.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/referral.shared.schemas.js +3 -0
- package/dist/esm/billing/referral.shared.schemas.js.map +1 -1
- package/dist/esm/billing/subscription.shared.resources-config.schemas.d.ts +23 -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 +48 -2
- package/dist/esm/billing/subscription.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/billing/subscription.shared.schemas.d.ts +1 -0
- package/dist/esm/billing/subscription.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/subscription.shared.schemas.js +3 -0
- package/dist/esm/billing/subscription.shared.schemas.js.map +1 -1
- package/dist/esm/billing/usage-flush-evidence.shared.schemas.d.ts +49 -0
- package/dist/esm/billing/usage-flush-evidence.shared.schemas.d.ts.map +1 -0
- package/dist/esm/billing/usage-flush-evidence.shared.schemas.js +48 -0
- package/dist/esm/billing/usage-flush-evidence.shared.schemas.js.map +1 -0
- package/dist/esm/billing/usage-record.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/billing/usage-record.shared.schemas.d.ts +1 -0
- package/dist/esm/billing/usage-record.shared.schemas.d.ts.map +1 -1
- package/dist/esm/billing/usage-record.shared.schemas.js +3 -0
- 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/chart-definition-builder.shared.d.ts.map +1 -1
- package/dist/esm/companion/provider-discovery.shared.schemas.d.ts +7 -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-exports.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.d.ts +14 -3
- 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 +21 -7
- package/dist/esm/compliance/audit-trails/application-audit-logs.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.d.ts +450 -0
- package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.js +723 -0
- package/dist/esm/compliance/audit-trails/audit-export-projection.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/audit-trails/audit-log-sink.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts +2 -2
- package/dist/esm/compliance/audit-trails/audit-logs.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-trail-config.shared.schemas.d.ts +8 -0
- 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 +15 -0
- 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 +610 -16
- 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 +769 -38
- 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 +29 -0
- package/dist/esm/compliance/audit-trails/security-audit-event-envelope.shared.schema.js.map +1 -1
- package/dist/esm/compliance/documents/governed-document-interactions.shared.schemas.d.ts +463 -0
- package/dist/esm/compliance/documents/governed-document-interactions.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/documents/governed-document-interactions.shared.schemas.js +526 -0
- package/dist/esm/compliance/documents/governed-document-interactions.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/documents/governed-documents.shared.schemas.d.ts +539 -15
- package/dist/esm/compliance/documents/governed-documents.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/documents/governed-documents.shared.schemas.js +402 -14
- 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 +18 -0
- package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.resources-config.schemas.js +89 -0
- package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.schemas.d.ts +47 -0
- package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.schemas.js +73 -0
- package/dist/esm/compliance/documents/user-governed-document-acceptances.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts +21 -0
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/ai-use-posture.shared.schemas.js +39 -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 +33 -0
- package/dist/esm/compliance/privacy/capability-consent-purposes.shared.utils.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/capability-consent-purposes.shared.utils.js +30 -0
- package/dist/esm/compliance/privacy/capability-consent-purposes.shared.utils.js.map +1 -0
- package/dist/esm/compliance/privacy/client-storage.shared.schemas.d.ts +6 -5
- package/dist/esm/compliance/privacy/client-storage.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/client-storage.shared.schemas.js +15 -5
- 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 +127 -0
- package/dist/esm/compliance/privacy/consent-gate-vocabulary.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/consent-gate-vocabulary.shared.schemas.js +94 -0
- package/dist/esm/compliance/privacy/consent-gate-vocabulary.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/consent-purposes.shared.d.ts +125 -0
- package/dist/esm/compliance/privacy/consent-purposes.shared.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/consent-purposes.shared.js +136 -0
- package/dist/esm/compliance/privacy/consent-purposes.shared.js.map +1 -0
- package/dist/esm/compliance/privacy/data-retention.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.d.ts +91 -0
- package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.js +123 -0
- package/dist/esm/compliance/privacy/data-subject-rights.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/impersonalization-scrub.shared.utils.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/impersonalization.shared.schemas.d.ts.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 +68 -25
- 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 +74 -22
- 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-declaration.shared.utils.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts +9 -17
- package/dist/esm/compliance/privacy/privacy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/privacy.shared.schemas.js +74 -31
- package/dist/esm/compliance/privacy/privacy.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-schedule.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/subject-erasure-lane-evidence.shared.schemas.d.ts +47 -0
- package/dist/esm/compliance/privacy/subject-erasure-lane-evidence.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/privacy/subject-erasure-lane-evidence.shared.schemas.js +98 -0
- package/dist/esm/compliance/privacy/subject-erasure-lane-evidence.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts +368 -35
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/subject-erasure.shared.schemas.js +403 -17
- 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.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 +56 -0
- package/dist/esm/compliance/review-cadence.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/review-cadence.shared.schemas.js +71 -0
- package/dist/esm/compliance/review-cadence.shared.schemas.js.map +1 -0
- package/dist/esm/compliance/risk-posture.shared.schemas.d.ts +161 -0
- package/dist/esm/compliance/risk-posture.shared.schemas.d.ts.map +1 -0
- package/dist/esm/compliance/risk-posture.shared.schemas.js +166 -0
- package/dist/esm/compliance/risk-posture.shared.schemas.js.map +1 -0
- package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts +4 -3
- package/dist/esm/config/analytics-value-moments.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/analytics-value-moments.shared.schemas.js +4 -3
- package/dist/esm/config/analytics-value-moments.shared.schemas.js.map +1 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts +222 -9
- package/dist/esm/config/app-configuration-shared.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/app-configuration-shared.shared.schemas.js +232 -9
- package/dist/esm/config/app-configuration-shared.shared.schemas.js.map +1 -1
- package/dist/esm/config/auth-config-resolution.shared.utils.d.ts +75 -3
- package/dist/esm/config/auth-config-resolution.shared.utils.d.ts.map +1 -1
- package/dist/esm/config/auth-config-resolution.shared.utils.js +93 -4
- package/dist/esm/config/auth-config-resolution.shared.utils.js.map +1 -1
- package/dist/esm/config/brand-assets.shared.schemas.d.ts +5 -4
- package/dist/esm/config/brand-assets.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/brand-assets.shared.schemas.js +14 -4
- package/dist/esm/config/brand-assets.shared.schemas.js.map +1 -1
- package/dist/esm/config/entity-identity-config.shared.schemas.d.ts +463 -19
- package/dist/esm/config/entity-identity-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/entity-identity-config.shared.schemas.js +535 -28
- package/dist/esm/config/entity-identity-config.shared.schemas.js.map +1 -1
- package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts +24 -24
- package/dist/esm/config/frontend/chart-definition.shared.schemas.d.ts.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 +21 -17
- package/dist/esm/config/frontend/navigation.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/frontend/navigation.shared.schemas.js +58 -40
- package/dist/esm/config/frontend/navigation.shared.schemas.js.map +1 -1
- package/dist/esm/config/frontend/onboarding.shared.schemas.d.ts +90 -133
- package/dist/esm/config/frontend/onboarding.shared.schemas.d.ts.map +1 -1
- package/dist/esm/config/frontend/onboarding.shared.schemas.js +148 -100
- package/dist/esm/config/frontend/onboarding.shared.schemas.js.map +1 -1
- package/dist/esm/config/registration-acquisition-policy.shared.utils.d.ts.map +1 -1
- package/dist/esm/config-authoring.entry.d.ts.map +1 -1
- package/dist/esm/crdt/crdt-merge.shared.utils.d.ts.map +1 -1
- package/dist/esm/data-seeding/data-seeding-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/errors/errors.custom-message-ref.shared.definitions.d.ts +140 -43
- 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 +141 -42
- 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 +1 -1
- package/dist/esm/errors/errors.shared.definitions.js.map +1 -1
- package/dist/esm/errors/errors.shared.schemas.d.ts +29 -40
- package/dist/esm/errors/errors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/errors/errors.shared.schemas.js +37 -54
- package/dist/esm/errors/errors.shared.schemas.js.map +1 -1
- package/dist/esm/errors/errors.shared.utils.d.ts +24 -0
- package/dist/esm/errors/errors.shared.utils.d.ts.map +1 -1
- package/dist/esm/errors/errors.shared.utils.js +39 -0
- package/dist/esm/errors/errors.shared.utils.js.map +1 -1
- package/dist/esm/errors/thrown-value-description.shared.utils.d.ts +27 -0
- package/dist/esm/errors/thrown-value-description.shared.utils.d.ts.map +1 -0
- package/dist/esm/errors/thrown-value-description.shared.utils.js +67 -0
- package/dist/esm/errors/thrown-value-description.shared.utils.js.map +1 -0
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.d.ts +48 -73
- 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 +103 -9
- package/dist/esm/external-data/external-data-pipeline.shared.schemas.js.map +1 -1
- package/dist/esm/external-data.exports.d.ts +1 -0
- package/dist/esm/external-data.exports.d.ts.map +1 -1
- package/dist/esm/external-data.exports.js +1 -0
- package/dist/esm/external-data.exports.js.map +1 -1
- package/dist/esm/external-providers/compose-provider-registry.shared.d.ts.map +1 -1
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts +11 -12
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/engine-capabilities.shared.schemas.js +11 -12
- 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 +5 -3
- 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 +5 -3
- 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 +77 -0
- package/dist/esm/external-providers/engine-capability-surface.shared.d.ts.map +1 -0
- package/dist/esm/external-providers/engine-capability-surface.shared.js +173 -0
- package/dist/esm/external-providers/engine-capability-surface.shared.js.map +1 -0
- package/dist/esm/external-providers/external-providers.shared.schemas.d.ts +2 -0
- package/dist/esm/external-providers/external-providers.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/external-providers.shared.schemas.js +21 -0
- package/dist/esm/external-providers/external-providers.shared.schemas.js.map +1 -1
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts +129 -9
- package/dist/esm/external-providers/frontend-bootstrap.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/frontend-capability-public-config.shared.schemas.d.ts +114 -0
- 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 +148 -0
- 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 +54 -3
- 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 +58 -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 +12 -3
- 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 +14 -5
- package/dist/esm/external-providers/frontend-provider-public-config.shared.js.map +1 -1
- package/dist/esm/external-providers/provider-authentication-assurance.shared.schemas.d.ts +30 -0
- package/dist/esm/external-providers/provider-authentication-assurance.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-authentication-assurance.shared.schemas.js +32 -0
- package/dist/esm/external-providers/provider-authentication-assurance.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-browser-operations.shared.schemas.d.ts +86 -0
- package/dist/esm/external-providers/provider-browser-operations.shared.schemas.d.ts.map +1 -0
- package/dist/esm/external-providers/provider-browser-operations.shared.schemas.js +85 -0
- package/dist/esm/external-providers/provider-browser-operations.shared.schemas.js.map +1 -0
- package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts +14 -13
- package/dist/esm/external-providers/provider-capability.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-capability.shared.schemas.js +10 -10
- 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 +7 -5
- 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 +7 -5
- 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 +8 -5
- package/dist/esm/external-providers/provider-metadata.shared.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/provider-metadata.shared.schemas.js +5 -2
- package/dist/esm/external-providers/provider-metadata.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-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-pricing.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/application-features.shared.resources-config.schemas.d.ts +2 -0
- 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 +30 -3
- package/dist/esm/features/application-features.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/features/connected-feature.example.d.ts +64 -0
- package/dist/esm/features/connected-feature.example.d.ts.map +1 -0
- package/dist/esm/features/connected-feature.example.js +86 -0
- package/dist/esm/features/connected-feature.example.js.map +1 -0
- 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-registry.shared.d.ts.map +1 -1
- package/dist/esm/features/feature-resolution.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/scope-features.shared.schemas.d.ts +53 -0
- package/dist/esm/features/scope-features.shared.schemas.d.ts.map +1 -1
- package/dist/esm/features/scope-features.shared.schemas.js +37 -0
- package/dist/esm/features/scope-features.shared.schemas.js.map +1 -1
- package/dist/esm/features/user-features.shared.resources-config.schemas.d.ts +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 +34 -52
- 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 +3 -3
- package/dist/esm/files/files.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/files/files.shared.resources-config.schemas.js +3 -3
- 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/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.schemas.d.ts.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.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/actors.shared.schemas.d.ts +152 -129
- package/dist/esm/flows-actors/actors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/actors.shared.schemas.js +99 -2
- package/dist/esm/flows-actors/actors.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts +6 -0
- package/dist/esm/flows-actors/agent-traceability.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/agents.shared.schemas.d.ts +3 -3
- package/dist/esm/flows-actors/agents.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/agents.shared.schemas.js +11 -5
- package/dist/esm/flows-actors/agents.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts +13 -0
- package/dist/esm/flows-actors/deliberation.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/deliberation.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/execution-plan-readiness.shared.utils.d.ts +45 -0
- package/dist/esm/flows-actors/execution-plan-readiness.shared.utils.d.ts.map +1 -0
- package/dist/esm/flows-actors/execution-plan-readiness.shared.utils.js +51 -0
- package/dist/esm/flows-actors/execution-plan-readiness.shared.utils.js.map +1 -0
- 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.schemas.d.ts +31 -0
- 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 +61 -3
- 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.schemas.d.ts +2 -2
- package/dist/esm/flows-actors/flows-actors-task.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.d.ts +16 -8
- 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 +23 -11
- package/dist/esm/flows-actors/flows-actors.commons.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows-actors.configuration.shared.schemas.d.ts +0 -189
- 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 +14 -50
- 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 +0 -3
- 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 +0 -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.schemas.d.ts +1 -67
- 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 +1 -2
- package/dist/esm/flows-actors/flows-actors.system.shared.schemas.js.map +1 -1
- package/dist/esm/flows-actors/flows.shared.schemas.d.ts +0 -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 +121 -0
- package/dist/esm/flows-actors/human-decision.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/human-decision.shared.schemas.js +252 -0
- package/dist/esm/flows-actors/human-decision.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/mcp-servers.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/mcp-servers.shared.schemas.js +4 -2
- package/dist/esm/flows-actors/mcp-servers.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/provider-call-records.shared.resources-config.schemas.d.ts +24 -0
- package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.js +80 -0
- package/dist/esm/flows-actors/provider-call-records.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/flows-actors/provider-call-records.shared.schemas.d.ts +123 -0
- package/dist/esm/flows-actors/provider-call-records.shared.schemas.d.ts.map +1 -0
- package/dist/esm/flows-actors/provider-call-records.shared.schemas.js +181 -0
- package/dist/esm/flows-actors/provider-call-records.shared.schemas.js.map +1 -0
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts +58 -81
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.js +75 -38
- package/dist/esm/flows-actors/tasks.actors.shared.schemas.js.map +1 -1
- package/dist/esm/frontend-definitions/settings-destination-ref.definitions.d.ts +106 -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 +117 -0
- package/dist/esm/frontend-definitions/settings-destination-ref.definitions.js.map +1 -1
- package/dist/esm/guidance/guidance-flow.shared.schemas.d.ts +106 -24
- package/dist/esm/guidance/guidance-flow.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/guidance-flow.shared.schemas.js +152 -14
- 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.schemas.d.ts.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-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.schemas.d.ts +0 -6
- package/dist/esm/guidance/lifecycle-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/lifecycle-state.shared.schemas.js +0 -19
- package/dist/esm/guidance/lifecycle-state.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/milestone-builders.shared.d.ts +4 -2
- package/dist/esm/guidance/milestone-builders.shared.d.ts.map +1 -1
- package/dist/esm/guidance/milestone-builders.shared.js +4 -2
- package/dist/esm/guidance/milestone-builders.shared.js.map +1 -1
- package/dist/esm/guidance/milestone-definition.shared.schemas.d.ts +66 -4
- package/dist/esm/guidance/milestone-definition.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/milestone-definition.shared.schemas.js +50 -0
- package/dist/esm/guidance/milestone-definition.shared.schemas.js.map +1 -1
- package/dist/esm/guidance/progression-presentation.shared.schemas.d.ts +71 -0
- package/dist/esm/guidance/progression-presentation.shared.schemas.d.ts.map +1 -0
- package/dist/esm/guidance/progression-presentation.shared.schemas.js +72 -0
- package/dist/esm/guidance/progression-presentation.shared.schemas.js.map +1 -0
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts +2 -0
- package/dist/esm/guidance/progression-state.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/progression-state.shared.schemas.d.ts +4 -0
- package/dist/esm/guidance/progression-state.shared.schemas.d.ts.map +1 -1
- package/dist/esm/guidance/progression-state.shared.schemas.js +5 -0
- 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 +2 -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 +181 -412
- 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 +249 -199
- package/dist/esm/http-api-binding/http-api-binding.shared.schemas.js.map +1 -1
- package/dist/esm/http-api-binding/http-api-transport-dialect.shared.d.ts +107 -0
- package/dist/esm/http-api-binding/http-api-transport-dialect.shared.d.ts.map +1 -0
- package/dist/esm/http-api-binding/http-api-transport-dialect.shared.js +108 -0
- package/dist/esm/http-api-binding/http-api-transport-dialect.shared.js.map +1 -0
- package/dist/esm/http-api-binding/read-through-engine-anchors.shared.d.ts +38 -0
- package/dist/esm/http-api-binding/read-through-engine-anchors.shared.d.ts.map +1 -0
- package/dist/esm/http-api-binding/read-through-engine-anchors.shared.js +42 -0
- package/dist/esm/http-api-binding/read-through-engine-anchors.shared.js.map +1 -0
- package/dist/esm/i18n/labelling.dto.shared.schemas.d.ts.map +1 -1
- package/dist/esm/index.d.ts +41 -4
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +71 -16
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/meta-workflows/actions.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/meta-workflows/actions.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/meta-workflows/catalog.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/meta-workflows/catalog.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/meta-workflows/coding-tasks.meta-workflows.shared.schemas.d.ts +130 -0
- package/dist/esm/meta-workflows/coding-tasks.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/meta-workflows/coding-tasks.meta-workflows.shared.schemas.js +104 -0
- package/dist/esm/meta-workflows/coding-tasks.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/meta-workflows/context-selection.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/decisions.meta-workflows.shared.schemas.d.ts +64 -0
- package/dist/esm/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/decisions.meta-workflows.shared.schemas.js +47 -0
- package/dist/esm/meta-workflows/decisions.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.d.ts +544 -0
- package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.js +638 -0
- package/dist/esm/meta-workflows/orchestration.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/portable-primitives.meta-workflows.shared.schemas.d.ts +15 -8
- package/dist/esm/meta-workflows/portable-primitives.meta-workflows.shared.schemas.d.ts.map +1 -0
- package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/portable-primitives.meta-workflows.shared.schemas.js +15 -8
- package/dist/esm/meta-workflows/portable-primitives.meta-workflows.shared.schemas.js.map +1 -0
- package/dist/esm/meta-workflows.exports.d.ts +21 -25
- package/dist/esm/meta-workflows.exports.d.ts.map +1 -1
- package/dist/esm/meta-workflows.exports.js +21 -25
- 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/notifications/email/email-context.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/email/email-submission.shared.enums.d.ts +16 -0
- package/dist/esm/notifications/email/email-submission.shared.enums.d.ts.map +1 -0
- package/dist/esm/notifications/email/email-submission.shared.enums.js +17 -0
- package/dist/esm/notifications/email/email-submission.shared.enums.js.map +1 -0
- package/dist/esm/notifications/email/email-template-registry.shared.schemas.d.ts +36 -0
- 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 +50 -3
- 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/m2m/m2m-webhook-delivery-contract.shared.d.ts.map +1 -1
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/m2m/m2m-webhook-delivery-log.shared.resources-config.schemas.js +4 -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 +2 -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 +3 -2
- 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 +44 -3
- 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 +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 +12 -33
- package/dist/esm/notifications/notification-badges.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/notifications/notifications.shared.schemas.d.ts +19 -8
- package/dist/esm/notifications/notifications.shared.schemas.d.ts.map +1 -1
- package/dist/esm/notifications/notifications.shared.schemas.js +19 -8
- package/dist/esm/notifications/notifications.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/application-owner-organization.shared.schemas.d.ts +145 -0
- package/dist/esm/organizations/application-owner-organization.shared.schemas.d.ts.map +1 -0
- package/dist/esm/organizations/application-owner-organization.shared.schemas.js +146 -0
- package/dist/esm/organizations/application-owner-organization.shared.schemas.js.map +1 -0
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.d.ts +2 -0
- 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 +26 -3
- package/dist/esm/organizations/organization-features.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.d.ts +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 +18 -14
- package/dist/esm/organizations/organization-members.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.d.ts +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-members.shared.schemas.js +9 -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.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.schemas.d.ts +2 -1
- package/dist/esm/organizations/organization-preferences.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-preferences.shared.schemas.js +3 -0
- 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.schemas.d.ts +3 -1
- package/dist/esm/organizations/organization-profile.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-profile.shared.schemas.js +4 -2
- 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-members.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-members.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing-decision.shared.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing.example.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts +29 -2
- package/dist/esm/organizations/organization-unit-narrowing.shared.d.ts.map +1 -1
- package/dist/esm/organizations/organization-unit-narrowing.shared.js +27 -0
- package/dist/esm/organizations/organization-unit-narrowing.shared.js.map +1 -1
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.d.ts +2 -0
- 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 +3 -0
- package/dist/esm/organizations/organization-units.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organization-units.shared.schemas.d.ts +17 -5
- package/dist/esm/organizations/organization-units.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organization-units.shared.schemas.js +65 -5
- package/dist/esm/organizations/organization-units.shared.schemas.js.map +1 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts +51 -7
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.js +151 -7
- package/dist/esm/organizations/organizations.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/organizations/organizations.shared.schemas.d.ts +18 -83
- package/dist/esm/organizations/organizations.shared.schemas.d.ts.map +1 -1
- package/dist/esm/organizations/organizations.shared.schemas.js +37 -19
- package/dist/esm/organizations/organizations.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 +1 -0
- package/dist/esm/provider-registration-runtime.exports.d.ts.map +1 -1
- package/dist/esm/provider-registration-runtime.exports.js +1 -0
- package/dist/esm/provider-registration-runtime.exports.js.map +1 -1
- package/dist/esm/public-runtime/index.d.ts +39 -10
- package/dist/esm/public-runtime/index.d.ts.map +1 -1
- package/dist/esm/public-runtime/index.js +39 -10
- package/dist/esm/public-runtime/index.js.map +1 -1
- package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts +7 -8
- package/dist/esm/queue/jobs.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.resources-config.schemas.js +30 -6
- package/dist/esm/queue/jobs.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/queue/jobs.shared.schemas.d.ts +388 -2
- package/dist/esm/queue/jobs.shared.schemas.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.schemas.js +315 -11
- package/dist/esm/queue/jobs.shared.schemas.js.map +1 -1
- package/dist/esm/queue/jobs.shared.utils.d.ts +6 -4
- package/dist/esm/queue/jobs.shared.utils.d.ts.map +1 -1
- package/dist/esm/queue/jobs.shared.utils.js +5 -4
- package/dist/esm/queue/jobs.shared.utils.js.map +1 -1
- package/dist/esm/queue/queues.shared.schemas.d.ts +20 -8
- package/dist/esm/queue/queues.shared.schemas.d.ts.map +1 -1
- package/dist/esm/queue/queues.shared.schemas.js +23 -18
- package/dist/esm/queue/queues.shared.schemas.js.map +1 -1
- package/dist/esm/queue/queues.shared.utils.d.ts +4 -2
- package/dist/esm/queue/queues.shared.utils.d.ts.map +1 -1
- package/dist/esm/queue/queues.shared.utils.js +4 -2
- package/dist/esm/queue/queues.shared.utils.js.map +1 -1
- package/dist/esm/rag/rag-retrieval-health.shared.d.ts +27 -0
- package/dist/esm/rag/rag-retrieval-health.shared.d.ts.map +1 -0
- package/dist/esm/rag/rag-retrieval-health.shared.js +29 -0
- package/dist/esm/rag/rag-retrieval-health.shared.js.map +1 -0
- package/dist/esm/requests/header-keys.shared.d.ts +6 -0
- package/dist/esm/requests/header-keys.shared.d.ts.map +1 -1
- package/dist/esm/requests/header-keys.shared.js +7 -0
- package/dist/esm/requests/header-keys.shared.js.map +1 -1
- package/dist/esm/requests/idempotency-key.shared.d.ts +76 -0
- package/dist/esm/requests/idempotency-key.shared.d.ts.map +1 -0
- package/dist/esm/requests/idempotency-key.shared.js +112 -0
- package/dist/esm/requests/idempotency-key.shared.js.map +1 -0
- package/dist/esm/requests/manual-controllers-routes-documentation.d.ts.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-documentation.js +218 -17
- package/dist/esm/requests/manual-controllers-routes-documentation.js.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-urls.d.ts +87 -0
- package/dist/esm/requests/manual-controllers-routes-urls.d.ts.map +1 -1
- package/dist/esm/requests/manual-controllers-routes-urls.js +102 -0
- package/dist/esm/requests/manual-controllers-routes-urls.js.map +1 -1
- package/dist/esm/requests/rate-limits.shared.schemas.d.ts.map +1 -1
- package/dist/esm/requests/rate-limits.shared.schemas.js.map +1 -1
- package/dist/esm/requests/websocket.shared.schemas.d.ts +200 -24
- package/dist/esm/requests/websocket.shared.schemas.d.ts.map +1 -1
- package/dist/esm/requests/websocket.shared.schemas.js +219 -5
- package/dist/esm/requests/websocket.shared.schemas.js.map +1 -1
- package/dist/esm/resources/child-operations.shared.schemas.d.ts +56 -5
- package/dist/esm/resources/child-operations.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/child-operations.shared.schemas.js +97 -5
- package/dist/esm/resources/child-operations.shared.schemas.js.map +1 -1
- package/dist/esm/resources/context-policy.shared.schemas.d.ts +20 -0
- package/dist/esm/resources/context-policy.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/context-policy.shared.schemas.js +3 -0
- package/dist/esm/resources/context-policy.shared.schemas.js.map +1 -1
- package/dist/esm/resources/relationship-display.shared.schemas.d.ts.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 +498 -29
- package/dist/esm/resources/resources-config.shared.factory.js.map +1 -1
- package/dist/esm/resources/resources-config.shared.schemas.d.ts +623 -45
- package/dist/esm/resources/resources-config.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources-config.shared.schemas.js +315 -22
- 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 +377 -69
- 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.shared.core.definitions.d.ts +19 -0
- package/dist/esm/resources/resources.shared.core.definitions.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.core.definitions.js +28 -0
- package/dist/esm/resources/resources.shared.core.definitions.js.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.d.ts +256 -10
- package/dist/esm/resources/resources.shared.schemas.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.schemas.js +209 -9
- package/dist/esm/resources/resources.shared.schemas.js.map +1 -1
- package/dist/esm/resources/resources.shared.utils.d.ts +3 -2
- package/dist/esm/resources/resources.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/resources.shared.utils.js +38 -6
- 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/composition-cascade-deletability.validation.d.ts +44 -12
- package/dist/esm/resources/utils/composition-cascade-deletability.validation.d.ts.map +1 -1
- package/dist/esm/resources/utils/composition-cascade-deletability.validation.js +46 -23
- 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/context-addressed-composition-singleton.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/dependent-lifecycle-classification.validation.d.ts +61 -0
- package/dist/esm/resources/utils/dependent-lifecycle-classification.validation.d.ts.map +1 -0
- package/dist/esm/resources/utils/dependent-lifecycle-classification.validation.js +79 -0
- package/dist/esm/resources/utils/dependent-lifecycle-classification.validation.js.map +1 -0
- package/dist/esm/resources/utils/duplicate-relationship-registration.validation.d.ts.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/initiator-stamped-field-satisfiability.validation.d.ts +60 -0
- package/dist/esm/resources/utils/initiator-stamped-field-satisfiability.validation.d.ts.map +1 -0
- package/dist/esm/resources/utils/initiator-stamped-field-satisfiability.validation.js +80 -0
- package/dist/esm/resources/utils/initiator-stamped-field-satisfiability.validation.js.map +1 -0
- package/dist/esm/resources/utils/persistence-adapter-discrimination.shared.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/populated-file-fields.shared.utils.d.ts +21 -0
- package/dist/esm/resources/utils/populated-file-fields.shared.utils.d.ts.map +1 -0
- package/dist/esm/resources/utils/populated-file-fields.shared.utils.js +159 -0
- package/dist/esm/resources/utils/populated-file-fields.shared.utils.js.map +1 -0
- package/dist/esm/resources/utils/repository-dto-builder.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/required-fk-fillability.validation.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-operation-type-guards.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.factory.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.relationships.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.schemas.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-polymorphism.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-subtree.utils.d.ts.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-naming.utils.d.ts +15 -0
- package/dist/esm/resources/utils/resources-config-naming.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/resources-config-naming.utils.js +56 -11
- 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 +51 -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 +210 -51
- 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.urls-builder.utils.d.ts +34 -0
- 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 +45 -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-serialization.utils.d.ts.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-type-inference.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-type-utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/schema-variant-resolver.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts +29 -0
- package/dist/esm/resources/utils/shared-persistence-collection.utils.d.ts.map +1 -1
- package/dist/esm/resources/utils/shared-persistence-collection.utils.js +30 -0
- 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 +49 -11
- package/dist/esm/resources/utils/templatable-file-fields.shared.utils.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/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 +4 -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 +4 -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/authentications/anonymous-session/anonymous-session.shared.contract.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts +128 -16
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.js +160 -6
- package/dist/esm/security/authentications/authentication.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.schemas.d.ts +324 -9
- package/dist/esm/security/authentications/authentication.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.schemas.js +411 -8
- package/dist/esm/security/authentications/authentication.shared.schemas.js.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.utils.d.ts +87 -4
- package/dist/esm/security/authentications/authentication.shared.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/authentication.shared.utils.js +95 -6
- package/dist/esm/security/authentications/authentication.shared.utils.js.map +1 -1
- package/dist/esm/security/authentications/consumable-token.shared.schemas.d.ts +23 -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 +23 -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 +7 -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 +7 -1
- package/dist/esm/security/authentications/cross-frontend-handoff.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/password-blocklist.shared.utils.d.ts +74 -0
- package/dist/esm/security/authentications/password-blocklist.shared.utils.d.ts.map +1 -0
- package/dist/esm/security/authentications/password-blocklist.shared.utils.js +122 -0
- package/dist/esm/security/authentications/password-blocklist.shared.utils.js.map +1 -0
- package/dist/esm/security/authentications/password-reset.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts +88 -2
- package/dist/esm/security/authentications/registration.shared.dto.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/registration.shared.dto.schemas.js +149 -2
- package/dist/esm/security/authentications/registration.shared.dto.schemas.js.map +1 -1
- package/dist/esm/security/authentications/scim/scim-organization-unit-mapping.shared.d.ts +57 -11
- 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 +44 -11
- 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 +20 -7
- 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 +16 -2
- 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 +32 -2
- 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 +7 -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/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 +4 -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-outbox.shared.resources-config.schemas.d.ts +27 -0
- package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.resources-config.schemas.js +109 -0
- package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.schemas.d.ts +66 -0
- package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.schemas.js +107 -0
- package/dist/esm/security/authentications/siem/siem-delivery-outbox.shared.schemas.js.map +1 -0
- 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 +19 -0
- 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 +50 -13
- 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 +18 -6
- 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 +133 -4
- 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 +26 -0
- 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 +46 -17
- 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 +0 -40
- 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 +100 -26
- 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 +9 -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 +9 -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 +6 -2
- 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 +76 -4
- 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 +5 -4
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/administrative-continuity.shared.schemas.js +5 -4
- 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 +4 -0
- 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 +8 -0
- 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 +44 -0
- 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 +52 -0
- 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 +6 -0
- package/dist/esm/security/authorizations/roles.shared.defaults.js.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.d.ts +14 -0
- package/dist/esm/security/authorizations/roles.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.schemas.js +19 -0
- package/dist/esm/security/authorizations/roles.shared.schemas.js.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.utils.d.ts.map +1 -1
- package/dist/esm/security/authorizations/roles.shared.utils.js +2 -0
- package/dist/esm/security/authorizations/roles.shared.utils.js.map +1 -1
- package/dist/esm/security/connected-accounts/provider-credentials-organization.shared.resources-config.schemas.d.ts +4 -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 +5 -2
- 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 +13 -42
- 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 +201 -14
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.js +237 -49
- package/dist/esm/security/connected-accounts/provider-credentials.shared.schemas.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients-application.shared.resources-config.schemas.d.ts +6 -3
- 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 +74 -4
- 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 +5 -2
- 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 +105 -3
- 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.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/outbound-target-control.shared.schemas.d.ts +67 -0
- package/dist/esm/security/outbound-target-control.shared.schemas.d.ts.map +1 -0
- package/dist/esm/security/outbound-target-control.shared.schemas.js +69 -0
- package/dist/esm/security/outbound-target-control.shared.schemas.js.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-credential-kind.shared.d.ts +159 -0
- package/dist/esm/systems-of-record/system-of-record-credential-kind.shared.d.ts.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-credential-kind.shared.js +164 -0
- package/dist/esm/systems-of-record/system-of-record-credential-kind.shared.js.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.d.ts +209 -0
- package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.d.ts.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.js +150 -0
- package/dist/esm/systems-of-record/system-of-record-declaration.shared.schemas.js.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-env.shared.d.ts +79 -0
- package/dist/esm/systems-of-record/system-of-record-env.shared.d.ts.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-env.shared.js +116 -0
- package/dist/esm/systems-of-record/system-of-record-env.shared.js.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-error-codes.shared.d.ts +145 -0
- package/dist/esm/systems-of-record/system-of-record-error-codes.shared.d.ts.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-error-codes.shared.js +146 -0
- package/dist/esm/systems-of-record/system-of-record-error-codes.shared.js.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.d.ts +478 -0
- package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.d.ts.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.js +619 -0
- package/dist/esm/systems-of-record/system-of-record-facet.shared.schemas.js.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.d.ts +31 -0
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.d.ts.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.js +232 -0
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.resources-config.schemas.js.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.schemas.d.ts +127 -0
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.schemas.d.ts.map +1 -0
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.schemas.js +204 -0
- package/dist/esm/systems-of-record/system-of-record-partition-assignments.shared.schemas.js.map +1 -0
- package/dist/esm/testing/resource-config-builders.d.ts.map +1 -1
- package/dist/esm/testing/resource-config-builders.js +10 -4
- package/dist/esm/testing/resource-config-builders.js.map +1 -1
- package/dist/esm/testing.d.ts.map +1 -1
- package/dist/esm/users/anonymous-user-marketing-metadata.shared.schemas.d.ts +2 -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 +2 -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 +139 -24
- 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 +255 -0
- package/dist/esm/users/anonymous-users.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/anonymous-users.shared.schema.d.ts +5 -3
- package/dist/esm/users/anonymous-users.shared.schema.d.ts.map +1 -1
- package/dist/esm/users/anonymous-users.shared.schema.js +18 -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 +2 -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 +23 -0
- package/dist/esm/users/inbound-contacts.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/inbound-contacts.shared.schemas.d.ts +2 -1
- package/dist/esm/users/inbound-contacts.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-consent-decision.shared.utils.d.ts +127 -0
- package/dist/esm/users/user-consent-decision.shared.utils.d.ts.map +1 -0
- package/dist/esm/users/user-consent-decision.shared.utils.js +189 -0
- package/dist/esm/users/user-consent-decision.shared.utils.js.map +1 -0
- package/dist/esm/users/user-credentials.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-credentials.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts +1 -0
- package/dist/esm/users/user-identity-links.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-identity-links.shared.schemas.d.ts +1 -0
- package/dist/esm/users/user-identity-links.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/user-identity-links.shared.schemas.js +30 -0
- package/dist/esm/users/user-identity-links.shared.schemas.js.map +1 -1
- package/dist/esm/users/user-preferences-reset.shared.utils.d.ts +6 -6
- package/dist/esm/users/user-preferences-reset.shared.utils.d.ts.map +1 -1
- package/dist/esm/users/user-preferences-reset.shared.utils.js +6 -6
- 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 +74 -29
- 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 +99 -0
- 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 +25 -9
- 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 +4 -4
- 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 +12 -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.shared.resources-config.schemas.d.ts +1 -0
- 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 +2 -2
- 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 +1 -0
- package/dist/esm/users/users.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/users/users.shared.resources-config.schemas.js +2 -2
- package/dist/esm/users/users.shared.resources-config.schemas.js.map +1 -1
- package/dist/esm/users/users.shared.schemas.d.ts +11 -9
- package/dist/esm/users/users.shared.schemas.d.ts.map +1 -1
- package/dist/esm/users/users.shared.schemas.js +68 -9
- package/dist/esm/users/users.shared.schemas.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +14 -35
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.d.ts +0 -19
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.d.ts.map +0 -1
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.js +0 -35
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint-agent-personas.shared.enums.js.map +0 -1
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.d.ts +0 -213
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.js +0 -287
- package/dist/esm/flows-actors/apps-blueprint/apps-blueprint.shared.schemas.js.map +0 -1
- package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.d.ts +0 -236
- package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.js +0 -212
- package/dist/esm/flows-actors/apps-blueprint/artifacts.apps-blueprint.shared.schemas.js.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/actions.meta-workflows.shared.schemas.js.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts +0 -17
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js +0 -31
- package/dist/esm/flows-actors/meta-workflows/budget-authority.meta-workflows.shared.schemas.js.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/catalog.meta-workflows.shared.schemas.js.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/context-selection.meta-workflows.shared.schemas.js.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.d.ts +0 -28
- package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.js +0 -28
- package/dist/esm/flows-actors/meta-workflows/continuity-identifiers.meta-workflows.shared.schemas.js.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/decisions.meta-workflows.shared.schemas.js.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts +0 -100
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js +0 -232
- package/dist/esm/flows-actors/meta-workflows/execution-binding-common.meta-workflows.shared.schemas.js.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.d.ts +0 -29
- package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.js +0 -58
- package/dist/esm/flows-actors/meta-workflows/execution-binding-vocabularies.meta-workflows.shared.schemas.js.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/meta-workflows/portable-primitives.meta-workflows.shared.schemas.js.map +0 -1
- package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.d.ts +0 -81
- package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.d.ts.map +0 -1
- package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.js +0 -82
- package/dist/esm/flows-actors/task-continuity-binding.actors.shared.schemas.js.map +0 -1
- package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.d.ts +0 -2
- package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.d.ts.map +0 -1
- package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.js +0 -1
- package/dist/esm/flows-actors/utils/flow-actors.context-builder.apps-context.shared.utils.js.map +0 -1
- /package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/actions.meta-workflows.shared.schemas.d.ts +0 -0
- /package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/actions.meta-workflows.shared.schemas.js +0 -0
- /package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/catalog.meta-workflows.shared.schemas.d.ts +0 -0
- /package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/catalog.meta-workflows.shared.schemas.js +0 -0
- /package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/context-selection.meta-workflows.shared.schemas.d.ts +0 -0
- /package/dist/esm/{flows-actors/meta-workflows → meta-workflows}/context-selection.meta-workflows.shared.schemas.js +0 -0
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
import { ResourceConfiguration_QueueConfigSchema } from '../queue/queues.shared.schemas.js';
|
|
2
|
+
import { normalizeScheduledRecoveryPolicy } from '../queue/jobs.shared.schemas.js';
|
|
1
3
|
/**
|
|
2
4
|
* Operations Shared Schemas
|
|
3
5
|
*
|
|
4
6
|
* Reusable operation schemas for bulk actions and common operations
|
|
5
7
|
*/
|
|
6
|
-
import { ExpiresInDurationSchema, getImpersonalizeMaskValue, getImpersonalizeTreatment, getZodObjectShape, getZodType, isBackendOnlyField, isDiscriminatorField, isExcludedFromCreate, isExcludedFromUpdate, isBusinessKeyField, isZodObject, isSummaryField, isTemplatableFileField, isUniqueField, isVirtualField, SingleFileValueSchema, toPatchOptionalField, mainSchemaFieldIsClearable, unwrapSchema, getDataCategories, } from '@wildo-ai/zod-decorators';
|
|
8
|
+
import { ExpiresInDurationSchema, getImpersonalizeMaskValue, getImpersonalizeTreatment, getZodObjectShape, getZodType, isBackendOnlyField, isDiscriminatorField, isExcludedFromCreate, isExcludedFromUpdate, isBusinessKeyField, isZodObject, isSummaryField, isTemplatableFileField, isUniqueField, isVirtualField, SingleFileValueSchema, toPatchOptionalField, mainSchemaFieldIsClearable, unwrapSchema, getDataCategories, markPatchRequestDtoObject, } from '@wildo-ai/zod-decorators';
|
|
7
9
|
import { z } from 'zod';
|
|
8
10
|
import { ErrorType } from '../errors/errors.shared.schemas.js';
|
|
9
11
|
import { ErasureRetentionMode, ResourceDataSubjectKind, RetentionStatus, RetentionStatusSchema } from '../compliance/privacy/impersonalization.shared.schemas.js';
|
|
@@ -27,11 +29,13 @@ import { unknownPersonalDataCategories } from '../compliance/privacy/personal-da
|
|
|
27
29
|
* only when TypeScript must INVENT a specifier for an INFERRED type. Re-run the probe if a
|
|
28
30
|
* root-exported contract here ever starts inferring one.
|
|
29
31
|
*/
|
|
30
|
-
import { HttpApiResourceBindingSchema,
|
|
32
|
+
import { HttpApiResourceBindingSchema, assertHttpApiBindingDialectCoherence } from '../http-api-binding/http-api-binding.shared.schemas.js';
|
|
33
|
+
import { HTTP_API_ENGINE_INJECTED_FIELDS, HTTP_API_TENANT_ANCHOR_FIELD, READ_THROUGH_ORGANIZATION_UNIT_FIELD_NAME, } from '../http-api-binding/read-through-engine-anchors.shared.js';
|
|
34
|
+
import { HttpApiTransportDialect } from '../http-api-binding/http-api-transport-dialect.shared.js';
|
|
31
35
|
import { ExternalDataDestinationPopulation, ExternalDataFieldCoercion, ExternalDataMappingEntryKind, ExternalDataPipelineDeclarationSchema, assertExternalDataPipelineDeclarationCoherence, } from '../external-data/external-data-pipeline.shared.schemas.js';
|
|
32
36
|
import { HttpMethod } from '../requests/http-requests.shared.js';
|
|
33
37
|
import { ConsumableToken_ConsumptionMode, TokenAuthenticationPolicy } from '../security/authentications/consumable-token.shared.schemas.js';
|
|
34
|
-
import { OPERATION_VARIANT_KEY,
|
|
38
|
+
import { OPERATION_VARIANT_KEY, wrapRequestDtoAsBulk, resolveBulkOperationMaxSelection, Resources_Filter_BaseSchema, Resources_Filter_DateRangeSchema, Resources_Filter_NumberRangeSchema, isResourcesFilterNumberRangeSchema, createPaginationRequestSchema, DEFAULT_LIST_PAGE_CEILING, DEFAULT_SEARCH_PAGE_CEILING, createPaginationResponseMetadataSchema, ResourceGeneratedOperationKind, ResourceSystemAccessMode, PersistenceAdapter, isPersistenceAdapter, SortOrder, ResourceCollectionExportResponseSchema, } from './resources-config.shared.schemas.js';
|
|
35
39
|
import { CoreResourceOperation, CoreResourceType, coreResourceShared_FieldIdentifier } from './resources.shared.core.definitions.js';
|
|
36
40
|
import { PRIMARY_SCOPE_FIELD_IDENTIFIERS, PRIMARY_SCOPE_TO_CORE_RESOURCE_TYPE, FIELD_IDENTIFIER_TO_PRIMARY_SCOPE, RelationshipNature, ResourceOperationRiskLevel, ResourceOperationVariantType, ResourceOperation_ServiceRuntimeMode, ResourceParentResourceRequirement, ResourcePrimaryScope, ResourceRelationshipBulkAction, ResourceRelationshipBulkActionResultSchema, ResourceRelationshipBulkClearOperationRequestSchema, ResourceRelationshipBulkCreateOperationRequestSchema, ResourceRelationshipBulkLinkOperationRequestSchema, ResourceRelationshipBulkReplaceOperationRequestSchema, ResourceRelationshipBulkSetOperationRequestSchema, ResourceRelationshipBulkUnlinkOperationRequestSchema, ResourceRelationshipAccessScopeStrategy, ResourceRelationshipCardinality, ResourceTranspositionPolicy } from './resources.shared.schemas.js';
|
|
37
41
|
import { createResourcesRelationship } from './resources-relationships.shared.factory.js';
|
|
@@ -41,6 +45,7 @@ import { ResourcesSummaryUtils } from './utils/resources-summary.utils.js';
|
|
|
41
45
|
import { collectTemplatableFileFieldPaths, stripTemplatableFileFieldsRecursively } from './utils/templatable-file-fields.shared.utils.js';
|
|
42
46
|
import { selectByPersistenceAdapter } from './utils/persistence-adapter-discrimination.shared.utils.js';
|
|
43
47
|
import { isServiceResolvableDefaultOperation, SERVICE_RESOLVABLE_OPERATION_VARIANT_TYPES, URL_BEARING_OPERATION_VARIANT_TYPES, } from './utils/resource-operation-type-guards.utils.js';
|
|
48
|
+
import { describeCaughtError } from '../errors/errors.shared.utils.js';
|
|
44
49
|
// --------------------------------
|
|
45
50
|
// Error Helpers
|
|
46
51
|
// --------------------------------
|
|
@@ -565,6 +570,41 @@ function validateTokenGenerationConfig(config, resourceIdentifier, operationIden
|
|
|
565
570
|
`consumeAt only applies to one-off session tokens.`);
|
|
566
571
|
}
|
|
567
572
|
}
|
|
573
|
+
/**
|
|
574
|
+
* Validates tokenAuthentication configuration at build time.
|
|
575
|
+
*
|
|
576
|
+
* **The only thing this refuses is an EMPTY `types` array, and that is the whole point.**
|
|
577
|
+
* `types: []` is well-typed, reads as "no restriction needed", and used to fail OPEN: the runtime
|
|
578
|
+
* collapsed an empty list to `undefined` and `ConsumableTokenBackendService.validateToken` treats
|
|
579
|
+
* `undefined` as "the caller does its own binding check", so the operation accepted EVERY consumable
|
|
580
|
+
* token type in the system — a password-reset link, an email-verification link, an OAuth state token
|
|
581
|
+
* — with that token's `roles` flowing into the execution context. That is the confused-deputy shape:
|
|
582
|
+
* one token namespace, several verifiers, and an audience check that was optional at the verifier.
|
|
583
|
+
*
|
|
584
|
+
* Refusing here rather than at the verifier is deliberate. A runtime refusal turns an authoring
|
|
585
|
+
* mistake into a request-time failure on a path nobody may exercise before production; a build-time
|
|
586
|
+
* refusal makes the shape unrepresentable, because a resource config is constructed at module load
|
|
587
|
+
* and an application carrying one cannot boot. `validateToken` ALSO refuses an empty array now, as
|
|
588
|
+
* the chokepoint backstop for a config that never passed through this factory — see issue #313.
|
|
589
|
+
*
|
|
590
|
+
* An operation that genuinely wants no type constraint has no expression here and must not get one:
|
|
591
|
+
* the correct authoring is to name every type the operation accepts. A verifier that owns its own
|
|
592
|
+
* binding check (the file-share download, `validateFileToken`) calls `validateToken` directly and
|
|
593
|
+
* never declares `tokenAuthentication` at all.
|
|
594
|
+
*/
|
|
595
|
+
function validateTokenAuthenticationConfig(config, resourceIdentifier, operationIdentifier) {
|
|
596
|
+
const prefix = `[${resourceIdentifier}.${operationIdentifier}] tokenAuthentication`;
|
|
597
|
+
if (!config.types || config.types.length === 0) {
|
|
598
|
+
throw createConfigurationError(`${prefix}: types must be a non-empty array of the consumable token types this operation accepts. ` +
|
|
599
|
+
`An empty list is not "no restriction" — it would accept EVERY consumable token type in the ` +
|
|
600
|
+
`system (password-reset, email-verification, OAuth state, …) as authentication for this ` +
|
|
601
|
+
`operation, with that token's roles. Name the types explicitly.`);
|
|
602
|
+
}
|
|
603
|
+
if (!config.policy) {
|
|
604
|
+
throw createConfigurationError(`${prefix}: policy is required (ALTERNATIVE — the token replaces JWT auth; or ADDITIVE — the ` +
|
|
605
|
+
`token is required on top of it).`);
|
|
606
|
+
}
|
|
607
|
+
}
|
|
568
608
|
/**
|
|
569
609
|
* Validates tokenRevocation configuration at build time.
|
|
570
610
|
*/
|
|
@@ -741,7 +781,8 @@ function buildUpdateRequestDto(mainSchema, customExclusions) {
|
|
|
741
781
|
// back over the stored value (see `toPatchOptionalField`).
|
|
742
782
|
updateShape[fieldName] = toPatchOptionalField(stripTemplatableFileFieldsRecursively(fieldSchema));
|
|
743
783
|
}
|
|
744
|
-
|
|
784
|
+
// PATCH write rule: absent key untouched, null clears — the fact a form reads to clear a field (#989).
|
|
785
|
+
return stripTemplatableFileFieldsRecursively(markPatchRequestDtoObject(z.object(updateShape)));
|
|
745
786
|
}
|
|
746
787
|
catch {
|
|
747
788
|
// If schema is not an object, return as-is
|
|
@@ -1376,6 +1417,13 @@ export function createResourceSearchQueryRequestSchema(params) {
|
|
|
1376
1417
|
if (schema instanceof z.ZodDate) {
|
|
1377
1418
|
processedFields[key] = Resources_Filter_DateRangeSchema.optional();
|
|
1378
1419
|
}
|
|
1420
|
+
else if (isResourcesFilterNumberRangeSchema(schema)) {
|
|
1421
|
+
// Already the range vocabulary — the author wrote it, which is the opt-in. Named here
|
|
1422
|
+
// rather than left to the fallback below so the numeric range is a VISIBLE branch beside
|
|
1423
|
+
// the date one; the two are the framework's only structured filter shapes and a reader
|
|
1424
|
+
// looking for "which filters are ranges" must find both in one place.
|
|
1425
|
+
processedFields[key] = Resources_Filter_NumberRangeSchema.optional();
|
|
1426
|
+
}
|
|
1379
1427
|
else if (schema instanceof z.ZodString) {
|
|
1380
1428
|
processedFields[key] = schema.optional();
|
|
1381
1429
|
}
|
|
@@ -1537,7 +1585,12 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
1537
1585
|
create: ResourceSystemAccessMode.FORBIDDEN,
|
|
1538
1586
|
update: ResourceSystemAccessMode.FORBIDDEN,
|
|
1539
1587
|
updateMany: ResourceSystemAccessMode.FORBIDDEN,
|
|
1540
|
-
}, isAnonymizable = false,
|
|
1588
|
+
}, isAnonymizable = false,
|
|
1589
|
+
// Carried through UNCHANGED and with no default. Absent means "this resource is not the erasure
|
|
1590
|
+
// lane", which is true of almost every resource — a default here would make every resource claim
|
|
1591
|
+
// to be one. The bindings are validated at boot, not here: this factory has the declaration but
|
|
1592
|
+
// not the registry, and a name resolves against the resource's own schema and operations.
|
|
1593
|
+
subjectErasureLane, transpositionPolicy, retentionPolicy, dataSubjectPolicy, portabilityPolicy, persistenceAdapter, persistenceAdapterIsolation, httpApiBinding, introspectionBinding, coreOperations, customOperation, operationsConfiguration, } = params;
|
|
1541
1594
|
/**
|
|
1542
1595
|
* HTTP_API ↔ binding coherence — enforced at AUTHORING, both directions, because each half
|
|
1543
1596
|
* alone is a contradiction the backend could only discover later and worse:
|
|
@@ -1598,7 +1651,7 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
1598
1651
|
assertHttpApiBindingDialectCoherence(bindingParse.data);
|
|
1599
1652
|
}
|
|
1600
1653
|
catch (error) {
|
|
1601
|
-
throw createConfigurationError(`[${resourceIdentifier}] invalid httpApiBinding declaration: ${
|
|
1654
|
+
throw createConfigurationError(`[${resourceIdentifier}] invalid httpApiBinding declaration: ${describeCaughtError(error)}`);
|
|
1602
1655
|
}
|
|
1603
1656
|
return bindingParse.data;
|
|
1604
1657
|
})();
|
|
@@ -1644,7 +1697,7 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
1644
1697
|
assertHttpApiBindingDialectCoherence(declaration.binding);
|
|
1645
1698
|
}
|
|
1646
1699
|
catch (error) {
|
|
1647
|
-
refuse(
|
|
1700
|
+
refuse(describeCaughtError(error));
|
|
1648
1701
|
}
|
|
1649
1702
|
const shape = getZodObjectShape(mainSchema);
|
|
1650
1703
|
const requireMappedTarget = (fieldName, context) => {
|
|
@@ -1678,6 +1731,34 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
1678
1731
|
if (!isUniqueField(keyFieldSchema)) {
|
|
1679
1732
|
refuse(`remoteKeyLocalField: '${declaration.remoteKeyLocalField}' must ALSO be declared .isUnique(). The schema planner derives a UNIQUE constraint from .isUnique() and NOT from .isBusinessKey(), so without it the store would accept two rows for one remote row whenever two runs overlap — the merge would be enforced only by this engine's read-then-write, never by the database.`);
|
|
1680
1733
|
}
|
|
1734
|
+
/*
|
|
1735
|
+
* The two PARTITION stamps (#1058 E4), when the source instance is partitioned.
|
|
1736
|
+
*
|
|
1737
|
+
* Validated through `requireMappedTarget` like every other engine-written target, so both
|
|
1738
|
+
* inherit the `.excludeFromCreate()/.excludeFromUpdate()` requirement — these decide who may see
|
|
1739
|
+
* a row and whether an orphan pass deletes it, and a caller that could write either could move
|
|
1740
|
+
* its own rows into another subsidiary's confinement or out of the orphan comparison entirely.
|
|
1741
|
+
*
|
|
1742
|
+
* Both must ACCEPT ABSENCE, and that is the one rule the sibling `remoteKeyLocalField` does not
|
|
1743
|
+
* share. A row whose partition field is unset is SHARED (E2) — it belongs to every caller and to
|
|
1744
|
+
* no unit — so both stamps land `null` on it. A required target would reject exactly the rows
|
|
1745
|
+
* the decision says everyone may see, and it would reject them at LOAD time, per row, with a
|
|
1746
|
+
* reason about a field the author never wrote a value for.
|
|
1747
|
+
*/
|
|
1748
|
+
for (const [label, partitionField] of [
|
|
1749
|
+
['partitionUnitLocalField', declaration.partitionUnitLocalField],
|
|
1750
|
+
['partitionKeyLocalField', declaration.partitionKeyLocalField],
|
|
1751
|
+
]) {
|
|
1752
|
+
if (partitionField === undefined)
|
|
1753
|
+
continue;
|
|
1754
|
+
const partitionSchema = requireMappedTarget(partitionField, label);
|
|
1755
|
+
if (!(unwrapSchema(partitionSchema) instanceof z.ZodString)) {
|
|
1756
|
+
refuse(`${label}: '${partitionField}' must be a STRING field — it stores ${label === 'partitionUnitLocalField' ? 'an ORGANIZATION_UNITS id' : "the remote partition key in the canonical text an assignment row holds"}.`);
|
|
1757
|
+
}
|
|
1758
|
+
if (unwrapSchema(partitionSchema) === partitionSchema) {
|
|
1759
|
+
refuse(`${label}: '${partitionField}' must be optional or nullable. A row whose remote partition field is unset is SHARED — it belongs to every caller and to no unit — and this stamp lands null on it, so a required target rejects exactly the rows every caller is entitled to see.`);
|
|
1760
|
+
}
|
|
1761
|
+
}
|
|
1681
1762
|
for (const entry of declaration.mapping) {
|
|
1682
1763
|
const targetSchema = requireMappedTarget(entry.localField, `mapping('${entry.localField}')`);
|
|
1683
1764
|
if (entry.kind === ExternalDataMappingEntryKind.REMOTE_FIELD) {
|
|
@@ -1826,6 +1907,194 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
1826
1907
|
`(DERIVE RESOURCE PRIMARY SCOPE) for the full rationale.`);
|
|
1827
1908
|
}
|
|
1828
1909
|
// ========================================
|
|
1910
|
+
// HTTP_API × PRIMARY SCOPE — a system of record's rows belong to the OWNER organization
|
|
1911
|
+
// ========================================
|
|
1912
|
+
//
|
|
1913
|
+
// Rows read out of a system of record are STAMPED with the organization that owns the application
|
|
1914
|
+
// (#1055 §6), and the engine's per-row gate reads that stamp. Three things have to be true of the
|
|
1915
|
+
// resource for the stamp to mean anything, and all three are checkable HERE.
|
|
1916
|
+
//
|
|
1917
|
+
// ## Why here, and not at registration — R13 was measured and is wrong on this half
|
|
1918
|
+
//
|
|
1919
|
+
// #1055's review pass says "the resource factory never sees relationships", so the anchor check
|
|
1920
|
+
// must move to boot registration. It does see them: `resourceRelationships` is a parameter of this
|
|
1921
|
+
// function (a resource config is a FUNCTION of the registry's relationship list — see any
|
|
1922
|
+
// `*.resources-config.ts`), and `primaryScopeRelationship` is resolved from it thirty lines up.
|
|
1923
|
+
//
|
|
1924
|
+
// So the split the plan prescribed buys nothing and costs the author their error at the moment they
|
|
1925
|
+
// write the file. What genuinely CANNOT be checked here is the INSTANCE — whether `system` names a
|
|
1926
|
+
// declared one and whether the dialects agree — because the saas configuration is not in scope in
|
|
1927
|
+
// an application's `shared-lib`. That half stays at registration, which is the first place both the
|
|
1928
|
+
// binding and the declaration are visible.
|
|
1929
|
+
if (resolvedHttpApiBinding !== undefined) {
|
|
1930
|
+
if (resourcePrimaryScope !== ResourcePrimaryScope.ORGANIZATIONS) {
|
|
1931
|
+
throw createConfigurationError(`[${resourceIdentifier}] an http-api resource must be ORGANIZATIONS-scoped, and this one resolves to `
|
|
1932
|
+
+ `'${resourcePrimaryScope}'. Its rows are stamped with the organization that owns the application, and the `
|
|
1933
|
+
+ `per-row tenant gate reads that stamp — an APPLICATION- or USER_SELF-scoped resource has no organization in `
|
|
1934
|
+
+ `its execution context to compare it against, so every read would be decided by a field nothing could match.`);
|
|
1935
|
+
}
|
|
1936
|
+
/*
|
|
1937
|
+
* The anchor must be REQUIRES_CONTEXT, and it must name no foreign key.
|
|
1938
|
+
*
|
|
1939
|
+
* STANDALONE is the one that was MEASURED to fail rather than reasoned about: it answered
|
|
1940
|
+
* 403 `parent_scope_denied` to an ORG_OWNER, because `initiatorIds.organizationId` is filled only
|
|
1941
|
+
* from URL parameters and a standalone resource is not routed under its scope parent.
|
|
1942
|
+
*
|
|
1943
|
+
* A `foreignKeyField` would be a field the projection can never fill: a remote row carries no
|
|
1944
|
+
* Wildo organization id, which is the entire reason the stamp exists. Naming one would make every
|
|
1945
|
+
* row look as though it declared a tenant it does not have.
|
|
1946
|
+
*/
|
|
1947
|
+
if (primaryScopeRelationship !== undefined) {
|
|
1948
|
+
if (primaryScopeRelationship.accessScopeStrategy !== ResourceRelationshipAccessScopeStrategy.REQUIRES_CONTEXT) {
|
|
1949
|
+
throw createConfigurationError(`[${resourceIdentifier}] an http-api resource's primary-scope relationship must be REQUIRES_CONTEXT, and this `
|
|
1950
|
+
+ `one is '${String(primaryScopeRelationship.accessScopeStrategy)}'. A STANDALONE anchor is not routed under its `
|
|
1951
|
+
+ `organization, so the execution context carries no organization id and an ORG_OWNER is answered `
|
|
1952
|
+
+ `403 parent_scope_denied — measured, not inferred.`);
|
|
1953
|
+
}
|
|
1954
|
+
if (primaryScopeRelationship.foreignKeyField !== undefined) {
|
|
1955
|
+
throw createConfigurationError(`[${resourceIdentifier}] an http-api resource's primary-scope relationship declares `
|
|
1956
|
+
+ `foreignKeyField '${String(primaryScopeRelationship.foreignKeyField)}', which the projection can never fill — `
|
|
1957
|
+
+ `a remote row carries no Wildo organization id. The tenant anchor is STAMPED onto the projected row from the `
|
|
1958
|
+
+ `application's owner organization; remove the foreign key.`);
|
|
1959
|
+
}
|
|
1960
|
+
}
|
|
1961
|
+
}
|
|
1962
|
+
// ========================================
|
|
1963
|
+
// EXTERNAL-DATA PIPELINE × PRIMARY SCOPE — the destination is ORGANIZATIONS-owned, and the ENGINE
|
|
1964
|
+
// supplies the tenant
|
|
1965
|
+
// ========================================
|
|
1966
|
+
//
|
|
1967
|
+
// Since #868 a pipeline load STAMPS every entry with the organization that owns the application
|
|
1968
|
+
// (#1054), under the destination's own declared foreign key. So the question this rule asks has
|
|
1969
|
+
// inverted: it used to demand that the AUTHOR supply the tenant, and now it demands that the author
|
|
1970
|
+
// leave room for the ENGINE to.
|
|
1971
|
+
//
|
|
1972
|
+
// ## What the previous rule was, and why it could not stay
|
|
1973
|
+
//
|
|
1974
|
+
// It refused a required scope FK that no mapping supplied, because a load genuinely carried no
|
|
1975
|
+
// tenant. MEASURED 2026-09-11 against a real Mongo store, through the real engines, on a
|
|
1976
|
+
// destination shaped exactly like Wonder Todos' `externalCustomers`:
|
|
1977
|
+
//
|
|
1978
|
+
// | declaration | run | rows | tenant | reachable |
|
|
1979
|
+
// |-----------------------------------------------|--------------|------|--------|-----------|
|
|
1980
|
+
// | no mapping onto the scope FK | completed | 2 | NO | 0 |
|
|
1981
|
+
// | a CONSTANT mapping onto the scope FK | completed | 2 | YES | 2 |
|
|
1982
|
+
//
|
|
1983
|
+
// The first row is why a refusal existed at all: a `completed-pass` run with `entriesFailed: 0`
|
|
1984
|
+
// that writes rows no contextual read can find. A silent success producing unreachable data is
|
|
1985
|
+
// strictly worse than a refusal.
|
|
1986
|
+
//
|
|
1987
|
+
// But both remedies it offered are now WRONG. A `CONSTANT` id cannot be authored — organizations
|
|
1988
|
+
// are created at runtime, so there is no id to commit — and a STANDALONE anchor was measured to
|
|
1989
|
+
// answer 403 `parent_scope_denied` to an ORG_OWNER, because `initiatorIds.organizationId` is filled
|
|
1990
|
+
// only from URL parameters and a standalone resource is not routed under its scope parent. The rule
|
|
1991
|
+
// was refusing the one correct shape and recommending two broken ones.
|
|
1992
|
+
//
|
|
1993
|
+
// ## What it refuses now, and why each one is a LIE rather than an incompleteness
|
|
1994
|
+
//
|
|
1995
|
+
// Every clause below rejects a declaration that would be UNTRUE if it ran, which is the test
|
|
1996
|
+
// `application-creation-directive.md` sets for a refusal. None of them asks anyone to decide
|
|
1997
|
+
// anything: each names the one shape that works.
|
|
1998
|
+
if (externalDataPipeline !== undefined) {
|
|
1999
|
+
const pipelineDestinationRefusal = (reason) => {
|
|
2000
|
+
throw createConfigurationError(`[${resourceIdentifier}] invalid externalDataPipeline declaration: ${reason}
|
|
2001
|
+
`
|
|
2002
|
+
+ `
|
|
2003
|
+
`
|
|
2004
|
+
+ `A pipeline reads a SYSTEM OF RECORD — a deployment the operator runs, read with the application's own
|
|
2005
|
+
`
|
|
2006
|
+
+ `service identity — so every row it loads belongs to the organization that OWNS the application, and the
|
|
2007
|
+
`
|
|
2008
|
+
+ `engine stamps that organization onto each entry as it is built. What the destination owes is somewhere
|
|
2009
|
+
`
|
|
2010
|
+
+ `to put it: an ORGANIZATIONS primary scope, reached through a ROUTED relationship
|
|
2011
|
+
`
|
|
2012
|
+
+ `(accessScopeStrategy: REQUIRES_CONTEXT) that names a REQUIRED foreignKeyField, with that field mapped by
|
|
2013
|
+
`
|
|
2014
|
+
+ `nothing and declared .excludeFromCreate().excludeFromUpdate().`);
|
|
2015
|
+
};
|
|
2016
|
+
// (a) The destination must be ORGANIZATIONS-scoped. Decision Q2 of #1049: system-of-record data
|
|
2017
|
+
// belongs to the owner organization, so an APPLICATION- or USER_SELF-scoped destination is a
|
|
2018
|
+
// statement about ownership that contradicts where the rows come from.
|
|
2019
|
+
if (resourcePrimaryScope !== ResourcePrimaryScope.ORGANIZATIONS) {
|
|
2020
|
+
pipelineDestinationRefusal(`its primary scope is ${String(resourcePrimaryScope)}, and a system-of-record destination must be ORGANIZATIONS.`);
|
|
2021
|
+
}
|
|
2022
|
+
// (b) There must BE a routed scope relationship carrying a foreign key. Without one the stamp has
|
|
2023
|
+
// nowhere to land: a field the schema does not declare is dropped by the strict re-parse, and
|
|
2024
|
+
// the row lands unanchored — the measured failure above, arriving through the fix for it.
|
|
2025
|
+
// STANDALONE is called out by name because it is the remedy the previous rule recommended.
|
|
2026
|
+
if (primaryScopeRelationship === undefined) {
|
|
2027
|
+
pipelineDestinationRefusal('it declares no primary-scope relationship, so a loaded row has no tenant field.');
|
|
2028
|
+
}
|
|
2029
|
+
if (primaryScopeRelationship.accessScopeStrategy === ResourceRelationshipAccessScopeStrategy.STANDALONE) {
|
|
2030
|
+
pipelineDestinationRefusal('its primary-scope relationship is STANDALONE. A standalone resource is not routed under its organization, so '
|
|
2031
|
+
+ '`initiatorIds.organizationId` is never filled and an ORG_OWNER is answered 403 parent_scope_denied — measured '
|
|
2032
|
+
+ 'on `billableServices`, 2026-09-14. This was the previous rule\'s own first recommendation.');
|
|
2033
|
+
}
|
|
2034
|
+
const scopeForeignKeyField = primaryScopeRelationship.foreignKeyField;
|
|
2035
|
+
if (scopeForeignKeyField === undefined) {
|
|
2036
|
+
pipelineDestinationRefusal('its primary-scope relationship names no foreignKeyField, so there is no column to stamp the owner organization '
|
|
2037
|
+
+ 'onto. (A VIRTUAL read-through resource is the opposite case and must NOT name one — its rows are projected, '
|
|
2038
|
+
+ 'never stored.)');
|
|
2039
|
+
}
|
|
2040
|
+
// (c) Nothing may MAP onto the tenant field. Two sources of truth for the tenant is the defect,
|
|
2041
|
+
// not a convenience: a mapping wins at load time and the stamp becomes decoration.
|
|
2042
|
+
if (externalDataPipeline.mapping.some((entry) => entry.localField === scopeForeignKeyField)) {
|
|
2043
|
+
pipelineDestinationRefusal(`a mapping entry writes '${String(scopeForeignKeyField)}', which the engine stamps. Two sources of truth for the `
|
|
2044
|
+
+ 'tenant is exactly the ambiguity this rule exists to remove — remove the mapping entry.');
|
|
2045
|
+
}
|
|
2046
|
+
// (d) The tenant field must be REQUIRED. Optional means "a row without a tenant is legal", and no
|
|
2047
|
+
// row loaded from a system of record is: an untenanted row is unreadable, and the schema would
|
|
2048
|
+
// be promising that it is a supported state.
|
|
2049
|
+
const scopeFieldSchema = getZodObjectShape(mainSchema)[scopeForeignKeyField];
|
|
2050
|
+
if (scopeFieldSchema === undefined) {
|
|
2051
|
+
pipelineDestinationRefusal(`its primary-scope relationship names foreignKeyField '${String(scopeForeignKeyField)}', which the schema does not `
|
|
2052
|
+
+ 'declare. The stamp would be dropped by the strict re-parse and every row would land unanchored.');
|
|
2053
|
+
}
|
|
2054
|
+
// `unwrapSchema` strips optional/nullable/default wrappers, so an unwrapped schema IDENTICAL to
|
|
2055
|
+
// the declared one means nothing wrapped it — the same test the mapping validation above uses.
|
|
2056
|
+
if (unwrapSchema(scopeFieldSchema) !== scopeFieldSchema) {
|
|
2057
|
+
pipelineDestinationRefusal(`'${String(scopeForeignKeyField)}' is optional, nullable or defaulted. A row loaded from a system of record always `
|
|
2058
|
+
+ 'has an owner, so an absent tenant is not a state this resource can be in — and declaring it legal makes an '
|
|
2059
|
+
+ 'unreadable row look like a supported one.');
|
|
2060
|
+
}
|
|
2061
|
+
// (e) The tenant field must be excluded from CREATE and UPDATE. It is engine-supplied, so a
|
|
2062
|
+
// client that could send it could hand its own rows to another organization — and one that
|
|
2063
|
+
// could update it could move them.
|
|
2064
|
+
if (!isExcludedFromCreate(scopeFieldSchema) || !isExcludedFromUpdate(scopeFieldSchema)) {
|
|
2065
|
+
pipelineDestinationRefusal(`'${String(scopeForeignKeyField)}' is engine-supplied and must be declared `
|
|
2066
|
+
+ '.excludeFromCreate().excludeFromUpdate(). Without them a caller can name the tenant on a write — creating a row '
|
|
2067
|
+
+ 'under another organization, or moving an existing one out of its own.');
|
|
2068
|
+
}
|
|
2069
|
+
/*
|
|
2070
|
+
* (f) The destination population is NOT constrained here, and that DIVERGES from #868's review
|
|
2071
|
+
* decision R2(e), which said to refuse `OPEN` in this slice. Recorded rather than done quietly.
|
|
2072
|
+
*
|
|
2073
|
+
* R2(e)'s reason was that "caller-minted rows under another organization contradict 'belongs to
|
|
2074
|
+
* the owner'". Two things measured against that:
|
|
2075
|
+
*
|
|
2076
|
+
* - Nothing depends on the claim being universally true. The per-row tenant gate reads each
|
|
2077
|
+
* row's own anchor, so a loaded row owned by the owner organization and a caller-minted row
|
|
2078
|
+
* owned by its creator are both read correctly, by different people. There is no site that
|
|
2079
|
+
* asserts "every row of this resource belongs to the owner".
|
|
2080
|
+
* - A caller cannot name the tenant anyway: clause (e) above requires `.excludeFromCreate()`, so
|
|
2081
|
+
* a caller-minted row takes its organization from the request context like any other, and the
|
|
2082
|
+
* orphan walk cannot reach it either — the walk filters on `__seed.seedKey`, which a
|
|
2083
|
+
* caller-minted row does not carry.
|
|
2084
|
+
*
|
|
2085
|
+
* And the deciding one is this repository's own test for a refusal
|
|
2086
|
+
* (`application-creation-directive.md`): if this refuses, what does the operator do next? The
|
|
2087
|
+
* answer would be "change your product decision about whether callers may add rows" — a
|
|
2088
|
+
* DECISION, not a repair to an untrue artifact. That makes it a workflow gate rather than a
|
|
2089
|
+
* refusal, and the directive says a workflow must MARK rather than block.
|
|
2090
|
+
*
|
|
2091
|
+
* Refusing it would also have made three shipped, tested behaviours unreachable: the CREATE/UPDATE
|
|
2092
|
+
* DTO stripping that protects remote-authoritative fields on caller-minted rows, the admission of
|
|
2093
|
+
* create-shaped custom operations, and the admission of a declared caller CREATE. Those pins live
|
|
2094
|
+
* in `external-data-pipeline-coherence.test.ts` and still pass.
|
|
2095
|
+
*/
|
|
2096
|
+
}
|
|
2097
|
+
// ========================================
|
|
1829
2098
|
// isAnonymizable VALIDATION & ENRICHMENT (W7.3a)
|
|
1830
2099
|
// ========================================
|
|
1831
2100
|
let effectiveMainSchema = mainSchema;
|
|
@@ -2102,7 +2371,7 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2102
2371
|
resolveImpersonalizeResetValue(fieldSchema, fieldName);
|
|
2103
2372
|
}
|
|
2104
2373
|
catch (error) {
|
|
2105
|
-
throw createConfigurationError(`[${resourceIdentifier}] ${
|
|
2374
|
+
throw createConfigurationError(`[${resourceIdentifier}] ${describeCaughtError(error)}`);
|
|
2106
2375
|
}
|
|
2107
2376
|
}
|
|
2108
2377
|
}
|
|
@@ -2170,6 +2439,20 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2170
2439
|
// fields after the strict parse — see deriveTrustedSystemWritePreservedFields).
|
|
2171
2440
|
effectiveMainSchema = effectiveMainSchema.extend({
|
|
2172
2441
|
retentionStatus: RetentionStatusSchema
|
|
2442
|
+
/*
|
|
2443
|
+
* A framework VOCABULARY, declared as one. `RetentionStatus` is injected onto every resource
|
|
2444
|
+
* that declares a `retentionPolicy`, so without this its members would take their words from
|
|
2445
|
+
* each field PATH in turn — the same enum described afresh per resource, by an LLM that
|
|
2446
|
+
* reaches a different phrasing each time. `.systemEnum()` routes them to
|
|
2447
|
+
* `system_enums.RetentionStatus.*`, authored once and read everywhere.
|
|
2448
|
+
*
|
|
2449
|
+
* It changes nothing visible today, deliberately: the field is `.isHidden()` in both modes,
|
|
2450
|
+
* so the planner now asks for no words for it at all (#1298). The declaration is here so
|
|
2451
|
+
* that the day a surface shows a retention state — a retained-row badge, an erasure report —
|
|
2452
|
+
* it inherits ONE vocabulary rather than starting the per-path drift that #1298 measured on
|
|
2453
|
+
* its sibling `impersonalizedAt`, which had collected eleven English labels unseen.
|
|
2454
|
+
*/
|
|
2455
|
+
.systemEnum('RetentionStatus')
|
|
2173
2456
|
.default(RetentionStatus.ACTIVE)
|
|
2174
2457
|
.isDBIndexed()
|
|
2175
2458
|
.excludeFromCreate()
|
|
@@ -2328,6 +2611,123 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2328
2611
|
// consumes. Unlike a nested `.impersonalizeWith()` — which is a boot error because the row would
|
|
2329
2612
|
// flip to RETAINED with the field intact — a nested category breaks nothing at runtime; it simply
|
|
2330
2613
|
// never reaches a notice.
|
|
2614
|
+
/*
|
|
2615
|
+
* ENGINE-INJECTED ANCHORS on a read-through resource (#1058 R7).
|
|
2616
|
+
*
|
|
2617
|
+
* ## What is being injected, and why an author cannot declare it
|
|
2618
|
+
*
|
|
2619
|
+
* A VIRTUAL resource's schema describes the REMOTE entity. Every field in it comes from the
|
|
2620
|
+
* target, and there is no local row — which is exactly why such a resource may carry no field of
|
|
2621
|
+
* ours, no file and no retrieval corpus. So the two anchors the engine needs have nowhere to be
|
|
2622
|
+
* authored:
|
|
2623
|
+
*
|
|
2624
|
+
* - `organizationId` — the application's OWNER organization, stamped onto every projected row
|
|
2625
|
+
* (#1055 §6). The engine's per-row tenant gate reads it; without it, every read answered
|
|
2626
|
+
* `row_carries_no_tenant_anchor`;
|
|
2627
|
+
* - `organizationUnitId` — the ORGANIZATION UNIT owning the row's remote PARTITION (#1058 §3),
|
|
2628
|
+
* and the field `READ_THROUGH_ORGANIZATION_UNIT_FIELD_NAME` names as this resource's derived
|
|
2629
|
+
* `unitFieldName`.
|
|
2630
|
+
*
|
|
2631
|
+
* Both were already WRITTEN by the projector before this. What they lacked was a declared place:
|
|
2632
|
+
* the resource's own contract, its specification and its OpenAPI knew nothing of two fields every
|
|
2633
|
+
* served row carries. `billable-services.schemas.ts` names that gap as this slice's, and this is
|
|
2634
|
+
* it — the declaration, not the stamp.
|
|
2635
|
+
*
|
|
2636
|
+
* ## Required vs optional, which is a statement about the rows
|
|
2637
|
+
*
|
|
2638
|
+
* `organizationId` is REQUIRED: a row that reaches a caller always has one, because the repository
|
|
2639
|
+
* refuses with `OWNER_ORGANIZATION_ABSENT` before serving anything when there is no owner.
|
|
2640
|
+
*
|
|
2641
|
+
* `organizationUnitId` is OPTIONAL, and that is not caution. Two kinds of row genuinely have no
|
|
2642
|
+
* unit — a SHARED row whose partition field is unset (E2, an Odoo product belonging to no company)
|
|
2643
|
+
* and a row of a partition no operator has assigned (E3). Declaring it required would make both
|
|
2644
|
+
* states illegal in a contract that serves them.
|
|
2645
|
+
*
|
|
2646
|
+
* ## Both are excluded from CREATE and UPDATE
|
|
2647
|
+
*
|
|
2648
|
+
* For the reason the pipeline lane states about its own tenant stamp: a caller who could send this
|
|
2649
|
+
* field could hand rows to another organization, and one who could update it could move them.
|
|
2650
|
+
* Writes are refused on an HTTP_API resource anyway, so this is the second lock rather than the
|
|
2651
|
+
* first — and it is the one that keeps the fields out of the request DTOs, where they would read
|
|
2652
|
+
* as something a client is invited to supply.
|
|
2653
|
+
*/
|
|
2654
|
+
if (persistenceAdapter === PersistenceAdapter.HTTP_API) {
|
|
2655
|
+
// EXPLICIT object check, for the reason the retention injection above records: `getZodObjectShape`
|
|
2656
|
+
// returns `{}` for a union, so a try/catch around it is dead code and the real failure surfaces
|
|
2657
|
+
// later as an undiagnosable `extend is not a function`.
|
|
2658
|
+
if (!isZodObject(effectiveMainSchema)) {
|
|
2659
|
+
throw createConfigurationError(`[${resourceIdentifier}] persistenceAdapter 'http-api' injects the '${HTTP_API_ENGINE_INJECTED_FIELDS.join("' and '")}' `
|
|
2660
|
+
+ 'anchors, which requires a ZodObject mainSchema — polymorphic/union mainSchemas are not supported on a '
|
|
2661
|
+
+ 'read-through resource.');
|
|
2662
|
+
}
|
|
2663
|
+
const httpApiShape = getZodObjectShape(effectiveMainSchema);
|
|
2664
|
+
for (const injectedField of HTTP_API_ENGINE_INJECTED_FIELDS) {
|
|
2665
|
+
/*
|
|
2666
|
+
* Zod-4 `.extend()` SILENTLY OVERWRITES a duplicate key, so an author's own field would be
|
|
2667
|
+
* clobbered rather than reported. Refused for a second reason too: the engine stamps this field
|
|
2668
|
+
* on every projected row regardless, so an authored one could never be the value served — it
|
|
2669
|
+
* would be a declaration the author can read in their own schema and never observe taking
|
|
2670
|
+
* effect.
|
|
2671
|
+
*/
|
|
2672
|
+
if (httpApiShape[injectedField]) {
|
|
2673
|
+
throw createConfigurationError(`[${resourceIdentifier}] declares '${injectedField}', which the engine INJECTS on every http-api resource and `
|
|
2674
|
+
+ 'STAMPS on every projected row. An authored field of that name is never the value served — remove it.');
|
|
2675
|
+
}
|
|
2676
|
+
/*
|
|
2677
|
+
* And nothing in the BINDING may target them either.
|
|
2678
|
+
*
|
|
2679
|
+
* The projector applies both stamps LAST, so a mapping onto one is inert rather than dangerous
|
|
2680
|
+
* — which is precisely why it must be refused here. An authoring mistake that silently does
|
|
2681
|
+
* nothing is worse than one that fails: the author reads a declaration that looks like it
|
|
2682
|
+
* decides the tenant, and no run ever disagrees with them.
|
|
2683
|
+
*
|
|
2684
|
+
* This refusal is what the projector's own comment has claimed since #1055. It did not exist —
|
|
2685
|
+
* measured 2026-09-18 across `saas-models`, `saas-backend-lib` and `saas-specifications`, where
|
|
2686
|
+
* the only mapping-target refusals were the external-data PIPELINE's. It matters more now than
|
|
2687
|
+
* it did then: before this block the fields were undeclared, so an author had no reason to
|
|
2688
|
+
* think of them; declaring them is what makes mapping onto one a thing somebody would try.
|
|
2689
|
+
*/
|
|
2690
|
+
if (resolvedHttpApiBinding?.fieldMappings.some((mapping) => mapping.localField === injectedField)) {
|
|
2691
|
+
throw createConfigurationError(`[${resourceIdentifier}] httpApiBinding maps a remote field onto '${injectedField}', which the engine stamps `
|
|
2692
|
+
+ 'after every mapping. The mapping can never take effect — remove it.');
|
|
2693
|
+
}
|
|
2694
|
+
if (resolvedHttpApiBinding?.keyFields.some((keyField) => keyField.localField === injectedField)) {
|
|
2695
|
+
throw createConfigurationError(`[${resourceIdentifier}] httpApiBinding declares a key component landing on '${injectedField}', which the engine `
|
|
2696
|
+
+ 'stamps after every key component. Name a different localField.');
|
|
2697
|
+
}
|
|
2698
|
+
}
|
|
2699
|
+
effectiveMainSchema = effectiveMainSchema.extend({
|
|
2700
|
+
/*
|
|
2701
|
+
* `.isDBIndexed().isForeignKey()` on the tenant anchor, and the reason is a MEASUREMENT rather
|
|
2702
|
+
* than a convention.
|
|
2703
|
+
*
|
|
2704
|
+
* The SQL planner plans a table for an http-api resource today, and before this injection it
|
|
2705
|
+
* derived the tenant column — WITH its index — from the primary-scope relationship. A bare
|
|
2706
|
+
* `z.string()` here takes precedence over that derivation, so the first `wildo db diff` after
|
|
2707
|
+
* the injection reported `DROP_INDEX organizationId` on Wonder Todos: a declared field
|
|
2708
|
+
* silently replacing a derived one, and dropping its index on the way past.
|
|
2709
|
+
*
|
|
2710
|
+
* These decorators restore the plan the relationship produced. They are also what
|
|
2711
|
+
* `resource-schema-awareness.md` requires of every `organizationId` in an application's own
|
|
2712
|
+
* schema, so the injected field now matches what an author would have had to write.
|
|
2713
|
+
*/
|
|
2714
|
+
[HTTP_API_TENANT_ANCHOR_FIELD]: z.string()
|
|
2715
|
+
.isDBIndexed()
|
|
2716
|
+
.isForeignKey()
|
|
2717
|
+
.excludeFromCreate()
|
|
2718
|
+
.excludeFromUpdate(),
|
|
2719
|
+
/*
|
|
2720
|
+
* NOT indexed, deliberately. A read-through resource has no local row, so nothing ever queries
|
|
2721
|
+
* this table by unit — the confinement is a predicate pushed to the REMOTE, in the remote's own
|
|
2722
|
+
* partition key. An index here would cost a migration on every PostgreSQL-backed surface to
|
|
2723
|
+
* serve a query that cannot be issued.
|
|
2724
|
+
*/
|
|
2725
|
+
[READ_THROUGH_ORGANIZATION_UNIT_FIELD_NAME]: z.string()
|
|
2726
|
+
.optional()
|
|
2727
|
+
.excludeFromCreate()
|
|
2728
|
+
.excludeFromUpdate(),
|
|
2729
|
+
});
|
|
2730
|
+
}
|
|
2331
2731
|
if (isZodObject(effectiveMainSchema)) {
|
|
2332
2732
|
for (const [fieldName, fieldSchema] of Object.entries(getZodObjectShape(effectiveMainSchema))) {
|
|
2333
2733
|
const declared = getDataCategories(fieldSchema);
|
|
@@ -2473,6 +2873,8 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2473
2873
|
const userNotifications = processUserNotifications(config.userNotifications || [], resourceIdentifier, operation, resourcePrimaryScope);
|
|
2474
2874
|
// Process m2mNotifications using helper function
|
|
2475
2875
|
const m2mNotifications = processM2MNotifications(config.m2mNotifications || [], resourceIdentifier, operation);
|
|
2876
|
+
// Parse once so partial authored policies keep defaults and every variant shares the same policy.
|
|
2877
|
+
const queueConfig = ResourceConfiguration_QueueConfigSchema.parse(config.queueConfig);
|
|
2476
2878
|
// Process each variant to create flattened operations
|
|
2477
2879
|
config.variants.forEach((variantParams, variantIndex) => {
|
|
2478
2880
|
// Note: Cascading delete is now handled via childOperations.lifecycle.onParentDelete on relationships
|
|
@@ -2556,6 +2958,7 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2556
2958
|
operationIdentifier: operation,
|
|
2557
2959
|
isOperationDefault,
|
|
2558
2960
|
serviceRuntimeMode: config.serviceRuntimeMode || ResourceOperation_ServiceRuntimeMode.INLINE,
|
|
2961
|
+
queueConfig,
|
|
2559
2962
|
requestDto: derivedRequestDto, // Temporary - will be replaced by buildAllOperationDtos
|
|
2560
2963
|
responseDto: operationResponseDto, // Temporary - will be replaced by buildAllOperationDtos
|
|
2561
2964
|
// When the variant supplied an explicit `requestDto`, it is an author-owned
|
|
@@ -2572,6 +2975,10 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2572
2975
|
// parts, unlike the notification families above, which the factory stamps with scope and
|
|
2573
2976
|
// identifier. `undefined` means the operation consumes no metered product.
|
|
2574
2977
|
recordsUsage: config.recordsUsage,
|
|
2978
|
+
// Same reasoning: one authored object, carried as-is. `undefined` means this operation
|
|
2979
|
+
// declares no purpose of its own beyond whatever `serviceConsentRequirement` already
|
|
2980
|
+
// requires application-wide (#1258 Step 3).
|
|
2981
|
+
consentGate: config.consentGate,
|
|
2575
2982
|
// Fields from ResourceConfiguration_OperationVariant_Base
|
|
2576
2983
|
variantType: variantParams.variantType,
|
|
2577
2984
|
resourceOperationLike: variantParams.resourceOperationLike,
|
|
@@ -2583,6 +2990,10 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2583
2990
|
collectionExport: variantParams.collectionExport,
|
|
2584
2991
|
requiredFeatures: normalizeRequiredFeatures(variantParams.requiredFeatures),
|
|
2585
2992
|
riskLevel: variantParams.riskLevel || ResourceOperationRiskLevel.LOW,
|
|
2993
|
+
// Undeclared stays undefined on purpose: `resolveOperationReversibility` derives the
|
|
2994
|
+
// answer from `resourceOperationLike` when the field is absent, so defaulting it here
|
|
2995
|
+
// would freeze the derivation at config time and make a DELETE added later look reversible.
|
|
2996
|
+
reversibility: variantParams.reversibility,
|
|
2586
2997
|
// Forwarded for the same reason as the flags below: the frontend resources client reads it
|
|
2587
2998
|
// off the RUNTIME operation, so dropping it here would leave a declared long-run timeout
|
|
2588
2999
|
// silently unapplied and the 30s default cutting the request (issue #237).
|
|
@@ -2597,10 +3008,17 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2597
3008
|
// an unforwarded flag would leave the authored requirement silently unenforced — the exact
|
|
2598
3009
|
// failure mode the flag exists to prevent.
|
|
2599
3010
|
requiresStepUpAuthentication: variantParams.requiresStepUpAuthentication,
|
|
3011
|
+
// Forwarded for the same reason: the controller, the service tier and the frontend client all read it off the
|
|
3012
|
+
// RUNTIME operation, so an unforwarded declaration would refuse every keyed request as undeclared.
|
|
3013
|
+
idempotencyKey: variantParams.idempotencyKey,
|
|
2600
3014
|
admitsCrossTenantPlatformAdministration: variantParams.admitsCrossTenantPlatformAdministration,
|
|
2601
3015
|
// Same forwarding obligation as its cross-tenant sibling: the authorizer reads this off the
|
|
2602
3016
|
// RUNTIME operation, so dropping it here would silently re-close the admin surface.
|
|
2603
3017
|
admitsCrossSubjectUserAdministration: variantParams.admitsCrossSubjectUserAdministration,
|
|
3018
|
+
// Third sibling, same forwarding obligation: the scope-root directory classification reads
|
|
3019
|
+
// this off the RUNTIME operation, so dropping it here would re-close a door whose declared
|
|
3020
|
+
// collection shape is the only thing that makes it safe (#1267).
|
|
3021
|
+
admitsSelfConfinedScopeRootWrite: variantParams.admitsSelfConfinedScopeRootWrite,
|
|
2604
3022
|
// Forwarded for the same reason again: the post-commit audit emission reads it off the
|
|
2605
3023
|
// RUNTIME operation. Dropping it would either lose an authored below-floor opt-in (a silent
|
|
2606
3024
|
// audit gap) or lose an authored suppression (a duplicate row next to a purpose-built event).
|
|
@@ -2632,6 +3050,20 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2632
3050
|
if (haveBulkOperation && (operationToCheck === CoreResourceOperation.READ || operationToCheck === CoreResourceOperation.LIST)) {
|
|
2633
3051
|
throw createConfigurationError(`Operation '${operation}' cannot have bulk operations (read and list are not bulkable)`);
|
|
2634
3052
|
}
|
|
3053
|
+
/*
|
|
3054
|
+
* A bulk twin of CREATE has no coherent meaning, so it is refused rather than half-built (#1551).
|
|
3055
|
+
*
|
|
3056
|
+
* The twin keeps `operationIdentifier: 'create'`, so the controller, the service dispatcher and both
|
|
3057
|
+
* repositories route it to the SINGLE-row create; only the request DTO pretended otherwise, and this
|
|
3058
|
+
* factory and the DTO builder even disagreed on which pretence. Batch creation is CREATE_MANY, whose
|
|
3059
|
+
* request is the `{ data: row[] }` envelope its service reads. No authored resource declared a bulk
|
|
3060
|
+
* twin of CREATE when this refusal was added (22 `haveBulkOperation` declarations, all on DELETE or
|
|
3061
|
+
* UPDATE-like operations).
|
|
3062
|
+
*/
|
|
3063
|
+
if (haveBulkOperation && operationToCheck === CoreResourceOperation.CREATE) {
|
|
3064
|
+
throw createConfigurationError(`Operation '${operation}' cannot have a bulk twin: every tier would run it as a single-row create. `
|
|
3065
|
+
+ `Declare ${CoreResourceOperation.CREATE_MANY} for batch creation — its request is { data: row[] }.`);
|
|
3066
|
+
}
|
|
2635
3067
|
const tokenStateSideEffects = [
|
|
2636
3068
|
...(apiCallParams.tokenGeneration ? ['tokenGeneration'] : []),
|
|
2637
3069
|
...(apiCallParams.tokenRevocation ? ['tokenRevocation'] : []),
|
|
@@ -2668,6 +3100,9 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2668
3100
|
if (apiCallParams.tokenRevocation) {
|
|
2669
3101
|
validateTokenRevocationConfig(apiCallParams.tokenRevocation, resourceIdentifier, operation);
|
|
2670
3102
|
}
|
|
3103
|
+
if (apiCallParams.tokenAuthentication) {
|
|
3104
|
+
validateTokenAuthenticationConfig(apiCallParams.tokenAuthentication, resourceIdentifier, operation);
|
|
3105
|
+
}
|
|
2671
3106
|
const apiCallOperationFields = {
|
|
2672
3107
|
...baseOperationFields,
|
|
2673
3108
|
httpVerb,
|
|
@@ -2705,7 +3140,7 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2705
3140
|
const searchableOptions = variantParams.searchableOptions || { caseSensitive: false, fullMatchOnly: false };
|
|
2706
3141
|
const rawFilterFields = variantParams.filterFields || {};
|
|
2707
3142
|
const sortFields = variantParams.sortFields || [];
|
|
2708
|
-
const maxPaginatedResultPerPageLimit = variantParams.maxPaginatedResultPerPageLimit ||
|
|
3143
|
+
const maxPaginatedResultPerPageLimit = variantParams.maxPaginatedResultPerPageLimit || DEFAULT_SEARCH_PAGE_CEILING;
|
|
2709
3144
|
const filterFields = {};
|
|
2710
3145
|
Object.entries(rawFilterFields).forEach(([key, value]) => {
|
|
2711
3146
|
if (typeof value !== 'function') {
|
|
@@ -2746,7 +3181,7 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2746
3181
|
// LIST has one pagination authority. Keep the effective ceiling on the resolved
|
|
2747
3182
|
// operation so request/response DTO construction, repositories, auto-generated
|
|
2748
3183
|
// SUMMARY/CONTEXT variants and API-reference projection all observe the same value.
|
|
2749
|
-
maxPaginatedResultPerPageLimit: variantParams.maxPaginatedResultPerPageLimit ??
|
|
3184
|
+
maxPaginatedResultPerPageLimit: variantParams.maxPaginatedResultPerPageLimit ?? DEFAULT_LIST_PAGE_CEILING,
|
|
2750
3185
|
};
|
|
2751
3186
|
if (variantParams.filterFields !== undefined) {
|
|
2752
3187
|
listEnrichment.filterFields = variantParams.filterFields;
|
|
@@ -2761,28 +3196,27 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2761
3196
|
operations.push(apiCallOperationFields);
|
|
2762
3197
|
// Add bulk operation if enabled
|
|
2763
3198
|
if (haveBulkOperation) {
|
|
2764
|
-
|
|
2765
|
-
|
|
2766
|
-
|
|
2767
|
-
|
|
2768
|
-
|
|
2769
|
-
|
|
2770
|
-
|
|
2771
|
-
|
|
2772
|
-
|
|
2773
|
-
|
|
2774
|
-
|
|
2775
|
-
|
|
2776
|
-
}
|
|
2777
|
-
|
|
2778
|
-
|
|
2779
|
-
: Resources_BulkOperationBaseSchema;
|
|
2780
|
-
})();
|
|
3199
|
+
// The documented, enforced batch limit (`BULK_OPERATION_DEFAULT_MAX_SELECTION` unless the
|
|
3200
|
+
// variant declares `bulkOperationMaxSelection`). A bulk CREATE is bounded on its `data` rows
|
|
3201
|
+
// for the same reason a bulk UPDATE/DELETE is bounded on its `_ids`.
|
|
3202
|
+
const bulkMaxSelection = resolveBulkOperationMaxSelection(apiCallParams);
|
|
3203
|
+
const rowRequestDto = apiCallOperationFields.requestDto;
|
|
3204
|
+
// The DTO builder rebuilds this later from the same function; both must agree.
|
|
3205
|
+
const bulkDto = wrapRequestDtoAsBulk({
|
|
3206
|
+
rowRequestDto: rowRequestDto && !(rowRequestDto instanceof z.ZodObject && Object.keys(rowRequestDto.shape).length === 0)
|
|
3207
|
+
? rowRequestDto
|
|
3208
|
+
: undefined,
|
|
3209
|
+
maxSelection: bulkMaxSelection,
|
|
3210
|
+
// The DTO builder's predicate, verbatim, so the two constructions cannot disagree: a bulk twin
|
|
3211
|
+
// of CREATE is refused above, and only CREATE_MANY takes `{ data: [] }`.
|
|
3212
|
+
isCreate: operationToCheck === CoreResourceOperation.CREATE_MANY,
|
|
3213
|
+
});
|
|
2781
3214
|
const bulkOperationFields = {
|
|
2782
3215
|
...apiCallOperationFields,
|
|
2783
3216
|
isBulkOperation: true,
|
|
2784
3217
|
isOperationDefault: false, // Bulk operations are never default
|
|
2785
|
-
requestDto: bulkDto
|
|
3218
|
+
requestDto: bulkDto,
|
|
3219
|
+
bulkOperationMaxSelection: bulkMaxSelection,
|
|
2786
3220
|
};
|
|
2787
3221
|
operations.push(bulkOperationFields);
|
|
2788
3222
|
}
|
|
@@ -2792,7 +3226,10 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2792
3226
|
const { variantType, ...specificFields } = variantParams; // Extract variantType and get rest
|
|
2793
3227
|
const nonApiCallOperation = {
|
|
2794
3228
|
...baseOperationFields,
|
|
2795
|
-
...specificFields
|
|
3229
|
+
...specificFields,
|
|
3230
|
+
...((variantParams.variantType === ResourceOperationVariantType.CRON_JOB || variantParams.variantType === ResourceOperationVariantType.BATCH_JOB)
|
|
3231
|
+
? { scheduledRecovery: normalizeScheduledRecoveryPolicy(variantParams.scheduledRecovery) }
|
|
3232
|
+
: {}),
|
|
2796
3233
|
};
|
|
2797
3234
|
operations.push(nonApiCallOperation);
|
|
2798
3235
|
}
|
|
@@ -2834,6 +3271,7 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2834
3271
|
operationIdentifier: operation,
|
|
2835
3272
|
isOperationDefault: false, // Auto-variants are never operation default
|
|
2836
3273
|
serviceRuntimeMode: config.serviceRuntimeMode || ResourceOperation_ServiceRuntimeMode.INLINE,
|
|
3274
|
+
queueConfig,
|
|
2837
3275
|
requestDto: defaultApiCallVariant.requestDto || deriveRequestDto(operation, effectiveMainSchema, undefined), // Temporary - will be replaced by buildAllOperationDtos
|
|
2838
3276
|
// Forwarded for the same reason as `unimplementedAcknowledgement` below: an auto-variant
|
|
2839
3277
|
// is a projection of the default variant, so it inherits that variant's request contract
|
|
@@ -2841,6 +3279,15 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2841
3279
|
// AUTHORED contract look auto-derived to the request-contract-breadth guard.
|
|
2842
3280
|
hasCustomRequestDto: defaultApiCallVariant.hasCustomRequestDto ?? !!defaultApiCallVariant.requestDto,
|
|
2843
3281
|
responseDto, // Temporary - will be replaced by buildAllOperationDtos
|
|
3282
|
+
// Stamped like every other factory-built operation, and it is what makes "temporary" true. An
|
|
3283
|
+
// auto-variant's `responseDto` is framework-derived, but without the flag the DTO rebuild
|
|
3284
|
+
// fell back to its structural heuristic, found the temporary schema "significantly
|
|
3285
|
+
// different" from the rebuilt one and PRESERVED it as custom. For a CONTEXT variant that
|
|
3286
|
+
// temporary schema is the context DTO of the empty-registry factory pass, so the full-
|
|
3287
|
+
// registry rebuild added the runtime relationship field BESIDE the fallback one:
|
|
3288
|
+
// `users/self/context` declared both `userSelfPreference` and `userSelfPreferences`, at
|
|
3289
|
+
// runtime and in the published API reference (#582).
|
|
3290
|
+
hasCustomResponseDto: false,
|
|
2844
3291
|
notificationBadgeOperations: config.notificationBadgeOperations || [],
|
|
2845
3292
|
userNotifications,
|
|
2846
3293
|
m2mNotifications,
|
|
@@ -2848,6 +3295,9 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2848
3295
|
resourceOperationLike: defaultApiCallVariant.resourceOperationLike,
|
|
2849
3296
|
requiredFeatures: normalizeRequiredFeatures(defaultApiCallVariant.requiredFeatures),
|
|
2850
3297
|
riskLevel: defaultApiCallVariant.riskLevel || ResourceOperationRiskLevel.LOW,
|
|
3298
|
+
// Inherited like riskLevel: an auto-variant is a projection of the default variant, so a
|
|
3299
|
+
// SUMMARY or CONTEXT derivative of an irreversible operation is equally irreversible.
|
|
3300
|
+
reversibility: defaultApiCallVariant.reversibility,
|
|
2851
3301
|
// Inherited like riskLevel: an auto-variant is a projection of the default variant. The
|
|
2852
3302
|
// read-shaped projections are unlikely to need it, but inheriting keeps "projection of
|
|
2853
3303
|
// the default" a single consistent rule rather than a per-field accident.
|
|
@@ -2863,11 +3313,17 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2863
3313
|
// anyway — inheriting keeps that a property of the exemption list rather than an accident
|
|
2864
3314
|
// of this projection.)
|
|
2865
3315
|
requiresStepUpAuthentication: defaultApiCallVariant.requiresStepUpAuthentication,
|
|
3316
|
+
// Inherited like step-up: an auto-variant projects the default variant's contract, header included.
|
|
3317
|
+
idempotencyKey: defaultApiCallVariant.idempotencyKey,
|
|
2866
3318
|
admitsCrossTenantPlatformAdministration: defaultApiCallVariant.admitsCrossTenantPlatformAdministration,
|
|
2867
3319
|
// Inherited for the same reason as the cross-tenant flag: an auto-variant is a PROJECTION of
|
|
2868
3320
|
// the default operation and must make the same addressing claim, or it would refuse the very
|
|
2869
3321
|
// subjects the operation it projects is admitted to administer.
|
|
2870
3322
|
admitsCrossSubjectUserAdministration: defaultApiCallVariant.admitsCrossSubjectUserAdministration,
|
|
3323
|
+
// Inherited for the same reason as both siblings: an auto-variant projects the default
|
|
3324
|
+
// variant's contract, and a projection that dropped this claim would be classified as an
|
|
3325
|
+
// unconfined directory write while the operation it projects is not.
|
|
3326
|
+
admitsSelfConfinedScopeRootWrite: defaultApiCallVariant.admitsSelfConfinedScopeRootWrite,
|
|
2871
3327
|
// Inherited for the same reason: an auto-variant is a projection of the default variant,
|
|
2872
3328
|
// so it must make the same audit claim. Inheriting a `suppressGenericEvent` matters most —
|
|
2873
3329
|
// the purpose-built event that supersedes the default covers its projections too, and a
|
|
@@ -2924,6 +3380,17 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
2924
3380
|
if (defaultApiCallVariant.tokenRevocation) {
|
|
2925
3381
|
validateTokenRevocationConfig(defaultApiCallVariant.tokenRevocation, resourceIdentifier, `${operation}.${variantKey}`);
|
|
2926
3382
|
}
|
|
3383
|
+
// `tokenAuthentication` is deliberately NOT re-validated here, and the absence is a decision
|
|
3384
|
+
// rather than an omission (issue #313). `defaultApiCallVariant` is SELECTED from `operations`
|
|
3385
|
+
// — variants that were built, and validated, by the authored path above — so its
|
|
3386
|
+
// `tokenAuthentication` cannot be a value that block has not already refused. A guard here
|
|
3387
|
+
// would be unreachable, and an unreachable guard is not defence in depth: it is an untested
|
|
3388
|
+
// claim that reads like coverage (`.claude/rules/invariant-call-site-enumeration.md` #25,
|
|
3389
|
+
// #19). Measured: neutering it left every pin in
|
|
3390
|
+
// `token-authentication-type-list.guard.test.ts` green.
|
|
3391
|
+
//
|
|
3392
|
+
// The same is true of the two blocks immediately above — they predate this note and are kept
|
|
3393
|
+
// as found, but do not add a fourth on their model.
|
|
2927
3394
|
return baseOperationFields;
|
|
2928
3395
|
};
|
|
2929
3396
|
// Generate READ.summary variant
|
|
@@ -3146,6 +3613,7 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
3146
3613
|
isSystemResource,
|
|
3147
3614
|
primaryKeyIdentifiesInitiator,
|
|
3148
3615
|
systemAccessPolicy: effectiveSystemAccessPolicy,
|
|
3616
|
+
subjectErasureLane,
|
|
3149
3617
|
isAnonymizable,
|
|
3150
3618
|
transpositionPolicy: isAnonymizable
|
|
3151
3619
|
? (transpositionPolicy ?? ResourceTranspositionPolicy.ADD)
|
|
@@ -3187,6 +3655,7 @@ export function createResourceConfiguration_Initialization(params) {
|
|
|
3187
3655
|
isSystemResource,
|
|
3188
3656
|
primaryKeyIdentifiesInitiator,
|
|
3189
3657
|
systemAccessPolicy: effectiveSystemAccessPolicy,
|
|
3658
|
+
subjectErasureLane,
|
|
3190
3659
|
isAnonymizable,
|
|
3191
3660
|
transpositionPolicy: isAnonymizable
|
|
3192
3661
|
? (transpositionPolicy ?? ResourceTranspositionPolicy.ADD)
|