@wildo-ai/saas-backend-lib 1.1.2 → 1.1.4
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__/fixture-deep-partial.d.ts.map +1 -1
- package/dist/esm/__tests__/integration/redis-integration-gate.d.ts.map +1 -1
- package/dist/esm/__tests__/setup.d.ts.map +1 -1
- package/dist/esm/__tests__/test-container.d.ts.map +1 -1
- package/dist/esm/applications/models/applications.backend.schemas.d.ts.map +1 -1
- package/dist/esm/applications/seeds/application-metadata-defaults.seeds.d.ts.map +1 -1
- package/dist/esm/applications/services/worker-remote-client-factory.backend.service.d.ts.map +1 -1
- package/dist/esm/applications/services/worker-remote-client-factory.backend.service.js +19 -1
- package/dist/esm/applications/services/worker-remote-client-factory.backend.service.js.map +1 -1
- package/dist/esm/base-classes/models/manual-controllers.backend.definition.d.ts.map +1 -1
- package/dist/esm/base-classes/models/manual-controllers.backend.definition.js +4 -0
- package/dist/esm/base-classes/models/manual-controllers.backend.definition.js.map +1 -1
- package/dist/esm/base-classes/models/repositories.backend.schemas.d.ts.map +1 -1
- package/dist/esm/base-classes/services/__tests__/mock-resource-operation-helper.service.d.ts +1 -1
- package/dist/esm/base-classes/services/__tests__/mock-resource-operation-helper.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/batches/batches-cronjobs-custom-execution.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/batches/batches-cronjobs-executor.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/batches/batches-cronjobs-resource-execution.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/batches/child-lifecycle-teardown.batch.backend.service.d.ts +35 -0
- package/dist/esm/base-classes/services/batches/child-lifecycle-teardown.batch.backend.service.d.ts.map +1 -0
- package/dist/esm/base-classes/services/batches/child-lifecycle-teardown.batch.backend.service.js +111 -0
- package/dist/esm/base-classes/services/batches/child-lifecycle-teardown.batch.backend.service.js.map +1 -0
- package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.d.ts +50 -0
- package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.d.ts.map +1 -0
- package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.js +210 -0
- package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.js.map +1 -0
- package/dist/esm/base-classes/services/batches/engine-custom-batch-manifests.d.ts +111 -0
- package/dist/esm/base-classes/services/batches/engine-custom-batch-manifests.d.ts.map +1 -1
- package/dist/esm/base-classes/services/batches/engine-custom-batch-manifests.js +140 -0
- package/dist/esm/base-classes/services/batches/engine-custom-batch-manifests.js.map +1 -1
- package/dist/esm/base-classes/services/batches/resource-retention-sweep.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/batches/suspension-reactivation-sweep.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/controllers/abstract-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.js +27 -6
- package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/controllers/controllers-registry-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/controllers/controllers-registry-handler.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/controllers/utils/audit-access-fields.backend.utils.d.ts.map +1 -1
- package/dist/esm/base-classes/services/controllers/utils/operation-response-serializer.backend.utils.d.ts.map +1 -1
- package/dist/esm/base-classes/services/controllers/validate-field-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/__tests__/method-span-scan.guard-helpers.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/__tests__/mock-repositories-registry-handler.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/field-clearing-partition.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-filter-translation.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.d.ts +124 -13
- package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.js +220 -25
- package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-query.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.d.ts +60 -8
- package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.js +191 -26
- package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.d.ts +47 -4
- package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.js +96 -29
- package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.d.ts +55 -0
- package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.d.ts.map +1 -0
- package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.js +114 -0
- package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.js.map +1 -0
- package/dist/esm/base-classes/services/repositories/http-api/http-api-row-projection.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-subject-erasure-effect.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.d.ts +89 -14
- package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.js +84 -11
- package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/odata-query-compiler.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/odoo-jsonrpc-compiler.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/rest-json-query-compiler.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.js +9 -1
- package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-repository.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-source.backend.port.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.d.ts +106 -0
- package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.js +266 -20
- package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.js +23 -3
- package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/repository-guarded-mutation.backend.types.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.d.ts +5 -2
- package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.js +34 -3
- package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/repository-version-metadata.backend.utils.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/resource-write-integrity.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/seed-row-default-materialization.backend.d.ts +72 -0
- package/dist/esm/base-classes/services/repositories/seed-row-default-materialization.backend.d.ts.map +1 -0
- package/dist/esm/base-classes/services/repositories/seed-row-default-materialization.backend.js +88 -0
- package/dist/esm/base-classes/services/repositories/seed-row-default-materialization.backend.js.map +1 -0
- package/dist/esm/base-classes/services/repositories/unique-constraint-conflict-reference.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/resource-operations-helper.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/__tests__/mock-services-registry-handler.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/__tests__/mock-system-access.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/read-only-field-change.backend.utils.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/resource-operation-audit-emission.backend.utils.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/resource-operation-custom-implementation-base.backend.service.d.ts +22 -0
- package/dist/esm/base-classes/services/services/resource-operation-custom-implementation-base.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/resource-operation-custom-implementation-base.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/services/resource-operation-custom-implementation-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/resource-operation-custom-implementation.factory.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/resource-operation-implementation-coverage.backend.utils.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/resource-operation-server-injected-fields.backend.utils.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/resource-operation-transaction-persistence.backend.utils.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/resource-status-transition.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/resource-status-transition.custom-impl.backend.service.js +4 -1
- package/dist/esm/base-classes/services/services/resource-status-transition.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.d.ts +11 -0
- package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.js +39 -5
- package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.js.map +1 -1
- package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.d.ts +181 -2
- package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.js +571 -45
- package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/services/system-access.backend.service.d.ts +36 -3
- package/dist/esm/base-classes/services/services/system-access.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/system-access.backend.service.js +70 -8
- package/dist/esm/base-classes/services/services/system-access.backend.service.js.map +1 -1
- package/dist/esm/base-classes/utils/backend-type-utils.d.ts.map +1 -1
- package/dist/esm/base-classes/utils/single-subject-addressing.backend.utils.d.ts.map +1 -1
- package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.d.ts +28 -0
- package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.d.ts.map +1 -0
- package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.js +90 -0
- package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.js.map +1 -0
- package/dist/esm/billing/batches/usage-flush.batch.backend.service.d.ts +44 -0
- package/dist/esm/billing/batches/usage-flush.batch.backend.service.d.ts.map +1 -0
- package/dist/esm/billing/batches/usage-flush.batch.backend.service.js +99 -0
- package/dist/esm/billing/batches/usage-flush.batch.backend.service.js.map +1 -0
- package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.d.ts +91 -0
- package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.d.ts.map +1 -0
- package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.js +152 -0
- package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.js.map +1 -0
- package/dist/esm/billing/services/back-office/abstract-billing.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/back-office/billing-feature-sync.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.d.ts +186 -0
- package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.d.ts.map +1 -0
- package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.js +475 -0
- package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.js.map +1 -0
- package/dist/esm/billing/services/back-office/billing-state.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/back-office/billing-state.backend.service.js +11 -1
- package/dist/esm/billing/services/back-office/billing-state.backend.service.js.map +1 -1
- package/dist/esm/billing/services/back-office/billing-subject-erasure-effect.backend.d.ts.map +1 -1
- package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.d.ts +100 -0
- package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.js +209 -6
- package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.js.map +1 -1
- package/dist/esm/billing/services/back-office/usage-metering.backend.service.d.ts +200 -4
- package/dist/esm/billing/services/back-office/usage-metering.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/back-office/usage-metering.backend.service.js +593 -64
- package/dist/esm/billing/services/back-office/usage-metering.backend.service.js.map +1 -1
- package/dist/esm/billing/services/billing-adapter-registry.backend.d.ts +36 -0
- package/dist/esm/billing/services/billing-adapter-registry.backend.d.ts.map +1 -0
- package/dist/esm/billing/services/billing-adapter-registry.backend.js +83 -0
- package/dist/esm/billing/services/billing-adapter-registry.backend.js.map +1 -0
- package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.d.ts +9 -0
- package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.d.ts.map +1 -1
- package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.js +11 -1
- package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.js.map +1 -1
- package/dist/esm/billing/services/billing.utils.d.ts.map +1 -1
- package/dist/esm/billing/services/custom-impl/billing-account.mutations.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/custom-impl/billing-account.mutations.custom-impl.backend.service.js +48 -7
- package/dist/esm/billing/services/custom-impl/billing-account.mutations.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.d.ts +70 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.d.ts.map +1 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.js +98 -2
- package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.js.map +1 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.d.ts +30 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.d.ts.map +1 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.js +43 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.js.map +1 -1
- package/dist/esm/billing/services/custom-impl/credit-pool.custom-ops.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.d.ts +11 -3
- package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.js +30 -16
- package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/billing/services/custom-impl/subscription.mutations.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/custom-impl/subscription.mutations.custom-impl.backend.service.js +104 -25
- package/dist/esm/billing/services/custom-impl/subscription.mutations.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.d.ts +21 -1
- package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.js +109 -2
- package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.js.map +1 -1
- package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.d.ts +52 -0
- package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.d.ts.map +1 -0
- package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.js +74 -0
- package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.js.map +1 -0
- package/dist/esm/billing/services/webhooks/billing-webhook-adapter.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/webhooks/billing-webhook-capability-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.d.ts +104 -11
- package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.js +310 -29
- package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.js.map +1 -1
- package/dist/esm/billing/testing/billing-test-fixtures.d.ts.map +1 -1
- package/dist/esm/billing/testing/mock-billing-provider.d.ts +30 -1
- package/dist/esm/billing/testing/mock-billing-provider.d.ts.map +1 -1
- package/dist/esm/billing/testing/mock-billing-provider.js +25 -0
- package/dist/esm/billing/testing/mock-billing-provider.js.map +1 -1
- package/dist/esm/charts/controllers/chart.backend.controller.d.ts.map +1 -1
- package/dist/esm/charts/services/chart-registry.backend.service.d.ts +80 -7
- package/dist/esm/charts/services/chart-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/charts/services/chart-registry.backend.service.js +115 -8
- package/dist/esm/charts/services/chart-registry.backend.service.js.map +1 -1
- package/dist/esm/companion-exports.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/audit-logs.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/batches/audit-logs-archive.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/batches/audit-logs-archive.batch.backend.service.js +11 -4
- package/dist/esm/compliance/audit-trails/batches/audit-logs-archive.batch.backend.service.js.map +1 -1
- package/dist/esm/compliance/audit-trails/batches/immudb-audit-reconcile.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/batches/siem-webhook-delivery.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/__tests__/mock-audit-logs.service.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.d.ts +225 -13
- package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.js +340 -62
- package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.js.map +1 -1
- package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.d.ts +350 -10
- package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.js +562 -10
- package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.js.map +1 -1
- package/dist/esm/compliance/audit-trails/services/composite-audit-log-sink.backend.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/composite-audit-log-sink.backend.js +7 -1
- package/dist/esm/compliance/audit-trails/services/composite-audit-log-sink.backend.js.map +1 -1
- package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.d.ts +6 -2
- package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.js +31 -9
- package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.d.ts +42 -0
- package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.js +57 -1
- package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.js.map +1 -1
- package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.d.ts +110 -0
- package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.d.ts.map +1 -0
- package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.js +192 -0
- package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.js.map +1 -0
- package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.js +52 -0
- package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.js.map +1 -1
- package/dist/esm/compliance/audit-trails/services/utils/ocsf-class-mapping.backend.utils.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/utils/siem-dictionary.backend.utils.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/utils/siem-ocsf-projection.backend.utils.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/utils/siem-projection-contract.backend.utils.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/utils/audit-actor.backend.utils.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/utils/layer2-audit-provider-boot-diagnostic.backend.utils.d.ts.map +1 -1
- package/dist/esm/compliance/index.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/retention-hide-predicate.backend.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/services/subject-erasure-external-effects.backend.service.d.ts.map +1 -1
- package/dist/esm/compliance/privacy/services/subject-session-revocation.backend.service.d.ts.map +1 -1
- package/dist/esm/config/bootstrap/application-runtime-profile.backend.d.ts +5 -0
- package/dist/esm/config/bootstrap/application-runtime-profile.backend.d.ts.map +1 -1
- package/dist/esm/config/bootstrap/application-runtime-profile.backend.js +6 -0
- package/dist/esm/config/bootstrap/application-runtime-profile.backend.js.map +1 -1
- package/dist/esm/config/bootstrap/minion-initialization-projection.backend.d.ts.map +1 -1
- package/dist/esm/config/bootstrap/runtime-principal-attestation.backend.service.d.ts.map +1 -1
- package/dist/esm/config/bootstrap/runtime-principal-attestation.backend.service.js +3 -0
- package/dist/esm/config/bootstrap/runtime-principal-attestation.backend.service.js.map +1 -1
- package/dist/esm/config/bootstrap/runtime-principal.backend.service.d.ts.map +1 -1
- package/dist/esm/config/custom/application-config-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/config/models/app-config-secrets.backend.schemas.d.ts.map +1 -1
- package/dist/esm/config/models/app-config.backend-authored.definitions.d.ts.map +1 -1
- package/dist/esm/config/models/app-config.backend.schemas.d.ts +145 -49
- package/dist/esm/config/models/app-config.backend.schemas.d.ts.map +1 -1
- package/dist/esm/config/models/app-config.backend.schemas.js +121 -12
- package/dist/esm/config/models/app-config.backend.schemas.js.map +1 -1
- package/dist/esm/config/models/app-env-config.backend.schemas.d.ts.map +1 -1
- package/dist/esm/config/models/apps-manager-transport.backend.definitions.d.ts +36 -0
- package/dist/esm/config/models/apps-manager-transport.backend.definitions.d.ts.map +1 -0
- package/dist/esm/config/models/apps-manager-transport.backend.definitions.js +36 -0
- package/dist/esm/config/models/apps-manager-transport.backend.definitions.js.map +1 -0
- package/dist/esm/config/models/config-mutation-boundary.utils.d.ts.map +1 -1
- package/dist/esm/config/models/postgresql-env-config.backend.schemas.d.ts.map +1 -1
- package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.d.ts +38 -15
- package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.d.ts.map +1 -1
- package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.js +17 -2
- package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.js.map +1 -1
- package/dist/esm/config/models/runtime-topology.backend.contracts.d.ts.map +1 -1
- package/dist/esm/config/services/__tests__/mock-app-configuration.service.d.ts.map +1 -1
- package/dist/esm/config/services/app-configuration-loader.backend.service.d.ts +0 -1
- package/dist/esm/config/services/app-configuration-loader.backend.service.d.ts.map +1 -1
- package/dist/esm/config/services/app-configuration-loader.backend.service.js +71 -76
- package/dist/esm/config/services/app-configuration-loader.backend.service.js.map +1 -1
- package/dist/esm/config/services/app-configuration.backend.service.d.ts.map +1 -1
- package/dist/esm/config/services/app-configuration.backend.service.js +23 -1
- package/dist/esm/config/services/app-configuration.backend.service.js.map +1 -1
- package/dist/esm/config/services/app-configuration.backend.utils.d.ts +33 -0
- package/dist/esm/config/services/app-configuration.backend.utils.d.ts.map +1 -1
- package/dist/esm/config/services/app-configuration.backend.utils.js +39 -1
- package/dist/esm/config/services/app-configuration.backend.utils.js.map +1 -1
- package/dist/esm/config/services/application-startup-config-validator.backend.service.d.ts +37 -0
- package/dist/esm/config/services/application-startup-config-validator.backend.service.d.ts.map +1 -1
- package/dist/esm/config/services/application-startup-config-validator.backend.service.js +69 -1
- package/dist/esm/config/services/application-startup-config-validator.backend.service.js.map +1 -1
- package/dist/esm/data-seeding/batches/data-seeding-run-cleanup.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/data-seeding/batches/data-seeding-scheduled-rerun.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/data-seeding/controllers/data-seeding-admin.backend.contracts.d.ts.map +1 -1
- package/dist/esm/data-seeding/controllers/data-seeding-admin.backend.controller.d.ts.map +1 -1
- package/dist/esm/data-seeding/data-seeding-models.d.ts.map +1 -1
- package/dist/esm/data-seeding/models/business-key-resolver.shared.utils.d.ts.map +1 -1
- package/dist/esm/data-seeding/models/data-seed-execution-context.shared.types.d.ts.map +1 -1
- package/dist/esm/data-seeding/models/data-seed-migrator-runner.shared.utils.d.ts.map +1 -1
- package/dist/esm/data-seeding/models/data-seed-reconciler.shared.utils.d.ts.map +1 -1
- package/dist/esm/data-seeding/models/data-seed-row-metadata.shared.schemas.d.ts.map +1 -1
- package/dist/esm/data-seeding/models/data-seed-row-metadata.shared.utils.d.ts.map +1 -1
- package/dist/esm/data-seeding/models/data-seed-run.shared.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/data-seeding/models/data-seed-run.shared.schemas.d.ts.map +1 -1
- package/dist/esm/data-seeding/models/data-seed-trigger-mode-matrix.shared.utils.d.ts.map +1 -1
- package/dist/esm/data-seeding/models/data-seed.shared.schemas.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/data-seed-application-bootstrap.backend.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/data-seed-dispatcher.backend.service.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/data-seed-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/data-seed-scope-resolver-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/engines/additive-seed-engine.backend.service.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/engines/lazy-seed-engine.backend.service.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/engines/manual-seed-engine.backend.service.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/engines/sync-seed-engine.backend.service.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/engines/upgrade-seed-engine.backend.service.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/shared/data-seed-business-key.shared.utils.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/shared/data-seed-error.shared.utils.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/shared/data-seed-run-counters.shared.types.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/shared/data-seed-run-ledger.backend.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/shared/data-seed-scope-anchor.shared.types.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/shared/data-seed-scope-iteration.shared.utils.d.ts.map +1 -1
- package/dist/esm/data-seeding/services/shared/data-seed-scope-resolution.backend.d.ts.map +1 -1
- package/dist/esm/databases/models/aggregation.backend.schemas.d.ts.map +1 -1
- package/dist/esm/databases/models/databases.backend.schemas.d.ts.map +1 -1
- package/dist/esm/databases/models/filter.backend.schemas.d.ts.map +1 -1
- package/dist/esm/databases/models/resolve-persistence-adapter.backend.utils.d.ts.map +1 -1
- package/dist/esm/databases/models/sql.backend.schemas.d.ts.map +1 -1
- package/dist/esm/databases/models/transaction.shared.schemas.d.ts.map +1 -1
- package/dist/esm/databases/services/__tests__/mock-mongo-transaction-registry.service.d.ts.map +1 -1
- package/dist/esm/databases/services/__tests__/mock-mongodb.service.d.ts.map +1 -1
- package/dist/esm/databases/services/__tests__/mock-mongoose-model.service.d.ts.map +1 -1
- package/dist/esm/databases/services/__tests__/mock-redis.service.d.ts.map +1 -1
- package/dist/esm/databases/services/__tests__/mock-zod-mongoose-schema-convertor.service.d.ts.map +1 -1
- package/dist/esm/databases/services/aggregation/aggregation-authorization.backend.service.d.ts.map +1 -1
- package/dist/esm/databases/services/aggregation/aggregation-query.backend.service.d.ts.map +1 -1
- package/dist/esm/databases/services/aggregation/computed-measure-evaluator.backend.service.d.ts.map +1 -1
- package/dist/esm/databases/services/aggregation/field-access-validator.backend.service.d.ts.map +1 -1
- package/dist/esm/databases/services/aggregation/time-series-densifier.backend.service.d.ts.map +1 -1
- package/dist/esm/databases/services/aggregation/topn-processor.backend.service.d.ts.map +1 -1
- package/dist/esm/databases/services/aggregation/window-function-processor.backend.service.d.ts.map +1 -1
- package/dist/esm/databases/services/db-utils.d.ts.map +1 -1
- package/dist/esm/databases/services/mongo-aggregation.backend.service.d.ts.map +1 -1
- package/dist/esm/databases/services/mongodb.service.d.ts.map +1 -1
- package/dist/esm/databases/services/postgresql-aggregation.backend.service.d.ts.map +1 -1
- package/dist/esm/databases/services/postgresql-database.backend.service.d.ts.map +1 -1
- package/dist/esm/databases/services/postgresql-development-provisioning.backend.d.ts.map +1 -1
- package/dist/esm/databases/services/postgresql-filter.backend.service.d.ts.map +1 -1
- package/dist/esm/databases/services/postgresql-migration-runner.backend.d.ts.map +1 -1
- package/dist/esm/databases/services/postgresql-schema-ddl.backend.d.ts.map +1 -1
- package/dist/esm/databases/services/postgresql-schema-migration-sql.backend.d.ts.map +1 -1
- package/dist/esm/databases/services/postgresql-schema-plan-diff.backend.d.ts.map +1 -1
- package/dist/esm/databases/services/postgresql-schema-plan-diff.backend.js +48 -0
- package/dist/esm/databases/services/postgresql-schema-plan-diff.backend.js.map +1 -1
- package/dist/esm/databases/services/postgresql-schema-plan-lockfile.backend.d.ts.map +1 -1
- package/dist/esm/databases/services/redis.service.d.ts.map +1 -1
- package/dist/esm/databases/services/resource-persistence-unit-of-work.backend.service.d.ts.map +1 -1
- package/dist/esm/databases/services/schema-planning-standalone.backend.d.ts.map +1 -1
- package/dist/esm/databases/services/zod-to-mongoose-schema-convertor.backend.service.d.ts.map +1 -1
- package/dist/esm/databases/services/zod-to-sql-hybrid-schema.planner.d.ts.map +1 -1
- package/dist/esm/databases/utils/postgresql-identifier.backend.utils.d.ts.map +1 -1
- package/dist/esm/errors/services/__tests__/mock-error-builder.service.d.ts.map +1 -1
- package/dist/esm/errors/services/error-builder.backend.service.d.ts +13 -1
- package/dist/esm/errors/services/error-builder.backend.service.d.ts.map +1 -1
- package/dist/esm/errors/services/error-builder.backend.service.js +13 -1
- package/dist/esm/errors/services/error-builder.backend.service.js.map +1 -1
- package/dist/esm/errors/services/error-handler.backend.service.d.ts +70 -7
- package/dist/esm/errors/services/error-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/errors/services/error-handler.backend.service.js +129 -8
- package/dist/esm/errors/services/error-handler.backend.service.js.map +1 -1
- package/dist/esm/errors/services/rate-limit.backend.service.d.ts +66 -0
- package/dist/esm/errors/services/rate-limit.backend.service.d.ts.map +1 -1
- package/dist/esm/errors/services/rate-limit.backend.service.js +102 -25
- package/dist/esm/errors/services/rate-limit.backend.service.js.map +1 -1
- package/dist/esm/errors/utils/error-log-level-classification.backend.utils.d.ts +5 -0
- package/dist/esm/errors/utils/error-log-level-classification.backend.utils.d.ts.map +1 -1
- package/dist/esm/errors/utils/error-log-level-classification.backend.utils.js +25 -0
- package/dist/esm/errors/utils/error-log-level-classification.backend.utils.js.map +1 -1
- package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.d.ts +33 -0
- package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.d.ts.map +1 -1
- package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.js +40 -0
- package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.js.map +1 -1
- package/dist/esm/external-data/batches/external-data-pipeline-scheduled-run.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/external-data/controllers/external-data-admin.backend.contracts.d.ts.map +1 -1
- package/dist/esm/external-data/controllers/external-data-admin.backend.controller.d.ts.map +1 -1
- package/dist/esm/external-data/external-data-extraction-source.backend.d.ts.map +1 -1
- package/dist/esm/external-data/external-data-models.exports.d.ts.map +1 -1
- package/dist/esm/external-data/external-data-pipeline-run.backend.service.d.ts +59 -2
- package/dist/esm/external-data/external-data-pipeline-run.backend.service.d.ts.map +1 -1
- package/dist/esm/external-data/external-data-pipeline-run.backend.service.js +52 -17
- package/dist/esm/external-data/external-data-pipeline-run.backend.service.js.map +1 -1
- package/dist/esm/external-data/external-data-transform.backend.d.ts.map +1 -1
- package/dist/esm/external-data/models/external-data-pipeline-state.backend.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/models/external-providers.backend.schemas.d.ts.map +1 -1
- package/dist/esm/external-providers/models/provider-selection-resolution-evidence.backend.definitions.d.ts +4 -2
- package/dist/esm/external-providers/models/provider-selection-resolution-evidence.backend.definitions.d.ts.map +1 -1
- package/dist/esm/external-providers/models/provider-selection-resolution-evidence.backend.definitions.js.map +1 -1
- package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.d.ts +306 -0
- package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.d.ts.map +1 -0
- package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.js +379 -0
- package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.js.map +1 -0
- package/dist/esm/external-providers/operations/provider-operation-request.backend.d.ts +56 -0
- package/dist/esm/external-providers/operations/provider-operation-request.backend.d.ts.map +1 -0
- package/dist/esm/external-providers/operations/provider-operation-request.backend.js +211 -0
- package/dist/esm/external-providers/operations/provider-operation-request.backend.js.map +1 -0
- package/dist/esm/external-providers/operations/provider-request-signing.backend.d.ts +45 -0
- package/dist/esm/external-providers/operations/provider-request-signing.backend.d.ts.map +1 -0
- package/dist/esm/external-providers/operations/provider-request-signing.backend.js +235 -0
- package/dist/esm/external-providers/operations/provider-request-signing.backend.js.map +1 -0
- package/dist/esm/external-providers/operations/provider-rest-call-client.backend.d.ts +56 -0
- package/dist/esm/external-providers/operations/provider-rest-call-client.backend.d.ts.map +1 -0
- package/dist/esm/external-providers/operations/provider-rest-call-client.backend.js +78 -0
- package/dist/esm/external-providers/operations/provider-rest-call-client.backend.js.map +1 -0
- package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.d.ts +1 -1
- package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.js +2 -2
- package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.js.map +1 -1
- package/dist/esm/external-providers/services/backend-provider-loader.backend.service.d.ts +89 -0
- package/dist/esm/external-providers/services/backend-provider-loader.backend.service.d.ts.map +1 -0
- package/dist/esm/external-providers/services/backend-provider-loader.backend.service.js +164 -0
- package/dist/esm/external-providers/services/backend-provider-loader.backend.service.js.map +1 -0
- package/dist/esm/external-providers/services/backend-provider-registry.backend.service.d.ts +26 -27
- package/dist/esm/external-providers/services/backend-provider-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/backend-provider-registry.backend.service.js +50 -64
- package/dist/esm/external-providers/services/backend-provider-registry.backend.service.js.map +1 -1
- package/dist/esm/external-providers/services/document-extraction.backend.service.d.ts +81 -34
- package/dist/esm/external-providers/services/document-extraction.backend.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/document-extraction.backend.service.js +181 -100
- package/dist/esm/external-providers/services/document-extraction.backend.service.js.map +1 -1
- package/dist/esm/external-providers/services/embeddings.backend.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/embeddings.backend.service.js +4 -4
- package/dist/esm/external-providers/services/embeddings.backend.service.js.map +1 -1
- package/dist/esm/external-providers/services/external-api-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/external-providers-registry.backend.service.d.ts +413 -7
- package/dist/esm/external-providers/services/external-providers-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/external-providers-registry.backend.service.js +684 -45
- package/dist/esm/external-providers/services/external-providers-registry.backend.service.js.map +1 -1
- package/dist/esm/external-providers/services/frontend-bootstrap.backend.service.d.ts +15 -1
- package/dist/esm/external-providers/services/frontend-bootstrap.backend.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/frontend-bootstrap.backend.service.js +84 -5
- package/dist/esm/external-providers/services/frontend-bootstrap.backend.service.js.map +1 -1
- package/dist/esm/features/controllers/features.backend.controller.d.ts.map +1 -1
- package/dist/esm/features/services/__tests__/mock-feature-definition-registry.service.d.ts.map +1 -1
- package/dist/esm/features/services/__tests__/mock-feature-resolution.service.d.ts.map +1 -1
- package/dist/esm/features/services/application-features-admin-write-path.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/features/services/feature-definition-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/features/services/feature-gate.backend.service.d.ts.map +1 -1
- package/dist/esm/features/services/feature-resolution.backend.service.d.ts.map +1 -1
- package/dist/esm/features/services/organization-features-admin-write-path.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/features/services/scope-feature-ledger-relationship.backend.utils.d.ts.map +1 -1
- package/dist/esm/features/services/scope-features-cache-invalidation.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/features/testing/feature-test-utils.d.ts.map +1 -1
- package/dist/esm/files/batches/files-cleanup.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/files/constraints/file-analyzers.types.d.ts.map +1 -1
- package/dist/esm/files/constraints/file-constraint-resolver-chain.backend.service.d.ts.map +1 -1
- package/dist/esm/files/constraints/file-constraint.types.d.ts.map +1 -1
- package/dist/esm/files/constraints/file-validation.backend.service.d.ts.map +1 -1
- package/dist/esm/files/constraints/resource-field-constraint-resolver.backend.service.d.ts.map +1 -1
- package/dist/esm/files/controllers/file.controller.d.ts.map +1 -1
- package/dist/esm/files/controllers/file.controller.js +21 -13
- package/dist/esm/files/controllers/file.controller.js.map +1 -1
- package/dist/esm/files/handlers/file-upload-route-locals.backend.types.d.ts.map +1 -1
- package/dist/esm/files/handlers/file-upload-route-locals.backend.types.js.map +1 -1
- package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.d.ts +37 -0
- package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.js +260 -36
- package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.js.map +1 -1
- package/dist/esm/files/scanning/clamav-scanner.backend.service.d.ts.map +1 -1
- package/dist/esm/files/scanning/file-scan.types.d.ts.map +1 -1
- package/dist/esm/files/scanning/yara-scanner.backend.service.d.ts.map +1 -1
- package/dist/esm/files/scanning/yara-scanner.backend.service.js +20 -2
- package/dist/esm/files/scanning/yara-scanner.backend.service.js.map +1 -1
- package/dist/esm/files/services/__tests__/mock-file-field-detection.service.d.ts.map +1 -1
- package/dist/esm/files/services/__tests__/mock-file-operation-handler.service.d.ts.map +1 -1
- package/dist/esm/files/services/__tests__/mock-file-repository.service.d.ts.map +1 -1
- package/dist/esm/files/services/file-field-detection.backend.service.d.ts.map +1 -1
- package/dist/esm/files/services/file-operation-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/files/services/file-operation-handler.backend.service.js.map +1 -1
- package/dist/esm/files/services/file-population.backend.service.d.ts.map +1 -1
- package/dist/esm/files/services/file-scanning.backend.service.d.ts +94 -9
- package/dist/esm/files/services/file-scanning.backend.service.d.ts.map +1 -1
- package/dist/esm/files/services/file-scanning.backend.service.js +202 -17
- package/dist/esm/files/services/file-scanning.backend.service.js.map +1 -1
- package/dist/esm/files/services/file-text-extraction.backend.service.d.ts +60 -1
- package/dist/esm/files/services/file-text-extraction.backend.service.d.ts.map +1 -1
- package/dist/esm/files/services/file-text-extraction.backend.service.js +175 -13
- package/dist/esm/files/services/file-text-extraction.backend.service.js.map +1 -1
- package/dist/esm/files/services/file-upload-grant.backend.service.d.ts +53 -2
- package/dist/esm/files/services/file-upload-grant.backend.service.d.ts.map +1 -1
- package/dist/esm/files/services/file-upload-grant.backend.service.js +127 -3
- package/dist/esm/files/services/file-upload-grant.backend.service.js.map +1 -1
- package/dist/esm/files/services/files.backend.service.d.ts +68 -0
- package/dist/esm/files/services/files.backend.service.d.ts.map +1 -1
- package/dist/esm/files/services/files.backend.service.js +177 -5
- package/dist/esm/files/services/files.backend.service.js.map +1 -1
- package/dist/esm/files/services/rag-source-field-detection.backend.service.d.ts.map +1 -1
- package/dist/esm/files/storage/application-storage-key.backend.utils.d.ts +109 -0
- package/dist/esm/files/storage/application-storage-key.backend.utils.d.ts.map +1 -0
- package/dist/esm/files/storage/application-storage-key.backend.utils.js +123 -0
- package/dist/esm/files/storage/application-storage-key.backend.utils.js.map +1 -0
- package/dist/esm/files/storage/file-storage-path-resolver.backend.service.d.ts.map +1 -1
- package/dist/esm/files/storage/file-storage-provider.types.d.ts +52 -11
- package/dist/esm/files/storage/file-storage-provider.types.d.ts.map +1 -1
- package/dist/esm/files/storage/file-storage-provider.types.js.map +1 -1
- package/dist/esm/files/storage/file-storage-router.backend.service.d.ts +21 -3
- package/dist/esm/files/storage/file-storage-router.backend.service.d.ts.map +1 -1
- package/dist/esm/files/storage/file-storage-router.backend.service.js +38 -5
- package/dist/esm/files/storage/file-storage-router.backend.service.js.map +1 -1
- package/dist/esm/files/storage/google-drive-storage-provider.backend.service.d.ts +87 -0
- package/dist/esm/files/storage/google-drive-storage-provider.backend.service.d.ts.map +1 -0
- package/dist/esm/files/storage/google-drive-storage-provider.backend.service.js +340 -0
- package/dist/esm/files/storage/google-drive-storage-provider.backend.service.js.map +1 -0
- package/dist/esm/files/storage/local-directory-storage-provider.backend.service.d.ts +67 -8
- package/dist/esm/files/storage/local-directory-storage-provider.backend.service.d.ts.map +1 -1
- package/dist/esm/files/storage/local-directory-storage-provider.backend.service.js +101 -28
- package/dist/esm/files/storage/local-directory-storage-provider.backend.service.js.map +1 -1
- package/dist/esm/files/storage/storage-credential-provider.backend.utils.d.ts.map +1 -1
- package/dist/esm/files/storage/storage-platform-sts-credential-resolver.backend.utils.d.ts.map +1 -1
- package/dist/esm/files/storage/storage-sts-credential-resolver.backend.utils.d.ts.map +1 -1
- package/dist/esm/files/storage/storage-sts-credential-resolver.backend.utils.js +10 -3
- package/dist/esm/files/storage/storage-sts-credential-resolver.backend.utils.js.map +1 -1
- package/dist/esm/files/storage/wildo-managed-storage-provider.backend.service.d.ts.map +1 -1
- package/dist/esm/files/storage/wildo-managed-storage-provider.backend.service.js +8 -55
- package/dist/esm/files/storage/wildo-managed-storage-provider.backend.service.js.map +1 -1
- package/dist/esm/files/utils/file-field-schema-path.backend.utils.d.ts.map +1 -1
- package/dist/esm/files/utils/file-field-schema-path.backend.utils.js +20 -0
- package/dist/esm/files/utils/file-field-schema-path.backend.utils.js.map +1 -1
- package/dist/esm/files/utils/file-upload.utils.d.ts.map +1 -1
- package/dist/esm/files/utils/file-uploader.utils.d.ts.map +1 -1
- package/dist/esm/files/utils/file-uploader.utils.js.map +1 -1
- package/dist/esm/files/utils/file-validation.utils.d.ts.map +1 -1
- package/dist/esm/files/utils/image-derivation.backend.utils.d.ts.map +1 -1
- package/dist/esm/files/utils/image-thumbnail.backend.utils.d.ts.map +1 -1
- package/dist/esm/files/utils/office-document-text-extraction.backend.utils.d.ts +86 -0
- package/dist/esm/files/utils/office-document-text-extraction.backend.utils.d.ts.map +1 -0
- package/dist/esm/files/utils/office-document-text-extraction.backend.utils.js +288 -0
- package/dist/esm/files/utils/office-document-text-extraction.backend.utils.js.map +1 -0
- package/dist/esm/files/utils/rag-source-field-schema-path.backend.utils.d.ts.map +1 -1
- package/dist/esm/files/utils/storage-application-identity.backend.utils.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.d.ts +15 -0
- package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.js +76 -5
- package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/a2a/batches/a2a-push-delivery.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/controllers/a2a.controller.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/controllers/a2a.controller.js +6 -1
- package/dist/esm/flows-actors/a2a/controllers/a2a.controller.js.map +1 -1
- package/dist/esm/flows-actors/a2a/models/a2a-dialect.backend.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/models/a2a-push-notification-delivery.backend.utils.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/models/a2a-push-notification.backend.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.d.ts +60 -0
- package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.js +63 -0
- package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.js.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-push-delivery-log.repository.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-push-dispatcher.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.d.ts +74 -0
- package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.js +196 -40
- package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.d.ts +7 -1
- package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.js +53 -1
- package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.d.ts +18 -0
- package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.js +18 -0
- package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a.backend.service.d.ts +12 -7
- package/dist/esm/flows-actors/a2a/services/a2a.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/controllers/flows-actors.controller.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.d.ts +0 -13
- package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.js +14 -22
- package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.js.map +1 -1
- package/dist/esm/flows-actors/models/agent-facets.backend.definitions.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/agents.backend.definitions.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/core-facets.backend.definitions.d.ts +8 -3
- package/dist/esm/flows-actors/models/core-facets.backend.definitions.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/core-facets.backend.definitions.js +25 -15
- package/dist/esm/flows-actors/models/core-facets.backend.definitions.js.map +1 -1
- package/dist/esm/flows-actors/models/flows-actors.backend.definitions.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/flows-actors.backend.schemas.d.ts +13 -1
- package/dist/esm/flows-actors/models/flows-actors.backend.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/flows-actors.backend.schemas.js.map +1 -1
- package/dist/esm/flows-actors/models/function-tools.backend.definitions.d.ts +179 -8
- package/dist/esm/flows-actors/models/function-tools.backend.definitions.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/function-tools.backend.definitions.js +436 -34
- package/dist/esm/flows-actors/models/function-tools.backend.definitions.js.map +1 -1
- package/dist/esm/flows-actors/models/market-generation.actors-system.backend.definitions.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/market-generation.actors-system.backend.definitions.js +4 -2
- package/dist/esm/flows-actors/models/market-generation.actors-system.backend.definitions.js.map +1 -1
- package/dist/esm/flows-actors/models/mcp-client.backend.definitions.d.ts +113 -0
- package/dist/esm/flows-actors/models/mcp-client.backend.definitions.d.ts.map +1 -0
- package/dist/esm/flows-actors/models/mcp-client.backend.definitions.js +62 -0
- package/dist/esm/flows-actors/models/mcp-client.backend.definitions.js.map +1 -0
- package/dist/esm/flows-actors/services/__tests__/fixtures/meta-workflow-evaluation-treatment.test-fixture.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/actors-system.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/actors-system.backend.service.js +0 -2
- package/dist/esm/flows-actors/services/actors-system.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/services/agent-call-trace-sink.backend.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/agent-facets.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/agents.backend.service.d.ts +132 -6
- package/dist/esm/flows-actors/services/agents.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/agents.backend.service.js +467 -49
- package/dist/esm/flows-actors/services/agents.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/services/context-curation.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/conversational-execution.backend.service.d.ts +50 -1
- package/dist/esm/flows-actors/services/conversational-execution.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/conversational-execution.backend.service.js +270 -20
- package/dist/esm/flows-actors/services/conversational-execution.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/services/flows-actors-registry.service.d.ts +34 -5
- package/dist/esm/flows-actors/services/flows-actors-registry.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/flows-actors-registry.service.js +154 -20
- package/dist/esm/flows-actors/services/flows-actors-registry.service.js.map +1 -1
- package/dist/esm/flows-actors/services/flows.backend.services.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/flows.backend.services.js +27 -23
- package/dist/esm/flows-actors/services/flows.backend.services.js.map +1 -1
- package/dist/esm/flows-actors/services/llm-observability-agent-call-trace-sink.backend.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/llm-observability-agent-call-trace-sink.backend.js +7 -1
- package/dist/esm/flows-actors/services/llm-observability-agent-call-trace-sink.backend.js.map +1 -1
- package/dist/esm/flows-actors/services/mcp-client.backend.service.d.ts +90 -0
- package/dist/esm/flows-actors/services/mcp-client.backend.service.d.ts.map +1 -0
- package/dist/esm/flows-actors/services/mcp-client.backend.service.js +371 -0
- package/dist/esm/flows-actors/services/mcp-client.backend.service.js.map +1 -0
- package/dist/esm/flows-actors/services/mcp-credential-resolver.backend.service.d.ts +99 -0
- package/dist/esm/flows-actors/services/mcp-credential-resolver.backend.service.d.ts.map +1 -0
- package/dist/esm/flows-actors/services/mcp-credential-resolver.backend.service.js +155 -0
- package/dist/esm/flows-actors/services/mcp-credential-resolver.backend.service.js.map +1 -0
- package/dist/esm/flows-actors/services/meta-workflow-evaluation-treatment-compiler.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/meta-workflow-standard-action-contracts.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/meta-workflow-standard-evaluation-contracts.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/meta-workflow-structured-artifact-action-compiler.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/prompt-compiler.backend.service.d.ts +9 -5
- package/dist/esm/flows-actors/services/prompt-compiler.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/prompt-compiler.backend.service.js +12 -17
- package/dist/esm/flows-actors/services/prompt-compiler.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.d.ts.map +1 -1
- package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.js +17 -4
- package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.js.map +1 -1
- package/dist/esm/flows-actors/utils/bounded-subprocess.backend.utils.d.ts.map +1 -1
- package/dist/esm/flows-actors/utils/flows-actors-frontend-extractor.utils.d.ts.map +1 -1
- package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.d.ts +0 -207
- package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.d.ts.map +1 -1
- package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.js +8 -243
- package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.js.map +1 -1
- package/dist/esm/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.d.ts.map +1 -1
- package/dist/esm/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.js.map +1 -1
- package/dist/esm/flows-actors/utils/prompt-ir-adapters.backend.utils.d.ts.map +1 -1
- package/dist/esm/flows-actors/utils/tool-approval-modification.backend.utils.d.ts +77 -0
- package/dist/esm/flows-actors/utils/tool-approval-modification.backend.utils.d.ts.map +1 -0
- package/dist/esm/flows-actors/utils/tool-approval-modification.backend.utils.js +164 -0
- package/dist/esm/flows-actors/utils/tool-approval-modification.backend.utils.js.map +1 -0
- package/dist/esm/flows-actors/utils/tool-approval-signing.backend.utils.d.ts +48 -0
- package/dist/esm/flows-actors/utils/tool-approval-signing.backend.utils.d.ts.map +1 -0
- package/dist/esm/flows-actors/utils/tool-approval-signing.backend.utils.js +101 -0
- package/dist/esm/flows-actors/utils/tool-approval-signing.backend.utils.js.map +1 -0
- package/dist/esm/guidance/batches/dormancy-detection.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/guidance/services/guidance-trigger-evaluator.backend.service.d.ts.map +1 -1
- package/dist/esm/guidance/services/lifecycle-custom-implementations.backend.d.ts.map +1 -1
- package/dist/esm/guidance/services/lifecycle-evaluator.backend.service.d.ts.map +1 -1
- package/dist/esm/guidance/services/lifecycle-scope-id.backend.utils.d.ts.map +1 -1
- package/dist/esm/guidance/services/milestone-condition-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/guidance/services/milestone-definition-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/guidance/services/milestone-evaluator.backend.service.d.ts +9 -14
- package/dist/esm/guidance/services/milestone-evaluator.backend.service.d.ts.map +1 -1
- package/dist/esm/guidance/services/milestone-evaluator.backend.service.js +18 -89
- package/dist/esm/guidance/services/milestone-evaluator.backend.service.js.map +1 -1
- package/dist/esm/guidance/services/progression-state-store.backend.service.d.ts +86 -0
- package/dist/esm/guidance/services/progression-state-store.backend.service.d.ts.map +1 -0
- package/dist/esm/guidance/services/progression-state-store.backend.service.js +155 -0
- package/dist/esm/guidance/services/progression-state-store.backend.service.js.map +1 -0
- package/dist/esm/guidance/services/scoped-state-read-custom-implementations.backend.d.ts.map +1 -1
- package/dist/esm/i18n/controllers/i18n-controller.backend.service.d.ts +10 -0
- package/dist/esm/i18n/controllers/i18n-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/i18n/controllers/i18n-controller.backend.service.js +55 -5
- package/dist/esm/i18n/controllers/i18n-controller.backend.service.js.map +1 -1
- package/dist/esm/i18n/services/i18n.backend.service.d.ts.map +1 -1
- package/dist/esm/index.d.ts +11 -5
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +31 -5
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/inject/models/container.d.ts +10 -0
- package/dist/esm/inject/models/container.d.ts.map +1 -1
- package/dist/esm/inject/models/container.js +126 -10
- package/dist/esm/inject/models/container.js.map +1 -1
- package/dist/esm/inject/models/service-types.d.ts +20 -3
- package/dist/esm/inject/models/service-types.d.ts.map +1 -1
- package/dist/esm/inject/models/service-types.js +22 -3
- package/dist/esm/inject/models/service-types.js.map +1 -1
- package/dist/esm/mcp/controllers/mcp.controller.d.ts.map +1 -1
- package/dist/esm/mcp/controllers/mcp.controller.js +70 -3
- package/dist/esm/mcp/controllers/mcp.controller.js.map +1 -1
- package/dist/esm/mcp/models/mcp-protocol.backend.schemas.d.ts.map +1 -1
- package/dist/esm/mcp/models/mcp-tool.backend.schemas.d.ts.map +1 -1
- package/dist/esm/mcp/models/mcp-tool.backend.schemas.js.map +1 -1
- package/dist/esm/mcp/services/mcp-server.backend.service.d.ts +56 -1
- package/dist/esm/mcp/services/mcp-server.backend.service.d.ts.map +1 -1
- package/dist/esm/mcp/services/mcp-server.backend.service.js +107 -11
- package/dist/esm/mcp/services/mcp-server.backend.service.js.map +1 -1
- package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.d.ts.map +1 -1
- package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.js +22 -0
- package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.js.map +1 -1
- package/dist/esm/mcp/services/resource-server-instances-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/mcp/utils/zod-to-mcp-json-schema.backend.utils.d.ts.map +1 -1
- package/dist/esm/meta-workflow-runtime.exports.d.ts.map +1 -1
- package/dist/esm/monitoring/analytics/controllers/analytics.backend.controller.d.ts.map +1 -1
- package/dist/esm/monitoring/analytics/controllers/analytics.backend.controller.js +49 -4
- package/dist/esm/monitoring/analytics/controllers/analytics.backend.controller.js.map +1 -1
- package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.d.ts +66 -0
- package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.d.ts.map +1 -0
- package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.js +199 -0
- package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.js.map +1 -0
- package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.d.ts +149 -13
- package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.d.ts.map +1 -1
- package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.js +411 -19
- package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.js.map +1 -1
- package/dist/esm/monitoring/analytics/services/value-moment-handler-registry.backend.service.d.ts +11 -2
- package/dist/esm/monitoring/analytics/services/value-moment-handler-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/monitoring/analytics/services/value-moment-handler-registry.backend.service.js.map +1 -1
- package/dist/esm/monitoring/logger/models/logger.backend.schemas.d.ts +28 -9
- package/dist/esm/monitoring/logger/models/logger.backend.schemas.d.ts.map +1 -1
- package/dist/esm/monitoring/logger/models/logger.backend.schemas.js +30 -10
- package/dist/esm/monitoring/logger/models/logger.backend.schemas.js.map +1 -1
- package/dist/esm/monitoring/logger/services/__tests__/mock-logger.service.d.ts.map +1 -1
- package/dist/esm/monitoring/logger/services/logger.service.d.ts +24 -0
- package/dist/esm/monitoring/logger/services/logger.service.d.ts.map +1 -1
- package/dist/esm/monitoring/logger/services/logger.service.js +52 -11
- package/dist/esm/monitoring/logger/services/logger.service.js.map +1 -1
- package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.d.ts +62 -0
- package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.d.ts.map +1 -0
- package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.js +78 -0
- package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.js.map +1 -0
- package/dist/esm/monitoring/logger/utils/log-value-normalization.backend.utils.d.ts.map +1 -1
- package/dist/esm/monitoring/observability/audit-observation-emission.backend.d.ts +313 -0
- package/dist/esm/monitoring/observability/audit-observation-emission.backend.d.ts.map +1 -0
- package/dist/esm/monitoring/observability/audit-observation-emission.backend.js +389 -0
- package/dist/esm/monitoring/observability/audit-observation-emission.backend.js.map +1 -0
- package/dist/esm/monitoring/observability/models/observability.backend.schemas.d.ts +1 -0
- package/dist/esm/monitoring/observability/models/observability.backend.schemas.d.ts.map +1 -1
- package/dist/esm/monitoring/observability/models/observability.backend.schemas.js.map +1 -1
- package/dist/esm/monitoring/observability/otel-preload.d.ts.map +1 -1
- package/dist/esm/monitoring/observability/otel-sdk-global-handle.d.ts.map +1 -1
- package/dist/esm/monitoring/observability/services/__tests__/mock-metrics.service.d.ts.map +1 -1
- package/dist/esm/monitoring/observability/services/metrics.service.d.ts +21 -0
- package/dist/esm/monitoring/observability/services/metrics.service.d.ts.map +1 -1
- package/dist/esm/monitoring/observability/services/metrics.service.js +38 -0
- package/dist/esm/monitoring/observability/services/metrics.service.js.map +1 -1
- package/dist/esm/monitoring/observability/services/observability.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/email/components/email-components.d.ts.map +1 -1
- package/dist/esm/notifications/email/models/email-template-definition.d.ts.map +1 -1
- package/dist/esm/notifications/email/models/email-transport.backend.definitions.d.ts.map +1 -1
- package/dist/esm/notifications/email/services/email-batch-send.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/email/services/email-template-registry.backend.service.d.ts +66 -1
- package/dist/esm/notifications/email/services/email-template-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/email/services/email-template-registry.backend.service.js +105 -10
- package/dist/esm/notifications/email/services/email-template-registry.backend.service.js.map +1 -1
- package/dist/esm/notifications/email/services/email-template-validator.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/email/services/email-template-validator.backend.service.js +10 -1
- package/dist/esm/notifications/email/services/email-template-validator.backend.service.js.map +1 -1
- package/dist/esm/notifications/email/services/email.backend.service.d.ts +102 -5
- package/dist/esm/notifications/email/services/email.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/email/services/email.backend.service.js +222 -70
- package/dist/esm/notifications/email/services/email.backend.service.js.map +1 -1
- package/dist/esm/notifications/email/utils/color-conversion.utils.d.ts +0 -1
- package/dist/esm/notifications/email/utils/color-conversion.utils.d.ts.map +1 -1
- package/dist/esm/notifications/email/utils/color-conversion.utils.js.map +1 -1
- package/dist/esm/notifications/email/utils/interpolate-email-label.utils.d.ts.map +1 -1
- package/dist/esm/notifications/email/utils/zod-to-typescript.utils.d.ts.map +1 -1
- package/dist/esm/notifications/services/notification-badge.backend.service.d.ts +142 -21
- package/dist/esm/notifications/services/notification-badge.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/services/notification-badge.backend.service.js +283 -58
- package/dist/esm/notifications/services/notification-badge.backend.service.js.map +1 -1
- package/dist/esm/notifications/services/notifications-dispatcher.backend.service.d.ts +99 -13
- package/dist/esm/notifications/services/notifications-dispatcher.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/services/notifications-dispatcher.backend.service.js +422 -66
- package/dist/esm/notifications/services/notifications-dispatcher.backend.service.js.map +1 -1
- package/dist/esm/notifications/sms/models/sms-transport.backend.definitions.d.ts +32 -0
- package/dist/esm/notifications/sms/models/sms-transport.backend.definitions.d.ts.map +1 -0
- package/dist/esm/notifications/sms/models/sms-transport.backend.definitions.js +32 -0
- package/dist/esm/notifications/sms/models/sms-transport.backend.definitions.js.map +1 -0
- package/dist/esm/notifications/sms/services/sms.backend.service.d.ts +64 -10
- package/dist/esm/notifications/sms/services/sms.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/sms/services/sms.backend.service.js +277 -82
- package/dist/esm/notifications/sms/services/sms.backend.service.js.map +1 -1
- package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.d.ts +117 -5
- package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.js +164 -6
- package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.js.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.d.ts +0 -6
- package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.js +46 -1
- package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.js.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.utils.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.js +16 -6
- package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.js.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/services/m2m-webhook-delivery-log.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/services/m2m-webhook-delivery-log.repository.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/services/m2m-webhook-dispatcher.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/services/webhook-config-public-key.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service.js +12 -12
- package/dist/esm/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/services/webhook-config.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/services/polymorphic-lookup.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.d.ts +16 -0
- package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.js +18 -0
- package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.js.map +1 -1
- package/dist/esm/organizations/batches/organization-member-invitation-sweep.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/organizations/batches/organization-purge.batch.backend.service.d.ts +2 -2
- package/dist/esm/organizations/batches/organization-purge.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/organizations/batches/organization-purge.batch.backend.service.js +2 -2
- package/dist/esm/organizations/batches/organization-purge.batch.backend.service.js.map +1 -1
- package/dist/esm/organizations/services/authority-change-audit.backend.utils.d.ts.map +1 -1
- package/dist/esm/organizations/services/invitation-acceptance.backend.utils.d.ts.map +1 -1
- package/dist/esm/organizations/services/org-creation-on-registration.backend.utils.d.ts.map +1 -1
- package/dist/esm/organizations/services/org-member-roles-validation.backend.utils.d.ts.map +1 -1
- package/dist/esm/organizations/services/organization-custom-implementation.backend.service.d.ts.map +1 -1
- package/dist/esm/organizations/services/organization-custom-implementation.backend.service.js +63 -2
- package/dist/esm/organizations/services/organization-custom-implementation.backend.service.js.map +1 -1
- package/dist/esm/organizations/services/organization-deletion-audit.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/organizations/services/organization-member-custom-implementation.backend.service.d.ts.map +1 -1
- package/dist/esm/organizations/services/organization-onboarding-operation.backend.utils.d.ts.map +1 -1
- package/dist/esm/organizations/services/organization-unit-custom-implementation.backend.service.d.ts.map +1 -1
- package/dist/esm/organizations/services/organization-unit-member-custom-implementation.backend.service.d.ts.map +1 -1
- package/dist/esm/organizations/services/scim-provisioning-gate.backend.utils.d.ts.map +1 -1
- package/dist/esm/organizations/services/user-org-type-grant.backend.utils.d.ts.map +1 -1
- package/dist/esm/organizations/services/user-type-revocation-on-org-leave.backend.utils.d.ts.map +1 -1
- package/dist/esm/pdf-templates/__tests__/fixtures/tiny-pdf-template.fixture.d.ts.map +1 -1
- package/dist/esm/pdf-templates/models/pdf-template-binding.d.ts.map +1 -1
- package/dist/esm/pdf-templates/models/pdf-template-definition.d.ts.map +1 -1
- package/dist/esm/pdf-templates/services/pdf-generated-file-writer.backend.service.d.ts.map +1 -1
- package/dist/esm/pdf-templates/services/pdf-generation-orchestrator.backend.service.d.ts.map +1 -1
- package/dist/esm/pdf-templates/services/pdf-renderer.backend.service.d.ts.map +1 -1
- package/dist/esm/pdf-templates/services/pdf-template-binding.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.d.ts +66 -0
- package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.d.ts.map +1 -0
- package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.js +257 -0
- package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.js.map +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.binding.d.ts +12 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.binding.d.ts.map +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.binding.js +47 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.binding.js.map +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.interface.d.ts +87 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.interface.d.ts.map +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.interface.js +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.interface.js.map +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.options.d.ts +31 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.options.d.ts.map +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.options.js +13 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.options.js.map +1 -0
- package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.d.ts +19 -25
- package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.js +33 -0
- package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.js.map +1 -1
- package/dist/esm/queue/apps-crontabs-manager.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/cron-job-sync.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/domain-queue-consumer.backend.service.d.ts +2 -2
- package/dist/esm/queue/domain-queue-consumer.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/domain-queue-consumer.backend.service.js +1 -4
- package/dist/esm/queue/domain-queue-consumer.backend.service.js.map +1 -1
- package/dist/esm/queue/job-completion-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/job-consumer.backend.service.d.ts +2 -2
- package/dist/esm/queue/job-consumer.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/job-consumer.backend.service.js +1 -4
- package/dist/esm/queue/job-consumer.backend.service.js.map +1 -1
- package/dist/esm/queue/job-executor.backend.service.d.ts +2 -2
- package/dist/esm/queue/job-executor.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/job-executor.backend.service.js +1 -4
- package/dist/esm/queue/job-executor.backend.service.js.map +1 -1
- package/dist/esm/queue/job-payload-storage.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/job-status-tracking.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/queue-monitoring.backend.service.d.ts +8 -4
- package/dist/esm/queue/queue-monitoring.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/queue-monitoring.backend.service.js +25 -17
- package/dist/esm/queue/queue-monitoring.backend.service.js.map +1 -1
- package/dist/esm/queue/queue-worker-initializer.backend.service.d.ts +16 -1
- package/dist/esm/queue/queue-worker-initializer.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/queue-worker-initializer.backend.service.js +16 -1
- package/dist/esm/queue/queue-worker-initializer.backend.service.js.map +1 -1
- package/dist/esm/queue/queue.backend.service.d.ts +3 -3
- package/dist/esm/queue/queue.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/queue.backend.service.js +26 -4
- package/dist/esm/queue/queue.backend.service.js.map +1 -1
- package/dist/esm/queue/scheduled-message-verifier.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/worker-shutdown-manager.backend.service.d.ts +2 -2
- package/dist/esm/queue/worker-shutdown-manager.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/worker-shutdown-manager.backend.service.js +18 -3
- package/dist/esm/queue/worker-shutdown-manager.backend.service.js.map +1 -1
- package/dist/esm/rag/batches/rag-embedding-drain.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/rag/batches/rag-reconciliation-sweep.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/rag/models/rag-chunk-store.backend.types.d.ts.map +1 -1
- package/dist/esm/rag/models/rag-retrieval.backend.types.d.ts.map +1 -1
- package/dist/esm/rag/services/mongodb-rag-chunk-store.backend.service.d.ts.map +1 -1
- package/dist/esm/rag/services/postgresql-rag-chunk-store.backend.service.d.ts.map +1 -1
- package/dist/esm/rag/services/rag-chunk-collection.mongodb-ddl.backend.d.ts.map +1 -1
- package/dist/esm/rag/services/rag-chunk-retrieval.mongodb-query.backend.d.ts.map +1 -1
- package/dist/esm/rag/services/rag-chunk-retrieval.postgresql-query.backend.d.ts.map +1 -1
- package/dist/esm/rag/services/rag-chunk-store.backend.service.d.ts.map +1 -1
- package/dist/esm/rag/services/rag-chunk-table.postgresql-ddl.backend.d.ts.map +1 -1
- package/dist/esm/rag/services/rag-ingestion.backend.service.d.ts.map +1 -1
- package/dist/esm/rag/services/rag-retrieval.backend.service.d.ts.map +1 -1
- package/dist/esm/rag/utils/rag-chunk-fusion.backend.utils.d.ts.map +1 -1
- package/dist/esm/rag/utils/rag-chunk-removal.backend.utils.d.ts.map +1 -1
- package/dist/esm/rag/utils/rag-chunk-row-shaping.backend.utils.d.ts.map +1 -1
- package/dist/esm/rag/utils/rag-chunking.backend.utils.d.ts +50 -25
- package/dist/esm/rag/utils/rag-chunking.backend.utils.d.ts.map +1 -1
- package/dist/esm/rag/utils/rag-chunking.backend.utils.js +147 -39
- package/dist/esm/rag/utils/rag-chunking.backend.utils.js.map +1 -1
- package/dist/esm/rag/utils/rag-context-assembly.backend.utils.d.ts +12 -3
- package/dist/esm/rag/utils/rag-context-assembly.backend.utils.d.ts.map +1 -1
- package/dist/esm/rag/utils/rag-context-assembly.backend.utils.js +12 -3
- package/dist/esm/rag/utils/rag-context-assembly.backend.utils.js.map +1 -1
- package/dist/esm/rag/utils/rag-ingestion-trigger.backend.utils.d.ts.map +1 -1
- package/dist/esm/rag/utils/rag-retrieval-scope.backend.utils.d.ts.map +1 -1
- package/dist/esm/rag/utils/rag-source-field-value.backend.utils.d.ts.map +1 -1
- package/dist/esm/requests/models/api-routes.backend.defintions.d.ts.map +1 -1
- package/dist/esm/requests/models/requests.backend.schemas.d.ts.map +1 -1
- package/dist/esm/requests/service/platform-mutualized-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/requests/service/platform-requests.backend.utils.d.ts.map +1 -1
- package/dist/esm/requests/service/remote-client-base.backend.service.d.ts.map +1 -1
- package/dist/esm/requests/service/serverless-services-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/requests/service/websocket.service.d.ts +9 -0
- package/dist/esm/requests/service/websocket.service.d.ts.map +1 -1
- package/dist/esm/requests/service/websocket.service.js +81 -9
- package/dist/esm/requests/service/websocket.service.js.map +1 -1
- package/dist/esm/resources/backend-resource-registry.exports.d.ts.map +1 -1
- package/dist/esm/resources/models/custom-service-implementations.backend.definition.d.ts.map +1 -1
- package/dist/esm/resources/models/custom-service-implementations.backend.definition.js +16 -2
- package/dist/esm/resources/models/custom-service-implementations.backend.definition.js.map +1 -1
- package/dist/esm/resources/models/index.d.ts.map +1 -1
- package/dist/esm/resources/models/resources-operations.backend.definitions.d.ts.map +1 -1
- package/dist/esm/resources/models/resources-operations.backend.definitions.js +2 -0
- package/dist/esm/resources/models/resources-operations.backend.definitions.js.map +1 -1
- package/dist/esm/resources/models/resources-relationships.backend.definitions.d.ts.map +1 -1
- package/dist/esm/resources/models/resources-relationships.backend.definitions.js +14 -0
- package/dist/esm/resources/models/resources-relationships.backend.definitions.js.map +1 -1
- package/dist/esm/resources/models/resources-types.backend.schemas.d.ts +2 -1
- package/dist/esm/resources/models/resources-types.backend.schemas.d.ts.map +1 -1
- package/dist/esm/resources/models/resources-types.backend.schemas.js +8 -0
- package/dist/esm/resources/models/resources-types.backend.schemas.js.map +1 -1
- package/dist/esm/resources/models/resources.backend.schemas.d.ts.map +1 -1
- package/dist/esm/resources/models/virtual-fields.backend.types.d.ts.map +1 -1
- package/dist/esm/resources/services/__tests__/mock-resources-registry.service.d.ts.map +1 -1
- package/dist/esm/resources/services/resource-context.backend.service.d.ts.map +1 -1
- package/dist/esm/resources/services/resource-id.backend.service.d.ts.map +1 -1
- package/dist/esm/resources/services/resource-population.backend.service.d.ts +17 -2
- package/dist/esm/resources/services/resource-population.backend.service.d.ts.map +1 -1
- package/dist/esm/resources/services/resource-population.backend.service.js +74 -18
- package/dist/esm/resources/services/resource-population.backend.service.js.map +1 -1
- package/dist/esm/resources/services/resources-registry.backend.service.d.ts +83 -5
- package/dist/esm/resources/services/resources-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/resources/services/resources-registry.backend.service.js +121 -6
- package/dist/esm/resources/services/resources-registry.backend.service.js.map +1 -1
- package/dist/esm/resources/services/virtual-fields.backend.service.d.ts.map +1 -1
- package/dist/esm/resources/utils/resource-retention.backend.utils.d.ts.map +1 -1
- package/dist/esm/runtime/controllers/health-controller.backend.service.d.ts +36 -3
- package/dist/esm/runtime/controllers/health-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/runtime/controllers/health-controller.backend.service.js +32 -10
- package/dist/esm/runtime/controllers/health-controller.backend.service.js.map +1 -1
- package/dist/esm/runtime/domain-module.backend.definitions.d.ts +24 -0
- package/dist/esm/runtime/domain-module.backend.definitions.d.ts.map +1 -1
- package/dist/esm/runtime/domain-module.backend.definitions.js +24 -0
- package/dist/esm/runtime/domain-module.backend.definitions.js.map +1 -1
- package/dist/esm/runtime/models/execution-context.backend.schemas.d.ts.map +1 -1
- package/dist/esm/runtime/models/request-context.als.backend.d.ts.map +1 -1
- package/dist/esm/runtime/models/runtime.backend.schemas.d.ts.map +1 -1
- package/dist/esm/runtime/services/execution-context-creator.backend.service.d.ts.map +1 -1
- package/dist/esm/runtime/services/execution-context-creator.backend.service.js.map +1 -1
- package/dist/esm/runtime/services/execution-context-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/runtime/services/health-readiness-contributor.backend.interface.d.ts +51 -0
- package/dist/esm/runtime/services/health-readiness-contributor.backend.interface.d.ts.map +1 -1
- package/dist/esm/runtime/services/health-readiness-contributor.backend.interface.js.map +1 -1
- package/dist/esm/runtime/services/http-server.backend.service.d.ts +26 -0
- package/dist/esm/runtime/services/http-server.backend.service.d.ts.map +1 -1
- package/dist/esm/runtime/services/http-server.backend.service.js +191 -1
- package/dist/esm/runtime/services/http-server.backend.service.js.map +1 -1
- package/dist/esm/runtime/services/start-application.backend.service.d.ts +19 -1
- package/dist/esm/runtime/services/start-application.backend.service.d.ts.map +1 -1
- package/dist/esm/runtime/services/start-application.backend.service.js +287 -89
- package/dist/esm/runtime/services/start-application.backend.service.js.map +1 -1
- package/dist/esm/runtime/services/utils/oauth-body-cap.backend.utils.d.ts.map +1 -1
- package/dist/esm/runtime/testing/execution-context-test-fixtures.d.ts.map +1 -1
- package/dist/esm/runtime/testing/mock-execution-context-creator.service.d.ts.map +1 -1
- package/dist/esm/runtime/utils/application-startup-config-access.backend.utils.d.ts.map +1 -1
- package/dist/esm/runtime/utils/feature-gated-core-resource-exclusions.backend.utils.d.ts.map +1 -1
- package/dist/esm/runtime/utils/request-client-ip.utils.d.ts.map +1 -1
- package/dist/esm/runtime/utils/scan-default-exports.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-key-generation.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.d.ts +15 -0
- package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.js +28 -0
- package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.d.ts +5 -1
- package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.js +24 -4
- package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/controllers/auth-method-management-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/controllers/authentication-controller.backend.service.d.ts +22 -0
- package/dist/esm/security/authentications/controllers/authentication-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/controllers/authentication-controller.backend.service.js +113 -4
- package/dist/esm/security/authentications/controllers/authentication-controller.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.d.ts +114 -0
- package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.js +354 -3
- package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/models/auth-constants.backend.d.ts.map +1 -1
- package/dist/esm/security/authentications/models/authentications.backend.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/models/authorization-client.backend.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/models/cimd.backend.schemas.d.ts +1 -0
- package/dist/esm/security/authentications/models/cimd.backend.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/models/cimd.backend.schemas.js +22 -0
- package/dist/esm/security/authentications/models/cimd.backend.schemas.js.map +1 -1
- package/dist/esm/security/authentications/models/federated-auth-transport.backend.definitions.d.ts +37 -0
- package/dist/esm/security/authentications/models/federated-auth-transport.backend.definitions.d.ts.map +1 -0
- package/dist/esm/security/authentications/models/federated-auth-transport.backend.definitions.js +37 -0
- package/dist/esm/security/authentications/models/federated-auth-transport.backend.definitions.js.map +1 -0
- package/dist/esm/security/authentications/models/identity-persistence-boundaries.backend.d.ts.map +1 -1
- package/dist/esm/security/authentications/models/jwt.backend.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/models/oauth2-connection.backend.schemas.d.ts +30 -0
- package/dist/esm/security/authentications/models/oauth2-connection.backend.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/models/oauth2-connection.backend.schemas.js.map +1 -1
- package/dist/esm/security/authentications/models/saml-authentication.backend.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/models/sso-connection.backend.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/models/user-authorization-version.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/seeds/enterprise-config-defaults.seeds.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/__tests__/mock-auth-execution-context-factory.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/__tests__/mock-auth-token-issuer.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/__tests__/oauth-provider-audit-spies.mock.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/__tests__/mock-domain-to-org-lookup.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/__tests__/mock-enterprise-user-provisioning.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.d.ts +0 -2
- package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.js +23 -14
- package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.js.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.d.ts +0 -1
- package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.js +15 -12
- package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.d.ts +113 -3
- package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.js +207 -30
- package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.d.ts +95 -2
- package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.js +153 -9
- package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/oidc-discovery.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/oidc-discovery.backend.service.js +2 -1
- package/dist/esm/security/authentications/services/admin-config/oidc-discovery.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/anonymous-session.backend.service.d.ts +197 -0
- package/dist/esm/security/authentications/services/anonymous-session.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/anonymous-session.backend.service.js +384 -53
- package/dist/esm/security/authentications/services/anonymous-session.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/auth-credential-verifier.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-execution-context-factory.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.js +68 -1
- package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/auth-mfa.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/auth-password-reset.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/auth-phone-verification.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.d.ts +41 -0
- package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.js +202 -23
- package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/oauth2-authentication.backend.service.d.ts +97 -0
- package/dist/esm/security/authentications/services/auth-methods/oauth2-authentication.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/oauth2-authentication.backend.service.js +260 -27
- package/dist/esm/security/authentications/services/auth-methods/oauth2-authentication.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service.d.ts +14 -0
- package/dist/esm/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service.js +70 -4
- package/dist/esm/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/saml-assertion-validator.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/saml-authentication.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/saml-metadata.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/saml-replay-guard.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.d.ts +29 -5
- package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.js +77 -5
- package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/auth-session-store.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.d.ts +17 -1
- package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.js +49 -17
- package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.d.ts +43 -1
- package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.js +277 -97
- package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.d.ts +28 -5
- package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.js +72 -12
- package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/custom-impls/auth-custom-implementations.backend.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/custom-impls/auth-custom-implementations.backend.js +3 -0
- package/dist/esm/security/authentications/services/custom-impls/auth-custom-implementations.backend.js.map +1 -1
- package/dist/esm/security/authentications/services/custom-impls/scim-tokens.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/custom-impls/siem-delivery-dlq.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.d.ts +28 -0
- package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.d.ts.map +1 -0
- package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.js +339 -0
- package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.js.map +1 -0
- package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.d.ts +4 -3
- package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.js +4 -3
- package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/custom-impls/sso-connection.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/custom-impls/sso-connection.custom-impl.backend.service.js +11 -1
- package/dist/esm/security/authentications/services/custom-impls/sso-connection.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/email-verification-initiator.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/machine-token-issuer.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.d.ts +35 -0
- package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.js +111 -21
- package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.d.ts +14 -1
- package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.js +49 -8
- package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/oidc-user-claims.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/resolve-active-member-orgs.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/__tests__/mock-auth-user-lookup.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/auth-controller.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/auth-credential-ops.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/auth-policy-resolution.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/auth-policy-resolution.backend.utils.js +4 -0
- package/dist/esm/security/authentications/services/utils/auth-policy-resolution.backend.utils.js.map +1 -1
- package/dist/esm/security/authentications/services/utils/auth-response-helper.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/auth-user-lookup.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/auth-user-lookup.backend.service.js +6 -0
- package/dist/esm/security/authentications/services/utils/auth-user-lookup.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/utils/concurrent-session-eviction.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/ensure-user-profile.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.d.ts +37 -1
- package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.js +51 -0
- package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.js.map +1 -1
- package/dist/esm/security/authentications/services/utils/machine-auth-rate-limit.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/pkce.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/saml-java-availability.d.ts.map +1 -1
- package/dist/esm/security/authentications/utils/application-auth-policy-audit.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.d.ts +41 -0
- package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.js +45 -0
- package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.js.map +1 -1
- package/dist/esm/security/authentications/utils/one-off-session-lifetime.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/utils/social-oauth2-purpose.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authorizations/access-grant-decision.factory.backend.d.ts +59 -0
- package/dist/esm/security/authorizations/access-grant-decision.factory.backend.d.ts.map +1 -0
- package/dist/esm/security/authorizations/access-grant-decision.factory.backend.js +111 -0
- package/dist/esm/security/authorizations/access-grant-decision.factory.backend.js.map +1 -0
- package/dist/esm/security/authorizations/access-grant-lifecycle-audit.backend.d.ts +57 -0
- package/dist/esm/security/authorizations/access-grant-lifecycle-audit.backend.d.ts.map +1 -0
- package/dist/esm/security/authorizations/access-grant-lifecycle-audit.backend.js +133 -0
- package/dist/esm/security/authorizations/access-grant-lifecycle-audit.backend.js.map +1 -0
- package/dist/esm/security/authorizations/application-access-grant-custom-implementation.backend.service.d.ts +41 -0
- package/dist/esm/security/authorizations/application-access-grant-custom-implementation.backend.service.d.ts.map +1 -0
- package/dist/esm/security/authorizations/application-access-grant-custom-implementation.backend.service.js +157 -0
- package/dist/esm/security/authorizations/application-access-grant-custom-implementation.backend.service.js.map +1 -0
- package/dist/esm/security/authorizations/application-wide-read-admission.backend.d.ts +84 -0
- package/dist/esm/security/authorizations/application-wide-read-admission.backend.d.ts.map +1 -0
- package/dist/esm/security/authorizations/application-wide-read-admission.backend.js +99 -0
- package/dist/esm/security/authorizations/application-wide-read-admission.backend.js.map +1 -0
- package/dist/esm/security/authorizations/authorization-denial-audit.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.d.ts +116 -0
- package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.d.ts.map +1 -0
- package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.js +162 -0
- package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.js.map +1 -0
- package/dist/esm/security/authorizations/initiator-organization-confinement.backend.d.ts.map +1 -1
- package/dist/esm/security/authorizations/junction-scope-resolution.backend.d.ts.map +1 -1
- package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.d.ts +20 -20
- package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.js +27 -28
- package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.js.map +1 -1
- package/dist/esm/security/authorizations/organization-unit-narrowing-enforcement.backend.d.ts.map +1 -1
- package/dist/esm/security/authorizations/platform-access-grant-custom-implementation.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authorizations/platform-access-grant-custom-implementation.backend.service.js +37 -124
- package/dist/esm/security/authorizations/platform-access-grant-custom-implementation.backend.service.js.map +1 -1
- package/dist/esm/security/authorizations/privileged-access-review.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authorizations/relationship-foreign-key-filter.backend.d.ts.map +1 -1
- package/dist/esm/security/authorizations/role-ceiling.backend.utils.d.ts +4 -0
- package/dist/esm/security/authorizations/role-ceiling.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authorizations/role-ceiling.backend.utils.js +4 -0
- package/dist/esm/security/authorizations/role-ceiling.backend.utils.js.map +1 -1
- package/dist/esm/security/authorizations/role-conferral.backend.utils.d.ts +133 -0
- package/dist/esm/security/authorizations/role-conferral.backend.utils.d.ts.map +1 -0
- package/dist/esm/security/authorizations/role-conferral.backend.utils.js +137 -0
- package/dist/esm/security/authorizations/role-conferral.backend.utils.js.map +1 -0
- package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.d.ts +134 -1
- package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.d.ts.map +1 -1
- package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.js +152 -5
- package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.js.map +1 -1
- package/dist/esm/security/authorizations/services/authorizations.backend.service.d.ts +146 -8
- package/dist/esm/security/authorizations/services/authorizations.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authorizations/services/authorizations.backend.service.js +328 -29
- package/dist/esm/security/authorizations/services/authorizations.backend.service.js.map +1 -1
- package/dist/esm/security/authorizations/super-admin-floor.backend.utils.d.ts +6 -14
- package/dist/esm/security/authorizations/super-admin-floor.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authorizations/super-admin-floor.backend.utils.js +13 -22
- package/dist/esm/security/authorizations/super-admin-floor.backend.utils.js.map +1 -1
- package/dist/esm/security/connected-accounts/connection-target-authorization.backend.d.ts +60 -0
- package/dist/esm/security/connected-accounts/connection-target-authorization.backend.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/connection-target-authorization.backend.js +79 -0
- package/dist/esm/security/connected-accounts/connection-target-authorization.backend.js.map +1 -0
- package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.d.ts +299 -0
- package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.js +953 -0
- package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.d.ts +99 -0
- package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.js +22 -0
- package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.js.map +1 -0
- package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.d.ts +44 -0
- package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.js +20 -0
- package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.d.ts +210 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.js +423 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.d.ts +41 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.js +358 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.d.ts +160 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.js +282 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.d.ts +125 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.js +123 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.d.ts +54 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.js +153 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.d.ts +214 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.js +430 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.d.ts +45 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.js +291 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.d.ts +98 -0
- package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.js +29 -0
- package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.js.map +1 -0
- package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.d.ts +127 -0
- package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.js +277 -0
- package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.js.map +1 -0
- package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.d.ts +66 -0
- package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.js +75 -0
- package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.js.map +1 -0
- package/dist/esm/security/connected-accounts/utils/user-delegated-access-token-slot.backend.utils.d.ts +34 -0
- package/dist/esm/security/connected-accounts/utils/user-delegated-access-token-slot.backend.utils.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/utils/user-delegated-access-token-slot.backend.utils.js +39 -0
- package/dist/esm/security/connected-accounts/utils/user-delegated-access-token-slot.backend.utils.js.map +1 -0
- package/dist/esm/security/consumable-tokens/batches/consumable-tokens-cleanup.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/security/consumable-tokens/consumable-token-models.exports.d.ts.map +1 -1
- package/dist/esm/security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas.d.ts.map +1 -1
- package/dist/esm/security/consumable-tokens/models/consumable-tokens.shared.schemas.d.ts.map +1 -1
- package/dist/esm/security/consumable-tokens/models/index.d.ts.map +1 -1
- package/dist/esm/security/consumable-tokens/services/__tests__/mock-consumable-token.service.d.ts.map +1 -1
- package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.d.ts +21 -3
- package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.d.ts.map +1 -1
- package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.js +26 -16
- package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.js.map +1 -1
- package/dist/esm/security/credential-rotation-grace.backend.utils.d.ts +9 -4
- package/dist/esm/security/credential-rotation-grace.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/credential-rotation-grace.backend.utils.js +9 -4
- package/dist/esm/security/credential-rotation-grace.backend.utils.js.map +1 -1
- package/dist/esm/security/jwt/services/auth-jwt-guard.backend.service.d.ts.map +1 -1
- package/dist/esm/security/jwt/services/jwt.backend.service.d.ts.map +1 -1
- package/dist/esm/security/jwt/services/wildo-worker-bootstrap-client.backend.service.d.ts +13 -0
- package/dist/esm/security/jwt/services/wildo-worker-bootstrap-client.backend.service.d.ts.map +1 -1
- package/dist/esm/security/jwt/services/wildo-worker-bootstrap-client.backend.service.js +14 -0
- package/dist/esm/security/jwt/services/wildo-worker-bootstrap-client.backend.service.js.map +1 -1
- package/dist/esm/security/jwt/utils/jwt-verification-error-classification.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.d.ts +26 -0
- package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.js +43 -0
- package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.d.ts +8 -1
- package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.js +49 -0
- package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/security/outbound/outbound-request-deadline.backend.utils.d.ts +39 -0
- package/dist/esm/security/outbound/outbound-request-deadline.backend.utils.d.ts.map +1 -0
- package/dist/esm/security/outbound/outbound-request-deadline.backend.utils.js +60 -0
- package/dist/esm/security/outbound/outbound-request-deadline.backend.utils.js.map +1 -0
- package/dist/esm/security/outbound/outbound-request-headers.backend.utils.d.ts +66 -0
- package/dist/esm/security/outbound/outbound-request-headers.backend.utils.d.ts.map +1 -0
- package/dist/esm/security/outbound/outbound-request-headers.backend.utils.js +75 -0
- package/dist/esm/security/outbound/outbound-request-headers.backend.utils.js.map +1 -0
- package/dist/esm/security/scim/controllers/scim.backend.controller.d.ts.map +1 -1
- package/dist/esm/security/scim/controllers/scim.backend.controller.js +17 -5
- package/dist/esm/security/scim/controllers/scim.backend.controller.js.map +1 -1
- package/dist/esm/security/scim/models/scim-protocol.backend.schemas.d.ts +67 -29
- package/dist/esm/security/scim/models/scim-protocol.backend.schemas.d.ts.map +1 -1
- package/dist/esm/security/scim/models/scim-protocol.backend.schemas.js +47 -25
- package/dist/esm/security/scim/models/scim-protocol.backend.schemas.js.map +1 -1
- package/dist/esm/security/scim/utils/scim-attribute-path-resolver.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/scim/utils/scim-filter-parser.d.ts.map +1 -1
- package/dist/esm/security/scim/utils/scim-response-formatter.d.ts.map +1 -1
- package/dist/esm/security/session-invalidation-fence.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.d.ts +10 -2
- package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.js +10 -2
- package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.js.map +1 -1
- package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.d.ts +143 -0
- package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.d.ts.map +1 -0
- package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.js +258 -0
- package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.js.map +1 -0
- package/dist/esm/security/token-invalidation-fence.backend.utils.d.ts.map +1 -1
- package/dist/esm/testing.d.ts.map +1 -1
- package/dist/esm/users/services/inbound-contact-custom-implementation.backend.service.d.ts.map +1 -1
- package/dist/esm/users/services/user-deletion-audit.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/users/services/user-force-password-reset.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.d.ts +39 -0
- package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.d.ts.map +1 -0
- package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.js +159 -0
- package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.js.map +1 -0
- package/dist/esm/users/services/user-role-administration.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/users/services/user-self-custom-implementations.backend.d.ts.map +1 -1
- package/dist/esm/users/services/user-super-admin-floor.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +11 -9
- package/dist/esm/external-providers/services/flow-actor-design.backend.service.d.ts +0 -45
- package/dist/esm/external-providers/services/flow-actor-design.backend.service.d.ts.map +0 -1
- package/dist/esm/external-providers/services/flow-actor-design.backend.service.js +0 -22
- package/dist/esm/external-providers/services/flow-actor-design.backend.service.js.map +0 -1
- package/dist/esm/notifications/email/models/email-context-provider.interface.d.ts +0 -80
- package/dist/esm/notifications/email/models/email-context-provider.interface.d.ts.map +0 -1
- package/dist/esm/notifications/email/models/email-context-provider.interface.js +0 -25
- package/dist/esm/notifications/email/models/email-context-provider.interface.js.map +0 -1
- package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.d.ts +0 -49
- package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.d.ts.map +0 -1
- package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.js +0 -141
- package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.js.map +0 -1
- package/dist/esm/notifications/email/services/email-template-compiler.backend.service.d.ts +0 -37
- package/dist/esm/notifications/email/services/email-template-compiler.backend.service.d.ts.map +0 -1
- package/dist/esm/notifications/email/services/email-template-compiler.backend.service.js +0 -121
- package/dist/esm/notifications/email/services/email-template-compiler.backend.service.js.map +0 -1
- package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.d.ts +0 -58
- package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.d.ts.map +0 -1
- package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.js +0 -223
- package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.js.map +0 -1
package/dist/esm/security/authentications/services/utils/auth-user-lookup.backend.service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-user-lookup.backend.service.js","sourceRoot":"","sources":["../../../../../../../src/security/authentications/services/utils/auth-user-lookup.backend.service.ts"],"names":[],"mappings":"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","sourcesContent":["import 'reflect-metadata';\nimport { injectable, inject } from 'inversify';\nimport { SAAS_SERVICE_TYPES } from '~wildo-backend-lib/inject/models/service-types';\nimport { LoggerService } from '~wildo-backend-lib/monitoring/logger/services/logger.service';\nimport type { ServicesRegistryHandlerBackendService } from '~wildo-backend-lib/base-classes/services/services/services-registry-handler.backend.service';\nimport { AppConfigurationService } from '~wildo-backend-lib/config/services/app-configuration.backend.service';\nimport { CoreResourceType, UserStatus, resolveAuthConfig, disableDirectoryIncompatibleMethods } from '@wildo-ai/saas-models';\nimport type { User, UserPreferences, UserTypeAuthPolicy, OrgTypeAuthOverrides, AuthMethodsMap } from '@wildo-ai/saas-models';\nimport { isOrgActivelyDirectoryManaged } from '~wildo-backend-lib/organizations/services/scim-provisioning-gate.backend.utils';\nimport { projectCaughtErrorLogFields } from '~wildo-backend-lib/errors/utils/error-log-level-classification.backend.utils';\nimport { resolveActiveMemberOrgIds } from '~wildo-backend-lib/security/authentications/services/resolve-active-member-orgs.backend.utils';\nimport type { FeatureResolutionBackendService } from '~wildo-backend-lib/features/services/feature-resolution.backend.service';\nimport type { SystemAccessBackendService } from '~wildo-backend-lib/base-classes/services/services/system-access.backend.service';\nimport type { ExecutionContext } from '~wildo-backend-lib/runtime/models/execution-context.backend.schemas';\nimport type { ServiceOptions } from '~wildo-backend-lib/base-classes/models/repositories.backend.schemas';\nimport {\n resolveAuthPolicyForOrganizationType,\n} from './auth-policy-resolution.backend.utils';\n\n/**\n * User lookup helpers extracted from controller private methods.\n * Provides email-based lookups for Users and effective auth policy resolution\n * with org override merging (W5.8 / AUTH-14).\n */\n@injectable()\nexport class AuthUserLookupBackendService {\n private readonly logDebug: (message: string, context?: Record<string, unknown>) => void;\n\n constructor(\n @inject(SAAS_SERVICE_TYPES.Logger) private readonly logger: LoggerService,\n @inject(SAAS_SERVICE_TYPES.ServicesRegistryHandlerService) private readonly servicesRegistryHandler: ServicesRegistryHandlerBackendService,\n @inject(SAAS_SERVICE_TYPES.AppConfigService) private readonly appConfigService: AppConfigurationService,\n // AUTH-24: resolve per-org directory-management posture (DIRECTORY_PROVISIONING feature + a live SCIM\n // token) to derive local first-factor credential methods OFF the effective policy for a managed user.\n @inject(SAAS_SERVICE_TYPES.FeatureResolutionService) private readonly featureResolution: FeatureResolutionBackendService,\n @inject(SAAS_SERVICE_TYPES.SystemAccessService) private readonly systemAccessService: SystemAccessBackendService,\n ) {\n this.logDebug = this.logger.debugByType('AuthUserLookup');\n this.logger.setDebugTypeLogging('AuthUserLookup', false);\n }\n\n /**\n * Find a user by email address (ACTIVE only).\n * Returns null if not found — used by password reset which must not leak info.\n */\n async findUserByEmail(ec: ExecutionContext<any>, email: string): Promise<User | null> {\n return this.servicesRegistryHandler.read<User>(CoreResourceType.USERS, ec, { email: email.toLowerCase(), status: UserStatus.ACTIVE });\n }\n\n /**\n * Find a user by email address (any status).\n * Used by registration to check email uniqueness across ALL statuses.\n */\n async findAnyUserByEmail(\n ec: ExecutionContext<any>,\n email: string,\n serviceOptions?: ServiceOptions,\n ): Promise<User | null> {\n return this.servicesRegistryHandler.read<User>(\n CoreResourceType.USERS,\n ec,\n { email: email.toLowerCase() },\n serviceOptions,\n );\n }\n\n /**\n * Look up a user's email for audit/display purposes.\n * Returns empty string if not found.\n */\n async getUserEmail(ec: ExecutionContext<any>, userId: string): Promise<string> {\n const user = await this.servicesRegistryHandler.read<{ _id: string; email: string }>(CoreResourceType.USERS, ec, { _id: userId });\n return user?.email ?? '';\n }\n\n async findUserById(ec: ExecutionContext<any>, userId: string): Promise<User | null> {\n return this.servicesRegistryHandler.read<User>(CoreResourceType.USERS, ec, { _id: userId });\n }\n\n async findUserPreferencesByUserId(ec: ExecutionContext<any>, userId: string): Promise<UserPreferences | null> {\n return this.servicesRegistryHandler.read<UserPreferences>(CoreResourceType.USER_PREFERENCES, ec, { userId });\n }\n\n /**\n * AUTH-14 / W5.8: Resolve effective auth policy with org override merging.\n *\n * 1. Gets the raw UserTypeAuthPolicy from config\n * 2. Fetches user's active org memberships\n * 3. For each org, reads the org to get its type\n * 4. Collects authOverrides from organizationTypes[orgType]\n * 5. Calls resolveAuthConfig to merge (most-restrictive-wins)\n * 6. Returns the full UserTypeAuthPolicy with overridable fields merged\n *\n * Fields affected by org overrides: authMethodsEnabled, mfaPolicy, passwordPolicy.\n * All other fields (sessionDurationMinutes, lockoutPolicy, registration, etc.)\n * come from the raw user-type policy unchanged.\n */\n async resolveEffectiveAuthPolicy(\n // `_ec` is intentionally unused: AUTH-24 moved membership/org/link resolution to the SYSTEM door\n // (see the body), which builds its own context — a login/session EC carries no trusted org scope.\n // Kept in the signature for call-site stability and parity with the other lookups on this service.\n _ec: ExecutionContext<any>,\n userId: string,\n userType: string,\n ): Promise<UserTypeAuthPolicy | null> {\n const rawPolicy = this.appConfigService.getUserTypeAuthPolicy(userType);\n if (!rawPolicy) return null;\n\n try {\n // Resolve the user's ACTIVE org memberships via the SYSTEM door, NOT an ec-scoped read. A login/session\n // is globally org-agnostic and its EC carries NO trusted org scope, so an ec-scoped ORGANIZATION_MEMBERS\n // list surfaces only the user's PRIMARY-org membership and silently MISSES a CROSS-org membership (e.g.\n // one a SCIM push just added) — which would defeat the user-global closure below (a user password-logs-in\n // fine because the resolver never sees the managed org they were just provisioned into). See the incident\n // note in `resolveActiveMemberOrgIds` — the same reason per-org audit routing must read the junction as\n // system. That canonical resolver (`listAsSystem`, self-referential audit suppressed) is reused here.\n const activeOrgIds = await resolveActiveMemberOrgIds(this.systemAccessService, userId);\n\n if (activeOrgIds.length === 0) return rawPolicy;\n\n const organizationTypes = this.appConfigService.config.organizationTypes ?? {};\n const orgOverrides: OrgTypeAuthOverrides[] = [];\n // AUTH-24: also detect whether ANY of the user's ACTIVE orgs is ACTIVELY directory-managed\n // (DIRECTORY_PROVISIONING feature + a live SCIM token). If so, the effective policy must forbid\n // local first-factor credentials (PASSWORD / PASSKEY / MAGIC_LINK / SMS_OTP — see\n // `DIRECTORY_INCOMPATIBLE_LOCAL_AUTH_METHODS`) — they bypass the IdP and would\n // survive deprovisioning. Because this resolves across ALL the user's orgs, ONE managed org disables\n // them GLOBALLY for the user (the user-global closure); keying on CURRENT posture also covers a\n // credential set before the org became managed (the activation window). See\n // `.claude/plans/auth-24-credential-lifecycle.md`.\n let anyDirectoryManaged = false;\n\n for (const organizationId of activeOrgIds) {\n try {\n // System read: the org is one of the user's memberships resolved as system above, and may be a\n // CROSS-org the login EC cannot see — so read it the same way. `ORGANIZATIONS` opts into\n // `systemAccessPolicy.read`; the self-referential auth-policy resolution suppresses its own audit.\n const org = await this.systemAccessService.readAsSystem<{ _id: string; type?: string }>(\n CoreResourceType.ORGANIZATIONS, organizationId, { suppressSystemAudit: true },\n );\n if (org?.type && organizationTypes[org.type]?.authOverrides) {\n orgOverrides.push(organizationTypes[org.type].authOverrides!);\n }\n } catch {\n // Org read failure is non-fatal — skip this org's overrides\n }\n if (!anyDirectoryManaged) {\n try {\n const orgIsManaged = await isOrgActivelyDirectoryManaged({\n organizationId,\n featureResolution: this.featureResolution,\n systemAccessService: this.systemAccessService,\n });\n // PROVISIONED-ONLY (user decision 2026-07-21): the derivation applies only to a user the IdP\n // actually PROVISIONED — evidenced by a USER_IDENTITY_LINKS row for THIS org (written by the SCIM\n // push / SSO-JIT). The owner/admin who joined via local registration/invite has NO link and keeps\n // a break-glass credential. Aligns Part 1 with Part 3 (reconciliation only fires on the SCIM push,\n // which also writes the link). See `.claude/plans/auth-24-credential-lifecycle.md`.\n if (orgIsManaged) {\n const identityLink = await this.systemAccessService.readAsSystem<{ _id: string }>(\n CoreResourceType.USER_IDENTITY_LINKS, { userId, organizationId }, { suppressSystemAudit: true },\n );\n if (identityLink) anyDirectoryManaged = true;\n }\n } catch {\n // Posture / identity-link read failure is non-fatal for THIS org — leave the flag as-is. Login\n // must not hard-fail on a transient read; the invite-accept MUTATION path stays the fail-closed\n // gate for credential CREATION, and reconciliation (AUTH-24 part 3) is the durable backstop.\n }\n }\n }\n\n // No overrides AND not directory-managed → nothing derived; return the raw user-type policy.\n if (orgOverrides.length === 0 && !anyDirectoryManaged) return rawPolicy;\n\n // Base effective config: org-merged (most-restrictive) when overrides exist, else the raw policy.\n let effectiveMethods: AuthMethodsMap;\n let effectiveMfa = rawPolicy.mfaPolicy;\n let effectivePassword = rawPolicy.passwordPolicy;\n if (orgOverrides.length > 0) {\n const authConfig = this.appConfigService.config.auth;\n const resolved = resolveAuthConfig({\n userTypeAuth: rawPolicy,\n orgOverrides,\n orgAuthMethodPolicy: authConfig.orgAuthMethodPolicy,\n expandableOrgMethods: authConfig.expandableOrgMethods,\n });\n effectiveMethods = resolved.authMethodsEnabled;\n effectiveMfa = resolved.mfaPolicy;\n effectivePassword = resolved.passwordPolicy;\n } else {\n effectiveMethods = rawPolicy.authMethodsEnabled as AuthMethodsMap;\n }\n\n // AUTH-24 derivation: posture wins over authored config (same most-restrictive direction as the\n // org-override merge) — force the local first-factor methods OFF for a directory-managed user.\n const authMethodsEnabled = anyDirectoryManaged\n ? disableDirectoryIncompatibleMethods(effectiveMethods)\n : effectiveMethods;\n\n return {\n ...rawPolicy,\n authMethodsEnabled: authMethodsEnabled as UserTypeAuthPolicy['authMethodsEnabled'],\n mfaPolicy: effectiveMfa,\n passwordPolicy: effectivePassword,\n };\n } catch (error) {\n this.logDebug('AUTH-14: Org override resolution failed, falling back to raw user-type policy', {\n userId: userId.substring(0, 8) + '...',\n userType,\n ...projectCaughtErrorLogFields(error),\n });\n return rawPolicy;\n }\n }\n\n /**\n * Org-TYPE-keyed effective auth-policy resolution — PURE (no DB, no EC).\n *\n * For surfaces that must know an organization's available auth methods WITHOUT\n * an authenticated user AND WITHOUT reading the ORGANIZATIONS resource. The\n * canonical caller is the public invitation-accept screen, which runs under an\n * unauthenticated `APP_PUBLIC` pre-auth EC that CANNOT read ORGANIZATIONS (its\n * READ ACL is ORG_MEMBER / super-admin). An earlier org-ID-keyed variant read\n * ORGANIZATIONS internally and fail-closed silently under that EC, dropping the\n * org's auth overrides — so this takes the `orgType` the caller has already\n * resolved via the system-access door and does zero I/O.\n *\n * Resolves the effective policy for a hypothetical member of `userType` in an\n * organization of type `orgType`: `organizationTypes[orgType].authOverrides`\n * merged through the SAME pure `resolveAuthConfig` core (most-restrictive-wins)\n * used by the user-keyed path. Single-org, so no multi-org intersection — but the\n * per-org RESTRICT_ONLY / EXPAND_WITHIN_SET / UNRESTRICTED policy still applies.\n *\n * Fail-open to the raw user-type policy when `orgType` is absent or its type\n * declares no overrides. Returns `null` only when the user type has no policy at\n * all (unknown user type).\n */\n resolveAuthPolicyForOrgType(\n userType: string,\n orgType: string | undefined,\n ): UserTypeAuthPolicy | null {\n return resolveAuthPolicyForOrganizationType(\n this.appConfigService.config,\n userType,\n orgType,\n this.appConfigService.getUserTypeAuthPolicy(userType),\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"auth-user-lookup.backend.service.js","sourceRoot":"","sources":["../../../../../../src/security/authentications/services/utils/auth-user-lookup.backend.service.ts"],"names":[],"mappings":"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","sourcesContent":["import 'reflect-metadata';\nimport { injectable, inject } from 'inversify';\nimport { SAAS_SERVICE_TYPES } from '~wildo-backend-lib/inject/models/service-types';\nimport { LoggerService } from '~wildo-backend-lib/monitoring/logger/services/logger.service';\nimport type { ServicesRegistryHandlerBackendService } from '~wildo-backend-lib/base-classes/services/services/services-registry-handler.backend.service';\nimport { AppConfigurationService } from '~wildo-backend-lib/config/services/app-configuration.backend.service';\nimport { CoreResourceType, UserStatus, resolveAuthConfig, disableDirectoryIncompatibleMethods } from '@wildo-ai/saas-models';\nimport type { User, UserPreferences, UserTypeAuthPolicy, OrgTypeAuthOverrides, AuthMethodsMap } from '@wildo-ai/saas-models';\nimport { isOrgActivelyDirectoryManaged } from '~wildo-backend-lib/organizations/services/scim-provisioning-gate.backend.utils';\nimport { projectCaughtErrorLogFields } from '~wildo-backend-lib/errors/utils/error-log-level-classification.backend.utils';\nimport { resolveActiveMemberOrgIds } from '~wildo-backend-lib/security/authentications/services/resolve-active-member-orgs.backend.utils';\nimport type { FeatureResolutionBackendService } from '~wildo-backend-lib/features/services/feature-resolution.backend.service';\nimport type { SystemAccessBackendService } from '~wildo-backend-lib/base-classes/services/services/system-access.backend.service';\nimport type { ExecutionContext } from '~wildo-backend-lib/runtime/models/execution-context.backend.schemas';\nimport type { ServiceOptions } from '~wildo-backend-lib/base-classes/models/repositories.backend.schemas';\nimport {\n resolveAuthPolicyForOrganizationType,\n} from './auth-policy-resolution.backend.utils';\n\n/**\n * User lookup helpers extracted from controller private methods.\n * Provides email-based lookups for Users and effective auth policy resolution\n * with org override merging (W5.8 / AUTH-14).\n */\n@injectable()\nexport class AuthUserLookupBackendService {\n private readonly logDebug: (message: string, context?: Record<string, unknown>) => void;\n\n constructor(\n @inject(SAAS_SERVICE_TYPES.Logger) private readonly logger: LoggerService,\n @inject(SAAS_SERVICE_TYPES.ServicesRegistryHandlerService) private readonly servicesRegistryHandler: ServicesRegistryHandlerBackendService,\n @inject(SAAS_SERVICE_TYPES.AppConfigService) private readonly appConfigService: AppConfigurationService,\n // AUTH-24: resolve per-org directory-management posture (DIRECTORY_PROVISIONING feature + a live SCIM\n // token) to derive local first-factor credential methods OFF the effective policy for a managed user.\n @inject(SAAS_SERVICE_TYPES.FeatureResolutionService) private readonly featureResolution: FeatureResolutionBackendService,\n @inject(SAAS_SERVICE_TYPES.SystemAccessService) private readonly systemAccessService: SystemAccessBackendService,\n ) {\n this.logDebug = this.logger.debugByType('AuthUserLookup');\n this.logger.setDebugTypeLogging('AuthUserLookup', false);\n }\n\n /**\n * Find a user by email address (ACTIVE only).\n * Returns null if not found — used by password reset which must not leak info.\n */\n async findUserByEmail(ec: ExecutionContext<any>, email: string): Promise<User | null> {\n return this.servicesRegistryHandler.read<User>(CoreResourceType.USERS, ec, { email: email.toLowerCase(), status: UserStatus.ACTIVE });\n }\n\n /**\n * Find a user by email address (any status).\n * Used by registration to check email uniqueness across ALL statuses.\n */\n async findAnyUserByEmail(\n ec: ExecutionContext<any>,\n email: string,\n serviceOptions?: ServiceOptions,\n ): Promise<User | null> {\n return this.servicesRegistryHandler.read<User>(\n CoreResourceType.USERS,\n ec,\n { email: email.toLowerCase() },\n serviceOptions,\n );\n }\n\n /**\n * Look up a user's email for audit/display purposes.\n * Returns empty string if not found.\n */\n async getUserEmail(ec: ExecutionContext<any>, userId: string): Promise<string> {\n const user = await this.servicesRegistryHandler.read<{ _id: string; email: string }>(CoreResourceType.USERS, ec, { _id: userId });\n return user?.email ?? '';\n }\n\n async findUserById(ec: ExecutionContext<any>, userId: string): Promise<User | null> {\n return this.servicesRegistryHandler.read<User>(CoreResourceType.USERS, ec, { _id: userId });\n }\n\n async findUserPreferencesByUserId(ec: ExecutionContext<any>, userId: string): Promise<UserPreferences | null> {\n return this.servicesRegistryHandler.read<UserPreferences>(CoreResourceType.USER_PREFERENCES, ec, { userId });\n }\n\n /**\n * AUTH-14 / W5.8: Resolve effective auth policy with org override merging.\n *\n * 1. Gets the raw UserTypeAuthPolicy from config\n * 2. Fetches user's active org memberships\n * 3. For each org, reads the org to get its type\n * 4. Collects authOverrides from organizationTypes[orgType]\n * 5. Calls resolveAuthConfig to merge (most-restrictive-wins)\n * 6. Returns the full UserTypeAuthPolicy with overridable fields merged\n *\n * Fields affected by org overrides: authMethodsEnabled, mfaPolicy, passwordPolicy.\n * All other fields (sessionDurationMinutes, lockoutPolicy, registration, etc.)\n * come from the raw user-type policy unchanged.\n */\n async resolveEffectiveAuthPolicy(\n // `_ec` is intentionally unused: AUTH-24 moved membership/org/link resolution to the SYSTEM door\n // (see the body), which builds its own context — a login/session EC carries no trusted org scope.\n // Kept in the signature for call-site stability and parity with the other lookups on this service.\n _ec: ExecutionContext<any>,\n userId: string,\n userType: string,\n ): Promise<UserTypeAuthPolicy | null> {\n const rawPolicy = this.appConfigService.getUserTypeAuthPolicy(userType);\n if (!rawPolicy) return null;\n\n try {\n // Resolve the user's ACTIVE org memberships via the SYSTEM door, NOT an ec-scoped read. A login/session\n // is globally org-agnostic and its EC carries NO trusted org scope, so an ec-scoped ORGANIZATION_MEMBERS\n // list surfaces only the user's PRIMARY-org membership and silently MISSES a CROSS-org membership (e.g.\n // one a SCIM push just added) — which would defeat the user-global closure below (a user password-logs-in\n // fine because the resolver never sees the managed org they were just provisioned into). See the incident\n // note in `resolveActiveMemberOrgIds` — the same reason per-org audit routing must read the junction as\n // system. That canonical resolver (`listAsSystem`, self-referential audit suppressed) is reused here.\n const activeOrgIds = await resolveActiveMemberOrgIds(this.systemAccessService, userId);\n\n if (activeOrgIds.length === 0) return rawPolicy;\n\n const organizationTypes = this.appConfigService.config.organizationTypes ?? {};\n const orgOverrides: OrgTypeAuthOverrides[] = [];\n // AUTH-24: also detect whether ANY of the user's ACTIVE orgs is ACTIVELY directory-managed\n // (DIRECTORY_PROVISIONING feature + a live SCIM token). If so, the effective policy must forbid\n // local first-factor credentials (PASSWORD / PASSKEY / MAGIC_LINK / SMS_OTP — see\n // `DIRECTORY_INCOMPATIBLE_LOCAL_AUTH_METHODS`) — they bypass the IdP and would\n // survive deprovisioning. Because this resolves across ALL the user's orgs, ONE managed org disables\n // them GLOBALLY for the user (the user-global closure); keying on CURRENT posture also covers a\n // credential set before the org became managed (the activation window). See\n // `.claude/plans/auth-24-credential-lifecycle.md`.\n let anyDirectoryManaged = false;\n\n for (const organizationId of activeOrgIds) {\n try {\n // System read: the org is one of the user's memberships resolved as system above, and may be a\n // CROSS-org the login EC cannot see — so read it the same way. `ORGANIZATIONS` opts into\n // `systemAccessPolicy.read`; the self-referential auth-policy resolution suppresses its own audit.\n const org = await this.systemAccessService.readAsSystem<{ _id: string; type?: string }>(\n CoreResourceType.ORGANIZATIONS, organizationId, { suppressSystemAudit: true },\n );\n if (org?.type && organizationTypes[org.type]?.authOverrides) {\n orgOverrides.push(organizationTypes[org.type].authOverrides!);\n }\n } catch {\n // Org read failure is non-fatal — skip this org's overrides\n }\n if (!anyDirectoryManaged) {\n try {\n const orgIsManaged = await isOrgActivelyDirectoryManaged({\n organizationId,\n featureResolution: this.featureResolution,\n systemAccessService: this.systemAccessService,\n });\n // PROVISIONED-ONLY (user decision 2026-07-21): the derivation applies only to a user the IdP\n // actually PROVISIONED — evidenced by a USER_IDENTITY_LINKS row for THIS org (written by the SCIM\n // push / SSO-JIT). The owner/admin who joined via local registration/invite has NO link and keeps\n // a break-glass credential. Aligns Part 1 with Part 3 (reconciliation only fires on the SCIM push,\n // which also writes the link). See `.claude/plans/auth-24-credential-lifecycle.md`.\n if (orgIsManaged) {\n const identityLink = await this.systemAccessService.readAsSystem<{ _id: string }>(\n CoreResourceType.USER_IDENTITY_LINKS, { userId, organizationId }, { suppressSystemAudit: true },\n );\n if (identityLink) anyDirectoryManaged = true;\n }\n } catch {\n // Posture / identity-link read failure is non-fatal for THIS org — leave the flag as-is. Login\n // must not hard-fail on a transient read; the invite-accept MUTATION path stays the fail-closed\n // gate for credential CREATION, and reconciliation (AUTH-24 part 3) is the durable backstop.\n }\n }\n }\n\n // No overrides AND not directory-managed → nothing derived; return the raw user-type policy.\n if (orgOverrides.length === 0 && !anyDirectoryManaged) return rawPolicy;\n\n // Base effective config: org-merged (most-restrictive) when overrides exist, else the raw policy.\n let effectiveMethods: AuthMethodsMap;\n let effectiveMfa = rawPolicy.mfaPolicy;\n let effectivePassword = rawPolicy.passwordPolicy;\n // #527 — the fourth overridable axis. Declared beside its three siblings because this resolver\n // and the pure org-type one are TWO sites of one invariant, and the merge must not be applied\n // at only one of them.\n let effectiveStepUp = rawPolicy.stepUpAuth;\n if (orgOverrides.length > 0) {\n const authConfig = this.appConfigService.config.auth;\n const resolved = resolveAuthConfig({\n userTypeAuth: rawPolicy,\n orgOverrides,\n orgAuthMethodPolicy: authConfig.orgAuthMethodPolicy,\n expandableOrgMethods: authConfig.expandableOrgMethods,\n });\n effectiveMethods = resolved.authMethodsEnabled;\n effectiveMfa = resolved.mfaPolicy;\n effectivePassword = resolved.passwordPolicy;\n effectiveStepUp = resolved.stepUpAuth;\n } else {\n effectiveMethods = rawPolicy.authMethodsEnabled as AuthMethodsMap;\n }\n\n // AUTH-24 derivation: posture wins over authored config (same most-restrictive direction as the\n // org-override merge) — force the local first-factor methods OFF for a directory-managed user.\n const authMethodsEnabled = anyDirectoryManaged\n ? disableDirectoryIncompatibleMethods(effectiveMethods)\n : effectiveMethods;\n\n return {\n ...rawPolicy,\n authMethodsEnabled: authMethodsEnabled as UserTypeAuthPolicy['authMethodsEnabled'],\n mfaPolicy: effectiveMfa,\n passwordPolicy: effectivePassword,\n stepUpAuth: effectiveStepUp,\n };\n } catch (error) {\n this.logDebug('AUTH-14: Org override resolution failed, falling back to raw user-type policy', {\n userId: userId.substring(0, 8) + '...',\n userType,\n ...projectCaughtErrorLogFields(error),\n });\n return rawPolicy;\n }\n }\n\n /**\n * Org-TYPE-keyed effective auth-policy resolution — PURE (no DB, no EC).\n *\n * For surfaces that must know an organization's available auth methods WITHOUT\n * an authenticated user AND WITHOUT reading the ORGANIZATIONS resource. The\n * canonical caller is the public invitation-accept screen, which runs under an\n * unauthenticated `APP_PUBLIC` pre-auth EC that CANNOT read ORGANIZATIONS (its\n * READ ACL is ORG_MEMBER / super-admin). An earlier org-ID-keyed variant read\n * ORGANIZATIONS internally and fail-closed silently under that EC, dropping the\n * org's auth overrides — so this takes the `orgType` the caller has already\n * resolved via the system-access door and does zero I/O.\n *\n * Resolves the effective policy for a hypothetical member of `userType` in an\n * organization of type `orgType`: `organizationTypes[orgType].authOverrides`\n * merged through the SAME pure `resolveAuthConfig` core (most-restrictive-wins)\n * used by the user-keyed path. Single-org, so no multi-org intersection — but the\n * per-org RESTRICT_ONLY / EXPAND_WITHIN_SET / UNRESTRICTED policy still applies.\n *\n * Fail-open to the raw user-type policy when `orgType` is absent or its type\n * declares no overrides. Returns `null` only when the user type has no policy at\n * all (unknown user type).\n */\n resolveAuthPolicyForOrgType(\n userType: string,\n orgType: string | undefined,\n ): UserTypeAuthPolicy | null {\n return resolveAuthPolicyForOrganizationType(\n this.appConfigService.config,\n userType,\n orgType,\n this.appConfigService.getUserTypeAuthPolicy(userType),\n );\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concurrent-session-eviction.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"concurrent-session-eviction.backend.utils.d.ts","sourceRoot":"","sources":["../../../../../../src/security/authentications/services/utils/concurrent-session-eviction.backend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAIlG;AAQD,qGAAqG;AACrG,eAAO,MAAM,qCAAqC,KAAK,CAAC;AAExD;;;;;;GAMG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE;IACxD,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACtC,eAAe,EAAE,MAAM,CAAC;IACxB,sBAAsB,EAAE,MAAM,CAAC;CAChC,GAAG,MAAM,CAST;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,+BAA+B,mvBAsBvC,CAAC"}
|
package/dist/esm/security/authentications/services/utils/ensure-user-profile.backend.utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensure-user-profile.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"ensure-user-profile.backend.utils.d.ts","sourceRoot":"","sources":["../../../../../../src/security/authentications/services/utils/ensure-user-profile.backend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAC;AAClG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qEAAqE,CAAC;AAC5G,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,6FAA6F,CAAC;AACzJ,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iFAAiF,CAAC;AAElI;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAsB,oCAAoC,CACxD,EAAE,EAAE,gBAAgB,CAAC,GAAG,CAAC,EACzB,MAAM,EAAE;IACN,oFAAoF;IACpF,MAAM,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,OAAO,EAAE,wBAAwB,CAAC;IAClC,uBAAuB,EAAE,qCAAqC,CAAC;IAC/D,mBAAmB,EAAE,0BAA0B,CAAC;IAChD;;;;OAIG;IACH,MAAM,EAAE,aAAa,CAAC;CACvB,GACA,OAAO,CAAC,IAAI,CAAC,CAoDf"}
|
package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ResourceServerKind, RuntimeEnvironment } from '@wildo-ai/saas-models';
|
|
1
|
+
import type { ExecutionContext_InitiatorIds, ResourceServerKind, RuntimeEnvironment } from '@wildo-ai/saas-models';
|
|
2
2
|
import type { RedisService } from '../../../../databases/services/redis.service';
|
|
3
3
|
import type { LoggerService } from '../../../../monitoring/logger/services/logger.service';
|
|
4
4
|
import type { SocketAuthResult } from '../../../../runtime/models/execution-context.backend.schemas';
|
|
@@ -68,6 +68,42 @@ export type ExternalTurnRateDecision = {
|
|
|
68
68
|
* owner id, so the caller treats `undefined` as "cannot throttle → proceed", fail-open).
|
|
69
69
|
*/
|
|
70
70
|
export declare function resolvePrincipalRateKey(auth: SocketAuthResult): string | undefined;
|
|
71
|
+
/**
|
|
72
|
+
* Derive the counting subject for an operation's OWN declared `rateLimit` policy on a
|
|
73
|
+
* credentialed agent plane (today: MCP `tools/call`). Sits beside
|
|
74
|
+
* {@link resolvePrincipalRateKey} on purpose — the two answer the same question for two
|
|
75
|
+
* different guards, and the ONE thing a reader must not have to reconstruct is why they
|
|
76
|
+
* answer it differently.
|
|
77
|
+
*
|
|
78
|
+
* ## The precedence differs from {@link resolvePrincipalRateKey}, and that is the decision
|
|
79
|
+
*
|
|
80
|
+
* `resolvePrincipalRateKey` deliberately keys the framework's blanket abuse throttle on the
|
|
81
|
+
* principal's OWNER (`user` → `org` → `app`). That is right for a spend guard: the thing being
|
|
82
|
+
* protected is the tenant's shared upstream quota, so every credential the tenant issued should
|
|
83
|
+
* saturate ONE bucket and a tenant cannot buy more headroom by minting more clients.
|
|
84
|
+
*
|
|
85
|
+
* An AUTHORED per-endpoint `rateLimit` is a different statement. Over HTTP it is enforced
|
|
86
|
+
* per SOURCE IP — one caller, one budget — so `requestsPerMinute: 5` has never meant "5/min
|
|
87
|
+
* for the whole tenant"; it means "5/min per client, and N clients get N × 5". The faithful
|
|
88
|
+
* translation onto a plane whose callers are credentials rather than sockets is therefore the
|
|
89
|
+
* CREDENTIAL: two agents an organization runs against the same tool are two clients, exactly as
|
|
90
|
+
* two browsers on two IPs are. Keying this guard on the org instead would silently make the
|
|
91
|
+
* SAME declared number roughly N times stricter over MCP than over REST for any tenant running
|
|
92
|
+
* more than one agent — the "throttles a whole tenant on one agent's traffic" failure — and an
|
|
93
|
+
* application author reading `requestsPerMinute: 5` has no way to discover that.
|
|
94
|
+
*
|
|
95
|
+
* Hence: credential first, then the delegated user, then the owning scope as a last resort.
|
|
96
|
+
* The scope fallback is defensive only — an authenticated MCP caller is either a machine (which
|
|
97
|
+
* always carries `machineCredential`) or user-delegated (which always carries `userId`).
|
|
98
|
+
*
|
|
99
|
+
* Every branch reads a SERVER-VERIFIED field of the execution context. Nothing here may ever be
|
|
100
|
+
* sourced from tool arguments or any other model-supplied value, or the throttle becomes
|
|
101
|
+
* opt-out by an attacker choosing a fresh bucket per call.
|
|
102
|
+
*
|
|
103
|
+
* @returns `undefined` when no identity field is present (see the call site for what that means
|
|
104
|
+
* there — this function does not decide the posture, it only reports that it cannot key).
|
|
105
|
+
*/
|
|
106
|
+
export declare function resolveDeclaredPolicySubjectKey(initiatorIds: ExecutionContext_InitiatorIds | null | undefined): string | undefined;
|
|
71
107
|
/**
|
|
72
108
|
* Increment and evaluate the per-principal counter for one external turn/call. Call this
|
|
73
109
|
* AFTER authentication and BEFORE the expensive dispatch (LLM turn / resource op). Returns
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external-turn-rate-limit.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"external-turn-rate-limit.backend.utils.d.ts","sourceRoot":"","sources":["../../../../../../src/security/authentications/services/utils/external-turn-rate-limit.backend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACnH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qDAAqD,CAAC;AACxF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAC;AAClG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qEAAqE,CAAC;AAI5G;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,8GAA8G;AAC9G,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,mEAAmE;AACnE,eAAO,MAAM,qCAAqC,KAAK,CAAC;AAExD,4FAA4F;AAC5F,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAC9C,mEAAmE;AACnE,eAAO,MAAM,qCAAqC,KAAK,CAAC;AAExD;;;;;;;GAOG;AACH,MAAM,MAAM,wBAAwB,GAChC;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,GACd;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAOlF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,+BAA+B,CAAC,YAAY,EAAE,6BAA6B,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAUlI;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,4BAA4B,CAChD,IAAI,EAAE;IAAE,YAAY,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,aAAa,CAAA;CAAE,EAC3D,MAAM,EAAE;IACN,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,kBAAkB,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,kBAAkB,CAAC;CACpC,GACA,OAAO,CAAC,wBAAwB,CAAC,CA2BnC"}
|
package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.js
CHANGED
|
@@ -63,6 +63,57 @@ export function resolvePrincipalRateKey(auth) {
|
|
|
63
63
|
return `app:${ids.applicationId}`;
|
|
64
64
|
return undefined;
|
|
65
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* Derive the counting subject for an operation's OWN declared `rateLimit` policy on a
|
|
68
|
+
* credentialed agent plane (today: MCP `tools/call`). Sits beside
|
|
69
|
+
* {@link resolvePrincipalRateKey} on purpose — the two answer the same question for two
|
|
70
|
+
* different guards, and the ONE thing a reader must not have to reconstruct is why they
|
|
71
|
+
* answer it differently.
|
|
72
|
+
*
|
|
73
|
+
* ## The precedence differs from {@link resolvePrincipalRateKey}, and that is the decision
|
|
74
|
+
*
|
|
75
|
+
* `resolvePrincipalRateKey` deliberately keys the framework's blanket abuse throttle on the
|
|
76
|
+
* principal's OWNER (`user` → `org` → `app`). That is right for a spend guard: the thing being
|
|
77
|
+
* protected is the tenant's shared upstream quota, so every credential the tenant issued should
|
|
78
|
+
* saturate ONE bucket and a tenant cannot buy more headroom by minting more clients.
|
|
79
|
+
*
|
|
80
|
+
* An AUTHORED per-endpoint `rateLimit` is a different statement. Over HTTP it is enforced
|
|
81
|
+
* per SOURCE IP — one caller, one budget — so `requestsPerMinute: 5` has never meant "5/min
|
|
82
|
+
* for the whole tenant"; it means "5/min per client, and N clients get N × 5". The faithful
|
|
83
|
+
* translation onto a plane whose callers are credentials rather than sockets is therefore the
|
|
84
|
+
* CREDENTIAL: two agents an organization runs against the same tool are two clients, exactly as
|
|
85
|
+
* two browsers on two IPs are. Keying this guard on the org instead would silently make the
|
|
86
|
+
* SAME declared number roughly N times stricter over MCP than over REST for any tenant running
|
|
87
|
+
* more than one agent — the "throttles a whole tenant on one agent's traffic" failure — and an
|
|
88
|
+
* application author reading `requestsPerMinute: 5` has no way to discover that.
|
|
89
|
+
*
|
|
90
|
+
* Hence: credential first, then the delegated user, then the owning scope as a last resort.
|
|
91
|
+
* The scope fallback is defensive only — an authenticated MCP caller is either a machine (which
|
|
92
|
+
* always carries `machineCredential`) or user-delegated (which always carries `userId`).
|
|
93
|
+
*
|
|
94
|
+
* Every branch reads a SERVER-VERIFIED field of the execution context. Nothing here may ever be
|
|
95
|
+
* sourced from tool arguments or any other model-supplied value, or the throttle becomes
|
|
96
|
+
* opt-out by an attacker choosing a fresh bucket per call.
|
|
97
|
+
*
|
|
98
|
+
* @returns `undefined` when no identity field is present (see the call site for what that means
|
|
99
|
+
* there — this function does not decide the posture, it only reports that it cannot key).
|
|
100
|
+
*/
|
|
101
|
+
export function resolveDeclaredPolicySubjectKey(initiatorIds) {
|
|
102
|
+
if (!initiatorIds)
|
|
103
|
+
return undefined;
|
|
104
|
+
const credential = initiatorIds.machineCredential;
|
|
105
|
+
// The auth method rides the key because the two credential kinds are separate id spaces
|
|
106
|
+
// (an ApiKey row id and an OAuthClient row id could collide) — never as a policy axis.
|
|
107
|
+
if (credential?.credentialId)
|
|
108
|
+
return `cred:${credential.authMethod}:${credential.credentialId}`;
|
|
109
|
+
if (initiatorIds.userId)
|
|
110
|
+
return `user:${initiatorIds.userId}`;
|
|
111
|
+
if (initiatorIds.organizationId)
|
|
112
|
+
return `org:${initiatorIds.organizationId}`;
|
|
113
|
+
if (initiatorIds.applicationId)
|
|
114
|
+
return `app:${initiatorIds.applicationId}`;
|
|
115
|
+
return undefined;
|
|
116
|
+
}
|
|
66
117
|
/**
|
|
67
118
|
* Increment and evaluate the per-principal counter for one external turn/call. Call this
|
|
68
119
|
* AFTER authentication and BEFORE the expensive dispatch (LLM turn / resource op). Returns
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external-turn-rate-limit.backend.utils.js","sourceRoot":"","sources":["../../../../../../../src/security/authentications/services/utils/external-turn-rate-limit.backend.utils.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,2BAA2B,EAAE,MAAM,8EAA8E,CAAC;AAC3H,OAAO,EAAE,mCAAmC,EAAE,MAAM,iFAAiF,CAAC;AAEtI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,8GAA8G;AAC9G,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAC;AAC7C,mEAAmE;AACnE,MAAM,CAAC,MAAM,qCAAqC,GAAG,EAAE,CAAC;AAExD,4FAA4F;AAC5F,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAC;AAC9C,mEAAmE;AACnE,MAAM,CAAC,MAAM,qCAAqC,GAAG,EAAE,CAAC;AAcxD;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAsB;IAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;IAC9B,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,IAAI,GAAG,CAAC,MAAM;QAAE,OAAO,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;IAC5C,IAAI,GAAG,CAAC,cAAc;QAAE,OAAO,OAAO,GAAG,CAAC,cAAc,EAAE,CAAC;IAC3D,IAAI,GAAG,CAAC,aAAa;QAAE,OAAO,OAAO,GAAG,CAAC,aAAa,EAAE,CAAC;IACzD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,IAA2D,EAC3D,MAMC;IAED,MAAM,UAAU,GAAG,iBAAiB,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;IACnF,MAAM,qBAAqB,GAAG,mCAAmC,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;IAC9G,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,UAAU,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;QAC3F,IAAI,KAAK,GAAG,qBAAqB,EAAE,CAAC;YAClC,mFAAmF;YACnF,IAAI,iBAAiB,GAAG,MAAM,CAAC,aAAa,CAAC;YAC7C,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;gBAChE,IAAI,GAAG,GAAG,CAAC;oBAAE,iBAAiB,GAAG,GAAG,CAAC;YACvC,CAAC;YAAC,MAAM,CAAC;gBACP,uFAAuF;YACzF,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,iBAAiB,EAAE,CAAC;QACrD,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,iFAAiF;QACjF,iFAAiF;QACjF,kDAAkD;QAClD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iGAAiG,EAAE;YAClH,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,GAAG,2BAA2B,CAAC,KAAK,CAAC;SACtC,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;AACH,CAAC","sourcesContent":["import type { ResourceServerKind, RuntimeEnvironment } from '@wildo-ai/saas-models';\nimport type { RedisService } from '~wildo-backend-lib/databases/services/redis.service';\nimport type { LoggerService } from '~wildo-backend-lib/monitoring/logger/services/logger.service';\nimport type { SocketAuthResult } from '~wildo-backend-lib/runtime/models/execution-context.backend.schemas';\nimport { projectCaughtErrorLogFields } from '~wildo-backend-lib/errors/utils/error-log-level-classification.backend.utils';\nimport { relaxAbuseThrottleMaxForEnvironment } from '~wildo-backend-lib/errors/utils/rate-limit-environment-relaxation.backend.utils';\n\n/**\n * Per-PRINCIPAL success-path throttle for the external agent transports (A2A / MCP).\n *\n * ## Why this exists, and how it differs from the auth guard next door\n *\n * `machine-auth-rate-limit.backend.utils.ts` is a **failure-keyed** brute-force guard —\n * it only counts REJECTED secret/token presentations, keyed on the source IP, and it\n * deliberately does NOT throttle a valid token (a signature-gated token cannot be\n * guessed). That leaves a real exposure this util closes: an authenticated caller\n * holding ONE valid credential can drive UNBOUNDED work on the credentialed endpoints —\n * for A2A, unbounded LLM turns (direct spend + noisy-neighbor exhaustion of the app's\n * shared upstream model quota); for MCP, unbounded resource-operation dispatch (DB load).\n * There is no app-level global HTTP limiter on these routes, so the only cap is the one\n * added here.\n *\n * This guard is therefore the mirror image of the auth guard:\n * - **Success-keyed, per PRINCIPAL** — every ACCEPTED turn/call increments a counter keyed\n * on the authenticated principal (`userId` \\| `organizationId` \\| `applicationId`), never\n * on a caller/LLM-supplied value. Keying on the principal (not the IP) caps the actual\n * spend axis: the credential. (The FAILURE path already feeds a per-IP counter.)\n * - **Fixed window, increment-then-compare** — the Nth call's atomic `INCR` returns N; once\n * N exceeds the cap the caller is throttled for the remainder of the window. A throttled\n * attempt still consumed its `INCR`, which is intentional: a burst of rejected attempts\n * keeps the abuser saturated rather than clearing the window.\n * - **Fails OPEN on a limiter outage** — a Redis failure must never break the external\n * endpoint. This is an ABUSE-throttle, not a billing boundary; consistency with the\n * sibling auth limiter. (The future per-tenant SPEND budget is a billing boundary and\n * will fail CLOSED instead — do not copy this fail-open policy there.)\n *\n * ## Distinct caps per surface (semantic precision)\n *\n * A2A `message/send` runs an LLM agent turn; MCP `tools/call` dispatches a CRUD resource\n * operation — NOT an LLM call. Their abuse profiles differ (model spend vs DB load), so the\n * two surfaces carry distinct caps rather than one merged number. All caps are framework\n * defaults, tunable later (a per-tenant budget / app-config surface is the follow-on).\n */\n\n/** Max A2A agent turns (`message/send` + `message/stream`) per principal per window (LLM spend — tighter). */\nexport const A2A_EXTERNAL_TURN_RATE_MAX = 30;\n/** Rolling window (seconds) for the A2A per-principal turn cap. */\nexport const A2A_EXTERNAL_TURN_RATE_WINDOW_SECONDS = 60;\n\n/** Max MCP `tools/call` dispatches per principal per window (resource-op load — looser). */\nexport const MCP_EXTERNAL_CALL_RATE_MAX = 120;\n/** Rolling window (seconds) for the MCP per-principal call cap. */\nexport const MCP_EXTERNAL_CALL_RATE_WINDOW_SECONDS = 60;\n\n/**\n * Outcome of a per-principal throttle check. STRING discriminant (`kind`) because this\n * package compiles with `strictNullChecks` off, under which boolean-literal discriminated\n * unions do not narrow reliably (same rationale as the A2A/MCP transport result types).\n * Returned rather than thrown so the caller can emit a controlled transport response\n * (HTTP 429 + `Retry-After`) instead of routing a `RATE_LIMIT` error through the generic\n * async error handler.\n */\nexport type ExternalTurnRateDecision =\n | { kind: 'ok' }\n | { kind: 'rate_limited'; retryAfterSeconds: number };\n\n/**\n * Derive the stable throttle key for an authenticated principal from its server-verified\n * identity. A user-delegated principal carries a `userId`; a machine principal carries\n * exactly one of `organizationId` / `applicationId`. Returns `undefined` for an unkeyable\n * principal (defensive — auth already fails closed for a principal with no resolvable\n * owner id, so the caller treats `undefined` as \"cannot throttle → proceed\", fail-open).\n */\nexport function resolvePrincipalRateKey(auth: SocketAuthResult): string | undefined {\n const ids = auth.initiatorIds;\n if (!ids) return undefined;\n if (ids.userId) return `user:${ids.userId}`;\n if (ids.organizationId) return `org:${ids.organizationId}`;\n if (ids.applicationId) return `app:${ids.applicationId}`;\n return undefined;\n}\n\n/**\n * Increment and evaluate the per-principal counter for one external turn/call. Call this\n * AFTER authentication and BEFORE the expensive dispatch (LLM turn / resource op). Returns\n * `{ kind: 'rate_limited', retryAfterSeconds }` once the principal exceeds `maxPerWindow`\n * in the window, otherwise `{ kind: 'ok' }`. Fails OPEN (returns `ok`) on any Redis error.\n *\n * `params.applicationEnv` scales `maxPerWindow` in DEVELOPMENT/TEST through the shared\n * relaxation seam, so an e2e suite driving many A2A turns or MCP calls under one\n * provisioned principal is not throttled by a production-authored spend guard.\n * `STAGING`/`PRODUCTION` enforce the caller's number exactly.\n */\nexport async function assertExternalTurnWithinRate(\n deps: { redisService: RedisService; logger: LoggerService },\n params: {\n principalKey: string;\n resourceServer: ResourceServerKind;\n maxPerWindow: number;\n windowSeconds: number;\n applicationEnv: RuntimeEnvironment;\n },\n): Promise<ExternalTurnRateDecision> {\n const identifier = `external_turn:${params.resourceServer}:${params.principalKey}`;\n const effectiveMaxPerWindow = relaxAbuseThrottleMaxForEnvironment(params.maxPerWindow, params.applicationEnv);\n try {\n const count = await deps.redisService.incrementRateLimit(identifier, params.windowSeconds);\n if (count > effectiveMaxPerWindow) {\n // Prefer the live TTL for an accurate `Retry-After`; fall back to the full window.\n let retryAfterSeconds = params.windowSeconds;\n try {\n const ttl = await deps.redisService.getRateLimitTtl(identifier);\n if (ttl > 0) retryAfterSeconds = ttl;\n } catch {\n // Keep the window fallback — a TTL read failure must not upgrade this to a hard error.\n }\n return { kind: 'rate_limited', retryAfterSeconds };\n }\n return { kind: 'ok' };\n } catch (error) {\n // Fail OPEN: a limiter outage must never break the external endpoint. This is an\n // abuse-throttle, not a billing boundary — the per-tenant spend budget (a later,\n // separate concern) is the one that fails closed.\n deps.logger.warn('[external-turn-rate-limit] throttle check skipped (rate-limit store unavailable) — failing open', {\n resourceServer: params.resourceServer,\n ...projectCaughtErrorLogFields(error),\n });\n return { kind: 'ok' };\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"external-turn-rate-limit.backend.utils.js","sourceRoot":"","sources":["../../../../../../src/security/authentications/services/utils/external-turn-rate-limit.backend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ExecutionContext_InitiatorIds, ResourceServerKind, RuntimeEnvironment } from '@wildo-ai/saas-models';\nimport type { RedisService } from '~wildo-backend-lib/databases/services/redis.service';\nimport type { LoggerService } from '~wildo-backend-lib/monitoring/logger/services/logger.service';\nimport type { SocketAuthResult } from '~wildo-backend-lib/runtime/models/execution-context.backend.schemas';\nimport { projectCaughtErrorLogFields } from '~wildo-backend-lib/errors/utils/error-log-level-classification.backend.utils';\nimport { relaxAbuseThrottleMaxForEnvironment } from '~wildo-backend-lib/errors/utils/rate-limit-environment-relaxation.backend.utils';\n\n/**\n * Per-PRINCIPAL success-path throttle for the external agent transports (A2A / MCP).\n *\n * ## Why this exists, and how it differs from the auth guard next door\n *\n * `machine-auth-rate-limit.backend.utils.ts` is a **failure-keyed** brute-force guard —\n * it only counts REJECTED secret/token presentations, keyed on the source IP, and it\n * deliberately does NOT throttle a valid token (a signature-gated token cannot be\n * guessed). That leaves a real exposure this util closes: an authenticated caller\n * holding ONE valid credential can drive UNBOUNDED work on the credentialed endpoints —\n * for A2A, unbounded LLM turns (direct spend + noisy-neighbor exhaustion of the app's\n * shared upstream model quota); for MCP, unbounded resource-operation dispatch (DB load).\n * There is no app-level global HTTP limiter on these routes, so the only cap is the one\n * added here.\n *\n * This guard is therefore the mirror image of the auth guard:\n * - **Success-keyed, per PRINCIPAL** — every ACCEPTED turn/call increments a counter keyed\n * on the authenticated principal (`userId` \\| `organizationId` \\| `applicationId`), never\n * on a caller/LLM-supplied value. Keying on the principal (not the IP) caps the actual\n * spend axis: the credential. (The FAILURE path already feeds a per-IP counter.)\n * - **Fixed window, increment-then-compare** — the Nth call's atomic `INCR` returns N; once\n * N exceeds the cap the caller is throttled for the remainder of the window. A throttled\n * attempt still consumed its `INCR`, which is intentional: a burst of rejected attempts\n * keeps the abuser saturated rather than clearing the window.\n * - **Fails OPEN on a limiter outage** — a Redis failure must never break the external\n * endpoint. This is an ABUSE-throttle, not a billing boundary; consistency with the\n * sibling auth limiter. (The future per-tenant SPEND budget is a billing boundary and\n * will fail CLOSED instead — do not copy this fail-open policy there.)\n *\n * ## Distinct caps per surface (semantic precision)\n *\n * A2A `message/send` runs an LLM agent turn; MCP `tools/call` dispatches a CRUD resource\n * operation — NOT an LLM call. Their abuse profiles differ (model spend vs DB load), so the\n * two surfaces carry distinct caps rather than one merged number. All caps are framework\n * defaults, tunable later (a per-tenant budget / app-config surface is the follow-on).\n */\n\n/** Max A2A agent turns (`message/send` + `message/stream`) per principal per window (LLM spend — tighter). */\nexport const A2A_EXTERNAL_TURN_RATE_MAX = 30;\n/** Rolling window (seconds) for the A2A per-principal turn cap. */\nexport const A2A_EXTERNAL_TURN_RATE_WINDOW_SECONDS = 60;\n\n/** Max MCP `tools/call` dispatches per principal per window (resource-op load — looser). */\nexport const MCP_EXTERNAL_CALL_RATE_MAX = 120;\n/** Rolling window (seconds) for the MCP per-principal call cap. */\nexport const MCP_EXTERNAL_CALL_RATE_WINDOW_SECONDS = 60;\n\n/**\n * Outcome of a per-principal throttle check. STRING discriminant (`kind`) because this\n * package compiles with `strictNullChecks` off, under which boolean-literal discriminated\n * unions do not narrow reliably (same rationale as the A2A/MCP transport result types).\n * Returned rather than thrown so the caller can emit a controlled transport response\n * (HTTP 429 + `Retry-After`) instead of routing a `RATE_LIMIT` error through the generic\n * async error handler.\n */\nexport type ExternalTurnRateDecision =\n | { kind: 'ok' }\n | { kind: 'rate_limited'; retryAfterSeconds: number };\n\n/**\n * Derive the stable throttle key for an authenticated principal from its server-verified\n * identity. A user-delegated principal carries a `userId`; a machine principal carries\n * exactly one of `organizationId` / `applicationId`. Returns `undefined` for an unkeyable\n * principal (defensive — auth already fails closed for a principal with no resolvable\n * owner id, so the caller treats `undefined` as \"cannot throttle → proceed\", fail-open).\n */\nexport function resolvePrincipalRateKey(auth: SocketAuthResult): string | undefined {\n const ids = auth.initiatorIds;\n if (!ids) return undefined;\n if (ids.userId) return `user:${ids.userId}`;\n if (ids.organizationId) return `org:${ids.organizationId}`;\n if (ids.applicationId) return `app:${ids.applicationId}`;\n return undefined;\n}\n\n/**\n * Derive the counting subject for an operation's OWN declared `rateLimit` policy on a\n * credentialed agent plane (today: MCP `tools/call`). Sits beside\n * {@link resolvePrincipalRateKey} on purpose — the two answer the same question for two\n * different guards, and the ONE thing a reader must not have to reconstruct is why they\n * answer it differently.\n *\n * ## The precedence differs from {@link resolvePrincipalRateKey}, and that is the decision\n *\n * `resolvePrincipalRateKey` deliberately keys the framework's blanket abuse throttle on the\n * principal's OWNER (`user` → `org` → `app`). That is right for a spend guard: the thing being\n * protected is the tenant's shared upstream quota, so every credential the tenant issued should\n * saturate ONE bucket and a tenant cannot buy more headroom by minting more clients.\n *\n * An AUTHORED per-endpoint `rateLimit` is a different statement. Over HTTP it is enforced\n * per SOURCE IP — one caller, one budget — so `requestsPerMinute: 5` has never meant \"5/min\n * for the whole tenant\"; it means \"5/min per client, and N clients get N × 5\". The faithful\n * translation onto a plane whose callers are credentials rather than sockets is therefore the\n * CREDENTIAL: two agents an organization runs against the same tool are two clients, exactly as\n * two browsers on two IPs are. Keying this guard on the org instead would silently make the\n * SAME declared number roughly N times stricter over MCP than over REST for any tenant running\n * more than one agent — the \"throttles a whole tenant on one agent's traffic\" failure — and an\n * application author reading `requestsPerMinute: 5` has no way to discover that.\n *\n * Hence: credential first, then the delegated user, then the owning scope as a last resort.\n * The scope fallback is defensive only — an authenticated MCP caller is either a machine (which\n * always carries `machineCredential`) or user-delegated (which always carries `userId`).\n *\n * Every branch reads a SERVER-VERIFIED field of the execution context. Nothing here may ever be\n * sourced from tool arguments or any other model-supplied value, or the throttle becomes\n * opt-out by an attacker choosing a fresh bucket per call.\n *\n * @returns `undefined` when no identity field is present (see the call site for what that means\n * there — this function does not decide the posture, it only reports that it cannot key).\n */\nexport function resolveDeclaredPolicySubjectKey(initiatorIds: ExecutionContext_InitiatorIds | null | undefined): string | undefined {\n if (!initiatorIds) return undefined;\n const credential = initiatorIds.machineCredential;\n // The auth method rides the key because the two credential kinds are separate id spaces\n // (an ApiKey row id and an OAuthClient row id could collide) — never as a policy axis.\n if (credential?.credentialId) return `cred:${credential.authMethod}:${credential.credentialId}`;\n if (initiatorIds.userId) return `user:${initiatorIds.userId}`;\n if (initiatorIds.organizationId) return `org:${initiatorIds.organizationId}`;\n if (initiatorIds.applicationId) return `app:${initiatorIds.applicationId}`;\n return undefined;\n}\n\n/**\n * Increment and evaluate the per-principal counter for one external turn/call. Call this\n * AFTER authentication and BEFORE the expensive dispatch (LLM turn / resource op). Returns\n * `{ kind: 'rate_limited', retryAfterSeconds }` once the principal exceeds `maxPerWindow`\n * in the window, otherwise `{ kind: 'ok' }`. Fails OPEN (returns `ok`) on any Redis error.\n *\n * `params.applicationEnv` scales `maxPerWindow` in DEVELOPMENT/TEST through the shared\n * relaxation seam, so an e2e suite driving many A2A turns or MCP calls under one\n * provisioned principal is not throttled by a production-authored spend guard.\n * `STAGING`/`PRODUCTION` enforce the caller's number exactly.\n */\nexport async function assertExternalTurnWithinRate(\n deps: { redisService: RedisService; logger: LoggerService },\n params: {\n principalKey: string;\n resourceServer: ResourceServerKind;\n maxPerWindow: number;\n windowSeconds: number;\n applicationEnv: RuntimeEnvironment;\n },\n): Promise<ExternalTurnRateDecision> {\n const identifier = `external_turn:${params.resourceServer}:${params.principalKey}`;\n const effectiveMaxPerWindow = relaxAbuseThrottleMaxForEnvironment(params.maxPerWindow, params.applicationEnv);\n try {\n const count = await deps.redisService.incrementRateLimit(identifier, params.windowSeconds);\n if (count > effectiveMaxPerWindow) {\n // Prefer the live TTL for an accurate `Retry-After`; fall back to the full window.\n let retryAfterSeconds = params.windowSeconds;\n try {\n const ttl = await deps.redisService.getRateLimitTtl(identifier);\n if (ttl > 0) retryAfterSeconds = ttl;\n } catch {\n // Keep the window fallback — a TTL read failure must not upgrade this to a hard error.\n }\n return { kind: 'rate_limited', retryAfterSeconds };\n }\n return { kind: 'ok' };\n } catch (error) {\n // Fail OPEN: a limiter outage must never break the external endpoint. This is an\n // abuse-throttle, not a billing boundary — the per-tenant spend budget (a later,\n // separate concern) is the one that fails closed.\n deps.logger.warn('[external-turn-rate-limit] throttle check skipped (rate-limit store unavailable) — failing open', {\n resourceServer: params.resourceServer,\n ...projectCaughtErrorLogFields(error),\n });\n return { kind: 'ok' };\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"machine-auth-rate-limit.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"machine-auth-rate-limit.backend.utils.d.ts","sourceRoot":"","sources":["../../../../../../src/security/authentications/services/utils/machine-auth-rate-limit.backend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0C,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACxG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qDAAqD,CAAC;AACxF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kEAAkE,CAAC;AAGnH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAC;AAClG,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gFAAgF,CAAC;AAE9H;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,+FAA+F;AAC/F,eAAO,MAAM,mCAAmC,MAAM,CAAC;AAKvD;;;;;;;;;;GAUG;AACH,wBAAsB,kCAAkC,CACtD,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,0BAA0B,EACxC,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,kBAAkB,GACjC,OAAO,CAAC,IAAI,CAAC,CAsBf;AAED;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAC5C,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAQf;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,8BAA8B,CAClD,IAAI,EAAE;IAAE,YAAY,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,aAAa,CAAC;IAAC,SAAS,EAAE,IAAI,CAAC,uBAAuB,EAAE,sBAAsB,CAAC,CAAA;CAAE,EAC7H,MAAM,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACnE,OAAO,CAAC,IAAI,CAAC,CAUf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pkce.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"pkce.backend.utils.d.ts","sourceRoot":"","sources":["../../../../../../src/security/authentications/services/utils/pkce.backend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AASH,8GAA8G;AAC9G,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAExE;AAED,uGAAuG;AACvG,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAEvE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"saml-java-availability.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"saml-java-availability.d.ts","sourceRoot":"","sources":["../../../../../../src/security/authentications/services/utils/saml-java-availability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAyBH;;;;;GAKG;AACH,oBAAY,iCAAiC;IAC3C,4DAA4D;IAC5D,oBAAoB,yBAAyB;IAC7C,iFAAiF;IACjF,4BAA4B,iCAAiC;IAC7D,sFAAsF;IACtF,4BAA4B,iCAAiC;CAC9D;AAED,iEAAiE;AACjE,MAAM,WAAW,6BAA6B;IAC5C,yEAAyE;IACzE,SAAS,EAAE,OAAO,CAAC;IACnB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,iCAAiC,CAAC;IAC1C,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID;;;;;;;;GAQG;AACH,wBAAgB,oCAAoC,IAAI,MAAM,GAAG,IAAI,CAQpE;AAsDD;;;GAGG;AACH,wBAAgB,kCAAkC,IAAI,6BAA6B,CAMlF;AAED;;;;GAIG;AACH,wBAAgB,oCAAoC,CAAC,MAAM,EAAE,6BAA6B,GAAG,MAAM,CAWlG;AAED,0EAA0E;AAC1E,wBAAgB,uCAAuC,IAAI,IAAI,CAE9D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAO3C"}
|
package/dist/esm/security/authentications/utils/application-auth-policy-audit.backend.utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application-auth-policy-audit.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"application-auth-policy-audit.backend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/security/authentications/utils/application-auth-policy-audit.backend.utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,6BAA6B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE5F;;;;;;;;;GASG;AAEH;;;;GAIG;AACH,MAAM,MAAM,gCAAgC,GAAG,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAC;AAE7F;;;;;;;;;;GAUG;AACH,wBAAgB,kCAAkC,CAAC,SAAS,EAAE,eAAe,GAAG,gCAAgC,CAS/G;AAuBD;;;;;;GAMG;AACH,wBAAgB,0CAA0C,CAAC,QAAQ,EAAE,gCAAgC,GAAG,MAAM,CAE7G;AAED;;;;;GAKG;AACH,wBAAgB,yCAAyC,CACvD,MAAM,EAAE,gCAAgC,GAAG,IAAI,EAC/C,KAAK,EAAE,gCAAgC,GACtC,MAAM,EAAE,CAgBV"}
|
package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.d.ts
CHANGED
|
@@ -3,9 +3,50 @@ interface EnterpriseSsoEnforcementLike {
|
|
|
3
3
|
requireSSO?: boolean | undefined;
|
|
4
4
|
allowPasswordFallback?: boolean | undefined;
|
|
5
5
|
}
|
|
6
|
+
/** The break-glass half of a tenant's SSO policy, taken structurally so a partial config fits. */
|
|
7
|
+
export interface EmergencyAccessLike {
|
|
8
|
+
enabled?: boolean | undefined;
|
|
9
|
+
breakGlassAccounts?: readonly string[] | undefined;
|
|
10
|
+
}
|
|
6
11
|
interface DomainOrgLookupLike {
|
|
7
12
|
enforcement?: EnterpriseSsoEnforcementLike | undefined;
|
|
13
|
+
ssoConfig?: {
|
|
14
|
+
emergencyAccess?: EmergencyAccessLike | undefined;
|
|
15
|
+
} | undefined;
|
|
8
16
|
}
|
|
17
|
+
/**
|
|
18
|
+
* Does this tenant have break-glass accounts that could actually be used?
|
|
19
|
+
*
|
|
20
|
+
* `enabled` alone grants nothing: the LIST is what confers the bypass, so an empty list with the
|
|
21
|
+
* switch on is the same as no break-glass at all. Written as one predicate because both the offered
|
|
22
|
+
* methods and the enforcement gate must agree about it — if they disagree, either the accounts
|
|
23
|
+
* cannot reach a password field or everyone else can.
|
|
24
|
+
*/
|
|
25
|
+
export declare function tenantHasUsableBreakGlassAccounts(domainOrgLookup?: DomainOrgLookupLike | null | undefined): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Is this address one of the tenant's named break-glass accounts?
|
|
28
|
+
*
|
|
29
|
+
* Compared case-insensitively on the address, because that is how the operator authored it and how
|
|
30
|
+
* the caller typed it. The CALLER's claim is never the input — every call site passes the address of
|
|
31
|
+
* a user whose credential has already been verified.
|
|
32
|
+
*/
|
|
33
|
+
export declare function isBreakGlassAccount(emergencyAccess: EmergencyAccessLike | undefined | null, email: string | undefined | null): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Must this tenant's sign-in page offer ONLY enterprise methods?
|
|
36
|
+
*
|
|
37
|
+
* ## Why break-glass answers this for the whole tenant rather than per account
|
|
38
|
+
*
|
|
39
|
+
* A tenant with named break-glass accounts keeps its password field — for EVERY address at the
|
|
40
|
+
* domain, not for the listed ones. This is the enumeration-safety decision (#481/#423): the offered
|
|
41
|
+
* method list is built before anything is authenticated, from an email hint, so narrowing it for
|
|
42
|
+
* the listed accounts would make the sign-in page an oracle for who they are. A break-glass list is
|
|
43
|
+
* a small, high-value target; publishing its membership to anyone who can type an address is worse
|
|
44
|
+
* than the outage it protects against.
|
|
45
|
+
*
|
|
46
|
+
* What refuses everyone else is the enforcement gate, AFTER the password is verified. So the cost
|
|
47
|
+
* of this is a password field that only the listed accounts can use, and the benefit is that
|
|
48
|
+
* nothing about the response says which those are.
|
|
49
|
+
*/
|
|
9
50
|
export declare function requiresEnterpriseSsoOnly(domainOrgLookup?: DomainOrgLookupLike | null | undefined): boolean;
|
|
10
51
|
export declare function restrictFirstFactorMethodsForEnterpriseSso(methods: ReadonlyArray<AvailableMethod>, domainOrgLookup?: DomainOrgLookupLike | null | undefined): AvailableMethod[];
|
|
11
52
|
export {};
|
package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enterprise-sso-enforcement.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"enterprise-sso-enforcement.backend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/security/authentications/utils/enterprise-sso-enforcement.backend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEzE,UAAU,4BAA4B;IACpC,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC7C;AAED,kGAAkG;AAClG,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CACpD;AAED,UAAU,mBAAmB;IAC3B,WAAW,CAAC,EAAE,4BAA4B,GAAG,SAAS,CAAC;IACvD,SAAS,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAA;KAAE,GAAG,SAAS,CAAC;CAC/E;AAED;;;;;;;GAOG;AACH,wBAAgB,iCAAiC,CAC/C,eAAe,CAAC,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,GACvD,OAAO,CAIT;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,eAAe,EAAE,mBAAmB,GAAG,SAAS,GAAG,IAAI,EACvD,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAC/B,OAAO,CAMT;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,yBAAyB,CACvC,eAAe,CAAC,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,GACvD,OAAO,CAMT;AAED,wBAAgB,0CAA0C,CACxD,OAAO,EAAE,aAAa,CAAC,eAAe,CAAC,EACvC,eAAe,CAAC,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,GACvD,eAAe,EAAE,CAUnB"}
|
|
@@ -1,5 +1,50 @@
|
|
|
1
1
|
import { AuthMethod } from '@wildo-ai/saas-models';
|
|
2
|
+
/**
|
|
3
|
+
* Does this tenant have break-glass accounts that could actually be used?
|
|
4
|
+
*
|
|
5
|
+
* `enabled` alone grants nothing: the LIST is what confers the bypass, so an empty list with the
|
|
6
|
+
* switch on is the same as no break-glass at all. Written as one predicate because both the offered
|
|
7
|
+
* methods and the enforcement gate must agree about it — if they disagree, either the accounts
|
|
8
|
+
* cannot reach a password field or everyone else can.
|
|
9
|
+
*/
|
|
10
|
+
export function tenantHasUsableBreakGlassAccounts(domainOrgLookup) {
|
|
11
|
+
const emergencyAccess = domainOrgLookup?.ssoConfig?.emergencyAccess;
|
|
12
|
+
return emergencyAccess?.enabled === true
|
|
13
|
+
&& (emergencyAccess.breakGlassAccounts?.length ?? 0) > 0;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Is this address one of the tenant's named break-glass accounts?
|
|
17
|
+
*
|
|
18
|
+
* Compared case-insensitively on the address, because that is how the operator authored it and how
|
|
19
|
+
* the caller typed it. The CALLER's claim is never the input — every call site passes the address of
|
|
20
|
+
* a user whose credential has already been verified.
|
|
21
|
+
*/
|
|
22
|
+
export function isBreakGlassAccount(emergencyAccess, email) {
|
|
23
|
+
if (emergencyAccess?.enabled !== true || !email)
|
|
24
|
+
return false;
|
|
25
|
+
const normalized = email.trim().toLowerCase();
|
|
26
|
+
return (emergencyAccess.breakGlassAccounts ?? []).some((account) => account.trim().toLowerCase() === normalized);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Must this tenant's sign-in page offer ONLY enterprise methods?
|
|
30
|
+
*
|
|
31
|
+
* ## Why break-glass answers this for the whole tenant rather than per account
|
|
32
|
+
*
|
|
33
|
+
* A tenant with named break-glass accounts keeps its password field — for EVERY address at the
|
|
34
|
+
* domain, not for the listed ones. This is the enumeration-safety decision (#481/#423): the offered
|
|
35
|
+
* method list is built before anything is authenticated, from an email hint, so narrowing it for
|
|
36
|
+
* the listed accounts would make the sign-in page an oracle for who they are. A break-glass list is
|
|
37
|
+
* a small, high-value target; publishing its membership to anyone who can type an address is worse
|
|
38
|
+
* than the outage it protects against.
|
|
39
|
+
*
|
|
40
|
+
* What refuses everyone else is the enforcement gate, AFTER the password is verified. So the cost
|
|
41
|
+
* of this is a password field that only the listed accounts can use, and the benefit is that
|
|
42
|
+
* nothing about the response says which those are.
|
|
43
|
+
*/
|
|
2
44
|
export function requiresEnterpriseSsoOnly(domainOrgLookup) {
|
|
45
|
+
if (tenantHasUsableBreakGlassAccounts(domainOrgLookup)) {
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
3
48
|
return domainOrgLookup?.enforcement?.requireSSO === true
|
|
4
49
|
&& domainOrgLookup.enforcement.allowPasswordFallback !== true;
|
|
5
50
|
}
|
package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enterprise-sso-enforcement.backend.utils.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"enterprise-sso-enforcement.backend.utils.js","sourceRoot":"","sources":["../../../../../src/security/authentications/utils/enterprise-sso-enforcement.backend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAwB,MAAM,uBAAuB,CAAC;AAkBzE;;;;;;;GAOG;AACH,MAAM,UAAU,iCAAiC,CAC/C,eAAwD;IAExD,MAAM,eAAe,GAAG,eAAe,EAAE,SAAS,EAAE,eAAe,CAAC;IACpE,OAAO,eAAe,EAAE,OAAO,KAAK,IAAI;WACnC,CAAC,eAAe,CAAC,kBAAkB,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CACjC,eAAuD,EACvD,KAAgC;IAEhC,IAAI,eAAe,EAAE,OAAO,KAAK,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,OAAO,CAAC,eAAe,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC,IAAI,CACpD,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,UAAU,CACzD,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,yBAAyB,CACvC,eAAwD;IAExD,IAAI,iCAAiC,CAAC,eAAe,CAAC,EAAE,CAAC;QACvD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,eAAe,EAAE,WAAW,EAAE,UAAU,KAAK,IAAI;WACnD,eAAe,CAAC,WAAW,CAAC,qBAAqB,KAAK,IAAI,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,0CAA0C,CACxD,OAAuC,EACvC,eAAwD;IAExD,IAAI,CAAC,yBAAyB,CAAC,eAAe,CAAC,EAAE,CAAC;QAChD,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;IACtB,CAAC;IAED,OAAO,OAAO,CAAC,MAAM,CACnB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,kBAAkB;WAC5C,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,QAAQ,CAC3C,CAAC;AACJ,CAAC","sourcesContent":["import { AuthMethod, type AvailableMethod } from '@wildo-ai/saas-models';\n\ninterface EnterpriseSsoEnforcementLike {\n requireSSO?: boolean | undefined;\n allowPasswordFallback?: boolean | undefined;\n}\n\n/** The break-glass half of a tenant's SSO policy, taken structurally so a partial config fits. */\nexport interface EmergencyAccessLike {\n enabled?: boolean | undefined;\n breakGlassAccounts?: readonly string[] | undefined;\n}\n\ninterface DomainOrgLookupLike {\n enforcement?: EnterpriseSsoEnforcementLike | undefined;\n ssoConfig?: { emergencyAccess?: EmergencyAccessLike | undefined } | undefined;\n}\n\n/**\n * Does this tenant have break-glass accounts that could actually be used?\n *\n * `enabled` alone grants nothing: the LIST is what confers the bypass, so an empty list with the\n * switch on is the same as no break-glass at all. Written as one predicate because both the offered\n * methods and the enforcement gate must agree about it — if they disagree, either the accounts\n * cannot reach a password field or everyone else can.\n */\nexport function tenantHasUsableBreakGlassAccounts(\n domainOrgLookup?: DomainOrgLookupLike | null | undefined,\n): boolean {\n const emergencyAccess = domainOrgLookup?.ssoConfig?.emergencyAccess;\n return emergencyAccess?.enabled === true\n && (emergencyAccess.breakGlassAccounts?.length ?? 0) > 0;\n}\n\n/**\n * Is this address one of the tenant's named break-glass accounts?\n *\n * Compared case-insensitively on the address, because that is how the operator authored it and how\n * the caller typed it. The CALLER's claim is never the input — every call site passes the address of\n * a user whose credential has already been verified.\n */\nexport function isBreakGlassAccount(\n emergencyAccess: EmergencyAccessLike | undefined | null,\n email: string | undefined | null,\n): boolean {\n if (emergencyAccess?.enabled !== true || !email) return false;\n const normalized = email.trim().toLowerCase();\n return (emergencyAccess.breakGlassAccounts ?? []).some(\n (account) => account.trim().toLowerCase() === normalized,\n );\n}\n\n/**\n * Must this tenant's sign-in page offer ONLY enterprise methods?\n *\n * ## Why break-glass answers this for the whole tenant rather than per account\n *\n * A tenant with named break-glass accounts keeps its password field — for EVERY address at the\n * domain, not for the listed ones. This is the enumeration-safety decision (#481/#423): the offered\n * method list is built before anything is authenticated, from an email hint, so narrowing it for\n * the listed accounts would make the sign-in page an oracle for who they are. A break-glass list is\n * a small, high-value target; publishing its membership to anyone who can type an address is worse\n * than the outage it protects against.\n *\n * What refuses everyone else is the enforcement gate, AFTER the password is verified. So the cost\n * of this is a password field that only the listed accounts can use, and the benefit is that\n * nothing about the response says which those are.\n */\nexport function requiresEnterpriseSsoOnly(\n domainOrgLookup?: DomainOrgLookupLike | null | undefined,\n): boolean {\n if (tenantHasUsableBreakGlassAccounts(domainOrgLookup)) {\n return false;\n }\n return domainOrgLookup?.enforcement?.requireSSO === true\n && domainOrgLookup.enforcement.allowPasswordFallback !== true;\n}\n\nexport function restrictFirstFactorMethodsForEnterpriseSso(\n methods: ReadonlyArray<AvailableMethod>,\n domainOrgLookup?: DomainOrgLookupLike | null | undefined,\n): AvailableMethod[] {\n if (!requiresEnterpriseSsoOnly(domainOrgLookup)) {\n return [...methods];\n }\n\n return methods.filter(\n (method) =>\n method.method === AuthMethod.ORG_OPENID_CONNECT\n || method.method === AuthMethod.ORG_SAML,\n );\n}\n"]}
|
package/dist/esm/security/authentications/utils/one-off-session-lifetime.backend.utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"one-off-session-lifetime.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"one-off-session-lifetime.backend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/security/authentications/utils/one-off-session-lifetime.backend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE;IAAE,SAAS,EAAE,IAAI,CAAC;IAAC,SAAS,EAAE,IAAI,CAAA;CAAE,EAC3C,GAAG,EAAE,IAAI,EACT,cAAc,EAAE,MAAM,GACrB,IAAI,CAKN"}
|
package/dist/esm/security/authentications/utils/social-oauth2-purpose.backend.utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"social-oauth2-purpose.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"social-oauth2-purpose.backend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/security/authentications/utils/social-oauth2-purpose.backend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAEtE,UAAU,8BAA8B;IACtC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,OAAO,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;CACtC;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,cAAc,GAAG,SAAS,GAClC,OAAO,CAIT;AAED,wBAAgB,kCAAkC,CAChD,cAAc,EAAE,8BAA8B,GAAG,IAAI,GAAG,SAAS,GAChE,OAAO,CAGT"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The decision verbs of an access grant — `approve` / `deny` / `revoke` / `expire` — for BOTH grant
|
|
3
|
+
* resources.
|
|
4
|
+
*
|
|
5
|
+
* assurance-control: WILDO.ACCESS.PRIVILEGE_EVIDENCE — a grant's status may only move through a verb
|
|
6
|
+
* that checks the transition and records it.
|
|
7
|
+
*
|
|
8
|
+
* ## What is shared and what is not
|
|
9
|
+
*
|
|
10
|
+
* Shared: refuse unless the current status permits the transition, write exactly the fields that
|
|
11
|
+
* transition owns, and record it after commit. That is identical for a tenant elevation and an
|
|
12
|
+
* application-wide one, because it is a property of the LIFECYCLE, and the two lifecycles are the
|
|
13
|
+
* same lifecycle.
|
|
14
|
+
*
|
|
15
|
+
* NOT shared, and passed in: `additionalPrecondition`. The application-wide `approve` refuses a
|
|
16
|
+
* SELF-approval — the two-person rule — and nothing equivalent exists on the tenant resource, where
|
|
17
|
+
* the requester is a platform operator and the approver is a tenant administrator, so they cannot be
|
|
18
|
+
* the same person by construction.
|
|
19
|
+
*
|
|
20
|
+
* ## Why the guard is here at all when `enabledCondition` already exists
|
|
21
|
+
*
|
|
22
|
+
* `enabledCondition` on the operation config is evaluated against the row the framework fetched and
|
|
23
|
+
* is a UI-and-dispatch concern. This is the fail-closed half: a custom implementation is addressed by
|
|
24
|
+
* an exact operation path and inherits nothing, so a future variant authored without an
|
|
25
|
+
* `enabledCondition` would otherwise transition a terminal grant — or approve a self-request —
|
|
26
|
+
* silently. Neither guard alone is the control; both are, and each has its own pin.
|
|
27
|
+
*/
|
|
28
|
+
import { CoreResourceType, PlatformAccessGrantLifecycleTransition, PlatformAccessGrantScope, PlatformAccessGrantStatus, ResourceOperationVariantType } from '@wildo-ai/saas-models';
|
|
29
|
+
import type { ResourceCustomServiceImplementationFactory } from '../../base-classes/services/services/resource-operation-custom-implementation.factory.backend';
|
|
30
|
+
/**
|
|
31
|
+
* A refusal a specific verb owns, evaluated after the status precondition and before the write.
|
|
32
|
+
*
|
|
33
|
+
* Returns the `reason` token to refuse with, or `undefined` to permit. A token rather than a boolean
|
|
34
|
+
* because the refusal reaches a client as a `CONFLICT` context and a reviewer as a log line, and
|
|
35
|
+
* `false` cannot say which rule fired.
|
|
36
|
+
*/
|
|
37
|
+
export type AccessGrantDecisionPrecondition = (params: {
|
|
38
|
+
readonly currentObject: Record<string, unknown> | undefined;
|
|
39
|
+
readonly deciderUserId: string | undefined;
|
|
40
|
+
}) => string | undefined;
|
|
41
|
+
export declare function createAccessGrantDecisionFactory(resourceIdentifier: CoreResourceType, grantScope: PlatformAccessGrantScope, operationIdentifier: string, options: {
|
|
42
|
+
debugLabel: string;
|
|
43
|
+
nextStatus: PlatformAccessGrantStatus;
|
|
44
|
+
permittedFrom: readonly PlatformAccessGrantStatus[];
|
|
45
|
+
stampsApprover: boolean;
|
|
46
|
+
auditTransition: PlatformAccessGrantLifecycleTransition;
|
|
47
|
+
/** The token a status-precondition failure refuses with — each resource names its own. */
|
|
48
|
+
transitionRefusalReason: string;
|
|
49
|
+
/** The verb-specific refusal, when the verb has one. See {@link AccessGrantDecisionPrecondition}. */
|
|
50
|
+
additionalPrecondition?: AccessGrantDecisionPrecondition;
|
|
51
|
+
/**
|
|
52
|
+
* Defaults to API_CALL — every operator-facing decision. EXPIRE is INTERNAL_CALL, and the lookup
|
|
53
|
+
* key is built from the RUNNING operation's variant type, so a mismatch here does not fail
|
|
54
|
+
* loudly: the implementation is simply never found and the core UPDATE runs with no transition
|
|
55
|
+
* guard and no audit row.
|
|
56
|
+
*/
|
|
57
|
+
variantType?: ResourceOperationVariantType;
|
|
58
|
+
}): ResourceCustomServiceImplementationFactory;
|
|
59
|
+
//# sourceMappingURL=access-grant-decision.factory.backend.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"access-grant-decision.factory.backend.d.ts","sourceRoot":"","sources":["../../../../src/security/authorizations/access-grant-decision.factory.backend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAGH,OAAO,EACL,gBAAgB,EAGhB,sCAAsC,EACtC,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC7B,MAAM,uBAAuB,CAAC;AAI/B,OAAO,KAAK,EAAE,0CAA0C,EAAE,MAAM,4GAA4G,CAAC;AAG7K;;;;;;GAMG;AACH,MAAM,MAAM,+BAA+B,GAAG,CAAC,MAAM,EAAE;IACrD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC5D,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5C,KAAK,MAAM,GAAG,SAAS,CAAC;AAEzB,wBAAgB,gCAAgC,CAC9C,kBAAkB,EAAE,gBAAgB,EACpC,UAAU,EAAE,wBAAwB,EAGpC,mBAAmB,EAAE,MAAM,EAC3B,OAAO,EAAE;IACP,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,yBAAyB,CAAC;IACtC,aAAa,EAAE,SAAS,yBAAyB,EAAE,CAAC;IACpD,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,sCAAsC,CAAC;IACxD,0FAA0F;IAC1F,uBAAuB,EAAE,MAAM,CAAC;IAChC,qGAAqG;IACrG,sBAAsB,CAAC,EAAE,+BAA+B,CAAC;IACzD;;;;;OAKG;IACH,WAAW,CAAC,EAAE,4BAA4B,CAAC;CAC5C,GACA,0CAA0C,CAgF5C"}
|