@wildo-ai/saas-backend-lib 1.1.3 → 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.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.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.map +1 -1
- package/dist/esm/base-classes/services/batches/child-lifecycle-teardown.batch.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.js +12 -1
- package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.js.map +1 -1
- 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.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.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.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.js +13 -4
- 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.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.js +17 -0
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.js.map +1 -1
- 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.map +1 -1
- 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.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 +57 -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 +95 -2
- 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.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 +14 -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.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.map +1 -1
- 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.map +1 -1
- 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 +44 -6
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.js.map +1 -1
- package/dist/esm/billing/batches/usage-flush.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/batches/usage-flush.batch.backend.service.js.map +1 -1
- package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.d.ts.map +1 -1
- package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.js.map +1 -1
- 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 +1 -1
- package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.js +5 -4
- package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/billing/services/billing-adapter-registry.backend.js.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.d.ts +32 -0
- 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 +32 -1
- 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.map +1 -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.map +1 -1
- 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.map +1 -1
- package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.d.ts +9 -6
- 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 +9 -6
- 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.map +1 -1
- package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.js +50 -3
- 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.map +1 -1
- 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.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.map +1 -1
- 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 +107 -4
- 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 +176 -5
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.js.map +1 -1
- 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 +21 -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.map +1 -1
- 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 +4 -4
- package/dist/esm/config/models/app-config.backend.schemas.d.ts.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/config/services/app-configuration-loader.backend.service.js +3 -0
- 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.map +1 -1
- package/dist/esm/config/services/app-configuration.backend.utils.d.ts.map +1 -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 +12 -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 +28 -0
- 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.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.map +1 -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.map +1 -1
- package/dist/esm/errors/services/error-handler.backend.service.js.map +1 -1
- package/dist/esm/errors/services/rate-limit.backend.service.d.ts.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.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 +102 -52
- package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.d.ts.map +1 -1
- package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.js +117 -71
- package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.js.map +1 -1
- package/dist/esm/external-providers/operations/provider-operation-request.backend.d.ts.map +1 -1
- package/dist/esm/external-providers/operations/provider-operation-request.backend.js.map +1 -1
- package/dist/esm/external-providers/operations/provider-request-signing.backend.d.ts.map +1 -1
- package/dist/esm/external-providers/operations/provider-request-signing.backend.js +26 -7
- package/dist/esm/external-providers/operations/provider-request-signing.backend.js.map +1 -1
- package/dist/esm/external-providers/operations/provider-rest-call-client.backend.d.ts.map +1 -1
- package/dist/esm/external-providers/operations/provider-rest-call-client.backend.js.map +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.map +1 -1
- package/dist/esm/external-providers/services/backend-provider-loader.backend.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/backend-provider-loader.backend.service.js.map +1 -1
- 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.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 +179 -98
- 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.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 +121 -0
- 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 +151 -0
- 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 +60 -4
- 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.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 +221 -21
- 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.map +1 -1
- package/dist/esm/files/services/file-scanning.backend.service.js +5 -0
- 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.map +1 -1
- package/dist/esm/files/services/file-text-extraction.backend.service.js +8 -5
- 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.map +1 -1
- package/dist/esm/files/services/file-upload-grant.backend.service.js.map +1 -1
- package/dist/esm/files/services/files.backend.service.d.ts.map +1 -1
- package/dist/esm/files/services/files.backend.service.js +3 -1
- 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.map +1 -1
- package/dist/esm/files/storage/application-storage-key.backend.utils.js.map +1 -1
- 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 +36 -1
- 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.map +1 -1
- 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.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.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.map +1 -1
- package/dist/esm/files/utils/office-document-text-extraction.backend.utils.js.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- 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.map +1 -1
- 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.map +1 -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.map +1 -1
- 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.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.map +1 -1
- 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.map +1 -1
- 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.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 +107 -16
- 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 +118 -18
- 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.map +1 -1
- package/dist/esm/flows-actors/models/mcp-client.backend.definitions.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/mcp-client.backend.definitions.js.map +1 -1
- 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.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 +104 -5
- package/dist/esm/flows-actors/services/agents.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/agents.backend.service.js +263 -31
- 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 +46 -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 +193 -6
- 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.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/flows-actors/services/mcp-client.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/mcp-client.backend.service.js +3 -0
- package/dist/esm/flows-actors/services/mcp-client.backend.service.js.map +1 -1
- 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.map +1 -1
- 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 +9 -0
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/guidance/services/progression-state-store.backend.service.js.map +1 -1
- 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.map +1 -1
- 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 +0 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +0 -1
- 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 +49 -1
- package/dist/esm/inject/models/container.js.map +1 -1
- package/dist/esm/inject/models/service-types.d.ts +3 -0
- package/dist/esm/inject/models/service-types.d.ts.map +1 -1
- package/dist/esm/inject/models/service-types.js +3 -0
- 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 +50 -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.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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 +12 -0
- package/dist/esm/monitoring/logger/services/logger.service.d.ts.map +1 -1
- package/dist/esm/monitoring/logger/services/logger.service.js +3 -3
- 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.map +1 -1
- package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.js.map +1 -1
- 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 +10 -6
- package/dist/esm/monitoring/observability/audit-observation-emission.backend.d.ts.map +1 -1
- package/dist/esm/monitoring/observability/audit-observation-emission.backend.js +10 -6
- package/dist/esm/monitoring/observability/audit-observation-emission.backend.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/notifications/email/services/email.backend.service.d.ts +47 -6
- package/dist/esm/notifications/email/services/email.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/email/services/email.backend.service.js +86 -36
- package/dist/esm/notifications/email/services/email.backend.service.js.map +1 -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.map +1 -1
- package/dist/esm/notifications/services/notification-badge.backend.service.js.map +1 -1
- package/dist/esm/notifications/services/notifications-dispatcher.backend.service.d.ts.map +1 -1
- 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.map +1 -1
- 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.map +1 -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.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.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.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.js.map +1 -1
- package/dist/esm/queue/adapters/queue-adapter.backend.binding.d.ts.map +1 -1
- package/dist/esm/queue/adapters/queue-adapter.backend.binding.js.map +1 -1
- package/dist/esm/queue/adapters/queue-adapter.backend.interface.d.ts.map +1 -1
- package/dist/esm/queue/adapters/queue-adapter.backend.interface.js.map +1 -1
- package/dist/esm/queue/adapters/queue-adapter.backend.options.d.ts.map +1 -1
- package/dist/esm/queue/adapters/queue-adapter.backend.options.js.map +1 -1
- package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.d.ts.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/queue/job-consumer.backend.service.js.map +1 -1
- package/dist/esm/queue/job-executor.backend.service.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/esm/queue/queue-monitoring.backend.service.js.map +1 -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.map +1 -1
- package/dist/esm/queue/queue.backend.service.d.ts.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/requests/service/websocket.service.js +49 -1
- 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 +2 -0
- 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.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.map +1 -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.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 +23 -0
- package/dist/esm/resources/services/resources-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/resources/services/resources-registry.backend.service.js +31 -0
- 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.map +1 -1
- package/dist/esm/runtime/controllers/health-controller.backend.service.js.map +1 -1
- package/dist/esm/runtime/domain-module.backend.definitions.d.ts.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/runtime/services/http-server.backend.service.js +10 -0
- package/dist/esm/runtime/services/http-server.backend.service.js.map +1 -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 +26 -12
- 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.map +1 -1
- 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.map +1 -1
- 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 +84 -0
- 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.map +1 -1
- 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.map +1 -1
- 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 +15 -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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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 +9 -2
- 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 +9 -2
- 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.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.map +1 -1
- 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 +218 -26
- 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 +36 -0
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.js +57 -1
- package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.js.map +1 -1
- 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.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.map +1 -1
- 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.map +1 -1
- 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.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.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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.js.map +1 -1
- 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.map +1 -1
- 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 +20 -181
- 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.map +1 -1
- package/dist/esm/security/authorizations/role-ceiling.backend.utils.js.map +1 -1
- package/dist/esm/security/authorizations/role-conferral.backend.utils.d.ts +40 -0
- package/dist/esm/security/authorizations/role-conferral.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authorizations/role-conferral.backend.utils.js +43 -1
- package/dist/esm/security/authorizations/role-conferral.backend.utils.js.map +1 -1
- package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.d.ts +27 -17
- 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 +27 -17
- 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 +72 -0
- package/dist/esm/security/authorizations/services/authorizations.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authorizations/services/authorizations.backend.service.js +153 -10
- 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.map +1 -1
- 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.map +1 -1
- package/dist/esm/security/connected-accounts/connection-target-authorization.backend.js.map +1 -1
- package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.d.ts +139 -1
- package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.js +474 -33
- package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.js.map +1 -1
- package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.d.ts +40 -0
- package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.js.map +1 -1
- package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.js.map +1 -1
- package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.d.ts +19 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.js +38 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.js.map +1 -1
- package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.js +17 -1
- package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.js.map +1 -1
- package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.d.ts +14 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.js +16 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.js.map +1 -1
- package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.js +1 -1
- package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.js.map +1 -1
- package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.d.ts +19 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.js +45 -2
- package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.js.map +1 -1
- package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.d.ts +37 -1
- package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.js.map +1 -1
- package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.js.map +1 -1
- package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- 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.map +1 -1
- package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.js.map +1 -1
- 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.map +1 -1
- package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.js.map +1 -1
- 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 +9 -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 -0
- package/dist/esm/notifications/email/models/email-context-provider.interface.d.ts.map +0 -0
- package/dist/esm/notifications/email/models/email-context-provider.interface.js +0 -0
- package/dist/esm/notifications/email/models/email-context-provider.interface.js.map +0 -0
- package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.d.ts +0 -0
- package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.d.ts.map +0 -0
- package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.js +0 -0
- package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.js.map +0 -0
- package/dist/esm/notifications/email/services/email-template-compiler.backend.service.d.ts +0 -0
- package/dist/esm/notifications/email/services/email-template-compiler.backend.service.d.ts.map +0 -0
- package/dist/esm/notifications/email/services/email-template-compiler.backend.service.js +0 -0
- package/dist/esm/notifications/email/services/email-template-compiler.backend.service.js.map +0 -0
- package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.d.ts +0 -0
- package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.d.ts.map +0 -0
- package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.js +0 -0
- package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.js.map +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rag-chunking.backend.utils.js","sourceRoot":"","sources":["../../../../../src/rag/utils/rag-chunking.backend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAGH,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAI/D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAE1C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AA4C5C;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iCAAiC,CAAC,MAA8B;IAC9E,MAAM,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,IAAI,mBAAmB,CAAC,UAAU,CAAC;IACpF,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,sBAAsB,CAAC;IAC7D,MAAM,iBAAiB,GAAG,MAAM,CAAC,YAAY,IAAI,yBAAyB,CAAC;IAC3E,OAAO;QACL,eAAe,EAAE,iBAAiB;QAClC,SAAS;QACT,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,SAAS,GAAG,CAAC,CAAC;KACzD,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,uBAAuB,GAA0D;IACrF,kGAAkG;IAClG,CAAC,mBAAmB,CAAC,UAAU,CAAC,EAAE,IAAI;IACtC,6EAA6E;IAC7E,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC;IAC1D;;;OAGG;IACH,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC;IACjI;;;;OAIG;IACH,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC;CAC9G,CAAC;AAEF;;;;;;;GAOG;AACH,SAAS,6BAA6B,CAAC,IAAY,EAAE,UAA6B,EAAE,SAAiB;IACnG,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,SAAS,EAAE,GAAG,SAAS,CAAC,GAAG,UAAU,CAAC;IAC7C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B;;;;;;;;;;WAUG;QACH,OAAO,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,uFAAuF;QACvF,OAAO,6BAA6B,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACnE,CAAC;IAED,sFAAsF;IACtF,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,KAAK,EAAE,CAAC,CAAC;SAC3F,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAErC,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAC7B,KAAK,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,6BAA6B,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,CAAC,CACjG,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,qBAAqB,CAAC,MAAyB,EAAE,SAAiB,EAAE,YAAoB;IAC/F,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,OAAO,GAAG,EAAE,CAAC;IAEjB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;YACpE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACrB,OAAO,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,CAAC;QACD,OAAO,IAAI,KAAK,CAAC;QACjB,+FAA+F;QAC/F,oDAAoD;QACpD,OAAO,OAAO,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;YAClC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;YACzC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3E,IAAI,YAAY,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM;QACxD,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QACvE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAOD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,kBAAkB,CAChC,IAAY,EACZ,MAA8B,EAC9B,MAA0B;IAE1B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,iCAAiC,CAAC,MAAM,CAAC,CAAC;IAE/F,MAAM,UAAU,GAAG,uBAAuB,CAAC,eAAe,CAAC,CAAC;IAC5D,IAAI,UAAU,EAAE,CAAC;QACf;;;;;;;WAOG;QACH,OAAO,qBAAqB,CAC1B,6BAA6B,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,CAAC,EAC1D,SAAS,EACT,YAAY,CACb;aACE,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;aAChD,GAAG,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,MAAM,GAAoB,EAAE,CAAC;IACnC,MAAM,MAAM,GAAG,SAAS,GAAG,YAAY,CAAC;IACxC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,UAAU,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,MAAM,EAAE,UAAU,IAAI,CAAC,EAAE,CAAC;QAC1F,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1D,IAAI,GAAG,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACxB,MAAM,CAAC,4EAA4E;QACrF,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["/**\n * RAG chunking — the PURE text → chunk-set function (plan §3.c, Phase 3-A).\n *\n * One deterministic function: the same `(text, config)` always yields the same chunk set, byte for\n * byte. Determinism is load-bearing, not a nicety — the write hook and the backstop sweep both\n * derive chunks from the same committed source text, and `computeRagContentHash` identifies a chunk\n * set by its SOURCE. If two derivations of one source could differ, a hash-equal skip (the hook's\n * no-op-write optimisation) would silently preserve chunks that a re-run would have replaced.\n *\n * ## Strategy coverage — four of five; `SEMANTIC` alone still falls back\n *\n * `FIXED_SIZE`, `RECURSIVE`, `MARKDOWN` and `CODE` are implemented (#434). The last three share one\n * recursive engine and differ only in their SEPARATOR HIERARCHY, which is the honest shape: what\n * makes markdown chunking markdown-aware is knowing that a heading is a bigger boundary than a\n * paragraph, not a different algorithm.\n *\n * `SEMANTIC` is NOT implemented, and cannot be here. The vocabulary defines it as *\"split at\n * embedding-detected topic boundaries\"* — which requires an embeddings provider, an async call, and\n * a model whose output this module would then have to treat as stable. This function is pure,\n * synchronous and DETERMINISTIC BY CONTRACT (see above): a hash-equal skip preserves an existing\n * chunk set precisely because a re-derivation cannot differ. Implementing \"semantic\" as\n * sentence-grouping would satisfy the enum member's NAME while delivering whitespace heuristics,\n * which is the class of defect that put this on the tracker in the first place. Giving it a real\n * implementation means changing this module's contract — async, provider-aware, and with a defined\n * answer for how a chunk set stays reproducible across model versions — and that is a decision, not\n * a splitter.\n *\n * There is no unimplemented-member fallback any more, because there is no unimplemented member. This\n * file used to degrade `SEMANTIC` to fixed-size with a debug log, so a schema DECORATION could not\n * brick every write to a field the decorator had already validated. #434 removed that member on\n * 2026-09-09 rather than implementing it — the vocabulary's own JSDoc carries the measurements — and\n * the fallback went with it, since a runtime door nothing can open is an untested claim rather than\n * defence in depth.\n *\n * A sixth strategy therefore arrives as a COMPILE ERROR in {@link RAG_CHUNKING_SEPARATORS}, which is\n * total over the vocabulary. That is a better door than the one it replaces: the old one made an\n * unimplemented strategy SILENT, and silence here means a corpus chunked one way while the schema\n * claims another.\n */\n\nimport type { RagSourceConfiguration } from '@wildo-ai/zod-decorators';\nimport { RAGChunkingStrategy } from '@wildo-ai/zod-decorators';\n\nimport type { RagChunkWrite } from '~wildo-backend-lib/rag/models/rag-chunk-store.backend.types';\n\n/**\n * Default chunk size, in CHARACTERS of source text per chunk.\n *\n * 512 keeps a chunk comfortably inside every embedding provider's token window while staying large\n * enough to carry a self-contained statement — the conventional retrieval trade-off. Overridden\n * per-field via `.ragSource({ chunkSize })`.\n */\nexport const RAG_DEFAULT_CHUNK_SIZE = 512;\n\n/**\n * Default overlap, in characters carried from the end of one chunk into the start of the next.\n *\n * ~10% of the default size: enough that a sentence split across a boundary is wholly present in at\n * least one chunk, small enough that storage/embedding cost stays near 1× the source length.\n * Overridden per-field via `.ragSource({ chunkOverlap })`.\n */\nexport const RAG_DEFAULT_CHUNK_OVERLAP = 50;\n\n/**\n * EVERY member of {@link RAGChunkingStrategy} is implemented, and that is now enforced by the\n * COMPILER rather than by a runtime set.\n *\n * Until 2026-09-09 this file exported `RAG_IMPLEMENTED_CHUNKING_STRATEGIES` and degraded any member\n * outside it to `FIXED_SIZE`, so an unimplemented strategy could not brick a committed write. That\n * door had exactly one subject, `SEMANTIC`, and #434 removed the member rather than building it (see\n * the vocabulary's own JSDoc for the measurements). With no subject left, the set and the degradation\n * are gone: a runtime fallback nothing can reach is not defence in depth, it is an untested claim.\n *\n * What replaces it is stronger. {@link RAG_CHUNKING_SEPARATORS} is a TOTAL `Record` over the\n * vocabulary, so a sixth member cannot be added without deciding its separators — a compile error\n * instead of a silent degradation nobody would observe until a corpus came back fixed-size-chunked.\n * `null` is the deliberate entry for `FIXED_SIZE`, which splits by size and has no separators; it\n * reads as a decision rather than as an omission.\n */\n\n/**\n * The chunking parameters that will ACTUALLY be applied to a field's text — authored values with the\n * framework defaults filled in and the defensive overlap clamp applied.\n *\n * One resolution, two consumers: {@link chunkRagSourceText} derives chunks from it, and\n * `computeRagChunkingConfigHash` identifies a chunk set's DERIVATION by it. They cannot disagree,\n * which is what makes the sweep's config-mismatch decision exact rather than approximate — a hash\n * over the authored object would report a change for `{}` versus `{ chunkSize: 512 }` (identical\n * derivations) and re-chunk the whole corpus on every run, forever.\n */\nexport interface RagEffectiveChunkingConfig {\n /**\n * The strategy the chunker will execute.\n *\n * Kept named `appliedStrategy` rather than `strategy` even though it now always equals the\n * authored one: its VALUE is the first element of the `chunkingConfigHash` tuple, and the name\n * records that this is the resolved end of a resolution — the place a future divergence would\n * appear, if the vocabulary ever grows a member whose execution differs from its authoring.\n */\n appliedStrategy: RAGChunkingStrategy;\n chunkSize: number;\n /** Post-clamp: always `< chunkSize`, so the chunking stride is always positive. */\n chunkOverlap: number;\n}\n\n/**\n * Resolve one field's authored `.ragSource()` config into the parameters the chunker will apply.\n *\n * Pure and total — every authored shape resolves, nothing throws. Config values arrive already\n * validated by the decorator chokepoint (`chunkSize` positive int, `chunkOverlap` non-negative int\n * `< chunkSize` when both present); the clamp below covers the one mixed case the decorator cannot\n * see (an authored overlap meeting the DEFAULT size, e.g. `.ragSource({ chunkOverlap: 600 })`).\n *\n * The clamp is INSIDE the resolution rather than beside it on purpose: `{ chunkOverlap: 600 }` and\n * `{ chunkOverlap: 511 }` produce byte-identical chunks under the default size, so they must produce\n * an identical config hash. Clamping after hashing would make two spellings of one derivation look\n * like a configuration change to the sweep.\n */\nexport function resolveEffectiveRagChunkingConfig(config: RagSourceConfiguration): RagEffectiveChunkingConfig {\n const requestedStrategy = config.chunkingStrategy ?? RAGChunkingStrategy.FIXED_SIZE;\n const chunkSize = config.chunkSize ?? RAG_DEFAULT_CHUNK_SIZE;\n const configuredOverlap = config.chunkOverlap ?? RAG_DEFAULT_CHUNK_OVERLAP;\n return {\n appliedStrategy: requestedStrategy,\n chunkSize,\n chunkOverlap: Math.min(configuredOverlap, chunkSize - 1),\n };\n}\n\n/**\n * The separator hierarchy each structure-aware strategy walks, WIDEST BOUNDARY FIRST (#434).\n *\n * This table is the entire difference between the three structure-aware strategies — they share one\n * recursive engine. That is the honest shape: what makes markdown chunking markdown-aware is knowing\n * that a heading is a bigger boundary than a paragraph, not a different algorithm.\n *\n * A separator is retained at the START of the piece that follows it, so concatenating a strategy's\n * chunks (minus overlap) reproduces the source exactly. Losslessness is not decoration here: a chunk\n * is what retrieval shows a user, and a splitter that silently ate the newlines between paragraphs\n * would return text nobody wrote.\n *\n * TERMINATION does not come from a separator. A piece longer than `chunkSize` with no separator in\n * it — a minified bundle, a base64 blob, CJK prose with no spaces — exhausts the list, and the\n * exhausted case HARD-SPLITS at the character boundary. An earlier revision of this table also\n * carried a trailing `''` entry described as the terminator; it was dead code, because reaching the\n * end of the list already does exactly that. Mutation testing found it: deleting the `''` changed\n * no behaviour and reddened no pin.\n */\nconst RAG_CHUNKING_SEPARATORS: Record<RAGChunkingStrategy, readonly string[] | null> = {\n /** No separators: `FIXED_SIZE` splits at `chunkSize` regardless of structure. Not an omission. */\n [RAGChunkingStrategy.FIXED_SIZE]: null,\n /** Prose: paragraph, then line, then sentence, then word, then character. */\n [RAGChunkingStrategy.RECURSIVE]: ['\\n\\n', '\\n', '. ', ' '],\n /**\n * Markdown: heading levels outermost (h1 is a bigger boundary than h6), then the fence that must\n * not be split mid-block, then ordinary prose separators.\n */\n [RAGChunkingStrategy.MARKDOWN]: ['\\n# ', '\\n## ', '\\n### ', '\\n#### ', '\\n##### ', '\\n###### ', '\\n```', '\\n\\n', '\\n', '. ', ' '],\n /**\n * Source code: declaration boundaries first, because a chunk that starts mid-function is the one\n * retrieval cannot use. `\\n\\n` sits below them — a blank line inside a function body is a weaker\n * boundary than the function itself.\n */\n [RAGChunkingStrategy.CODE]: ['\\nclass ', '\\nfunction ', '\\nexport ', '\\nconst ', '\\ndef ', '\\n\\n', '\\n', ' '],\n};\n\n/**\n * Split `text` into pieces no larger than `chunkSize`, preferring the widest separator that works.\n *\n * Recursion is on the SEPARATOR LIST, not on the text: a piece still too large after splitting on\n * one separator is re-split with the remaining, narrower ones. Every piece it returns is either\n * `<= chunkSize` or an atom the last separator could not divide — and since the last separator is\n * `''`, that second case cannot arise, which is what makes this total.\n */\nfunction splitTextBySeparatorHierarchy(text: string, separators: readonly string[], chunkSize: number): string[] {\n if (text.length <= chunkSize) {\n return text.length > 0 ? [text] : [];\n }\n\n const [separator, ...remaining] = separators;\n if (separator === undefined) {\n /*\n * Separators exhausted: this text has no boundary any strategy recognises — a minified bundle,\n * a base64 blob, CJK prose with no spaces. Return it WHOLE and oversized.\n *\n * Boundedness is owned by `mergePiecesIntoChunks`, which hard-splits anything still larger than\n * `chunkSize`. An earlier revision also hard-split here, and mutation testing showed the two\n * were redundant — removing either left every pin green, which is the signal that one invariant\n * had two mechanisms and no test could say which was load-bearing. The merge keeps it because it\n * must handle the case anyway: an overlap that eats the budget can grow a chunk past the size\n * from pieces that were each within it.\n */\n return [text];\n }\n\n const rawPieces = text.split(separator);\n if (rawPieces.length === 1) {\n // This separator does not occur — try the next narrower one without emitting anything.\n return splitTextBySeparatorHierarchy(text, remaining, chunkSize);\n }\n\n // Re-attach the separator to the piece that FOLLOWS it, so concatenation is lossless.\n const pieces = rawPieces.map((piece, index) => (index === 0 ? piece : `${separator}${piece}`))\n .filter(piece => piece.length > 0);\n\n return pieces.flatMap(piece => (\n piece.length <= chunkSize ? [piece] : splitTextBySeparatorHierarchy(piece, remaining, chunkSize)\n ));\n}\n\n/**\n * Merge bounded pieces into chunks that fill `chunkSize`, carrying `chunkOverlap` characters across\n * each boundary.\n *\n * Overlap is taken from the TAIL of the emitted chunk rather than by replaying whole pieces, so it\n * is exactly `chunkOverlap` characters wherever the text allows — the same quantity the fixed-size\n * arm carries, which is what lets the two arms share a `chunkOverlap` contract at all.\n */\nfunction mergePiecesIntoChunks(pieces: readonly string[], chunkSize: number, chunkOverlap: number): string[] {\n const chunks: string[] = [];\n let current = '';\n\n for (const piece of pieces) {\n if (current.length > 0 && current.length + piece.length > chunkSize) {\n chunks.push(current);\n current = chunkOverlap > 0 ? current.slice(-chunkOverlap) : '';\n }\n current += piece;\n // A single piece can still exceed the size when overlap ate the budget; emit and restart clean\n // rather than letting `current` grow without bound.\n while (current.length > chunkSize) {\n chunks.push(current.slice(0, chunkSize));\n current = current.slice(chunkSize - (chunkOverlap > 0 ? chunkOverlap : 0));\n if (chunkOverlap === 0 && current.length === 0) break;\n }\n }\n\n if (current.trim().length > 0 && chunks[chunks.length - 1] !== current) {\n chunks.push(current);\n }\n return chunks;\n}\n\n/** The logger slice the chunker accepts — DEBUG only (the fallback notice; nothing here can fail). */\nexport interface RagChunkingLogger {\n debug(message: string, context?: Record<string, unknown>): void;\n}\n\n/**\n * Split one RAG-source field's text into its chunk set.\n *\n * - Empty / whitespace-only text yields ZERO chunks — an empty corpus is expressed as the absence\n * of chunk rows, not as one empty row (the store's replace verb turns zero chunks into a bare\n * delete of the previous set).\n * - `chunkIndex` is the 0-based position, dense and gap-free — the row-key contract\n * (`assembleRagChunkRows` refuses duplicates, and retrieval assembles neighbours by index).\n * - The final chunk is never a pure suffix of the previous one: iteration stops the moment a chunk\n * reaches the end of the text, so an overlap window never manufactures a redundant tail chunk.\n *\n * Every parameter comes from {@link resolveEffectiveRagChunkingConfig} — the SAME resolution the\n * stored `chunkingConfigHash` is computed over. Reading `config.chunkSize ?? DEFAULT` inline here\n * instead would re-derive the parameters a second time and let the two drift, at which point the\n * sweep's \"did the derivation change?\" question would be answered about a config this function does\n * not use.\n */\nexport function chunkRagSourceText(\n text: string,\n config: RagSourceConfiguration,\n logger?: RagChunkingLogger,\n): RagChunkWrite[] {\n if (text.trim().length === 0) {\n return [];\n }\n\n const { appliedStrategy, chunkSize, chunkOverlap } = resolveEffectiveRagChunkingConfig(config);\n\n const separators = RAG_CHUNKING_SEPARATORS[appliedStrategy];\n if (separators) {\n /*\n * The structure-aware arm (#434). Two stages, deliberately separate: find the boundaries the\n * strategy cares about, THEN fill chunks to size across them. Splitting and sizing in one pass\n * is what produces a splitter that respects headings but emits 40-character chunks.\n *\n * `.filter` on the trimmed text keeps the empty-corpus contract: a run of separators must not\n * manufacture whitespace-only chunk rows, which would then be embedded and retrieved.\n */\n return mergePiecesIntoChunks(\n splitTextBySeparatorHierarchy(text, separators, chunkSize),\n chunkSize,\n chunkOverlap,\n )\n .filter(chunkText => chunkText.trim().length > 0)\n .map((chunkText, chunkIndex) => ({ chunkIndex, text: chunkText }));\n }\n\n const chunks: RagChunkWrite[] = [];\n const stride = chunkSize - chunkOverlap;\n for (let start = 0, chunkIndex = 0; start < text.length; start += stride, chunkIndex += 1) {\n const end = Math.min(start + chunkSize, text.length);\n chunks.push({ chunkIndex, text: text.slice(start, end) });\n if (end === text.length) {\n break; // Reached the end — a further window would only repeat this chunk's suffix.\n }\n }\n return chunks;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"rag-chunking.backend.utils.js","sourceRoot":"","sources":["../../../../src/rag/utils/rag-chunking.backend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * RAG chunking — the PURE text → chunk-set function (plan §3.c, Phase 3-A).\n *\n * One deterministic function: the same `(text, config)` always yields the same chunk set, byte for\n * byte. Determinism is load-bearing, not a nicety — the write hook and the backstop sweep both\n * derive chunks from the same committed source text, and `computeRagContentHash` identifies a chunk\n * set by its SOURCE. If two derivations of one source could differ, a hash-equal skip (the hook's\n * no-op-write optimisation) would silently preserve chunks that a re-run would have replaced.\n *\n * ## Strategy coverage — four of five; `SEMANTIC` alone still falls back\n *\n * `FIXED_SIZE`, `RECURSIVE`, `MARKDOWN` and `CODE` are implemented (#434). The last three share one\n * recursive engine and differ only in their SEPARATOR HIERARCHY, which is the honest shape: what\n * makes markdown chunking markdown-aware is knowing that a heading is a bigger boundary than a\n * paragraph, not a different algorithm.\n *\n * `SEMANTIC` is NOT implemented, and cannot be here. The vocabulary defines it as *\"split at\n * embedding-detected topic boundaries\"* — which requires an embeddings provider, an async call, and\n * a model whose output this module would then have to treat as stable. This function is pure,\n * synchronous and DETERMINISTIC BY CONTRACT (see above): a hash-equal skip preserves an existing\n * chunk set precisely because a re-derivation cannot differ. Implementing \"semantic\" as\n * sentence-grouping would satisfy the enum member's NAME while delivering whitespace heuristics,\n * which is the class of defect that put this on the tracker in the first place. Giving it a real\n * implementation means changing this module's contract — async, provider-aware, and with a defined\n * answer for how a chunk set stays reproducible across model versions — and that is a decision, not\n * a splitter.\n *\n * There is no unimplemented-member fallback any more, because there is no unimplemented member. This\n * file used to degrade `SEMANTIC` to fixed-size with a debug log, so a schema DECORATION could not\n * brick every write to a field the decorator had already validated. #434 removed that member on\n * 2026-09-09 rather than implementing it — the vocabulary's own JSDoc carries the measurements — and\n * the fallback went with it, since a runtime door nothing can open is an untested claim rather than\n * defence in depth.\n *\n * A sixth strategy therefore arrives as a COMPILE ERROR in {@link RAG_CHUNKING_SEPARATORS}, which is\n * total over the vocabulary. That is a better door than the one it replaces: the old one made an\n * unimplemented strategy SILENT, and silence here means a corpus chunked one way while the schema\n * claims another.\n */\n\nimport type { RagSourceConfiguration } from '@wildo-ai/zod-decorators';\nimport { RAGChunkingStrategy } from '@wildo-ai/zod-decorators';\n\nimport type { RagChunkWrite } from '~wildo-backend-lib/rag/models/rag-chunk-store.backend.types';\n\n/**\n * Default chunk size, in CHARACTERS of source text per chunk.\n *\n * 512 keeps a chunk comfortably inside every embedding provider's token window while staying large\n * enough to carry a self-contained statement — the conventional retrieval trade-off. Overridden\n * per-field via `.ragSource({ chunkSize })`.\n */\nexport const RAG_DEFAULT_CHUNK_SIZE = 512;\n\n/**\n * Default overlap, in characters carried from the end of one chunk into the start of the next.\n *\n * ~10% of the default size: enough that a sentence split across a boundary is wholly present in at\n * least one chunk, small enough that storage/embedding cost stays near 1× the source length.\n * Overridden per-field via `.ragSource({ chunkOverlap })`.\n */\nexport const RAG_DEFAULT_CHUNK_OVERLAP = 50;\n\n/**\n * EVERY member of {@link RAGChunkingStrategy} is implemented, and that is now enforced by the\n * COMPILER rather than by a runtime set.\n *\n * Until 2026-09-09 this file exported `RAG_IMPLEMENTED_CHUNKING_STRATEGIES` and degraded any member\n * outside it to `FIXED_SIZE`, so an unimplemented strategy could not brick a committed write. That\n * door had exactly one subject, `SEMANTIC`, and #434 removed the member rather than building it (see\n * the vocabulary's own JSDoc for the measurements). With no subject left, the set and the degradation\n * are gone: a runtime fallback nothing can reach is not defence in depth, it is an untested claim.\n *\n * What replaces it is stronger. {@link RAG_CHUNKING_SEPARATORS} is a TOTAL `Record` over the\n * vocabulary, so a sixth member cannot be added without deciding its separators — a compile error\n * instead of a silent degradation nobody would observe until a corpus came back fixed-size-chunked.\n * `null` is the deliberate entry for `FIXED_SIZE`, which splits by size and has no separators; it\n * reads as a decision rather than as an omission.\n */\n\n/**\n * The chunking parameters that will ACTUALLY be applied to a field's text — authored values with the\n * framework defaults filled in and the defensive overlap clamp applied.\n *\n * One resolution, two consumers: {@link chunkRagSourceText} derives chunks from it, and\n * `computeRagChunkingConfigHash` identifies a chunk set's DERIVATION by it. They cannot disagree,\n * which is what makes the sweep's config-mismatch decision exact rather than approximate — a hash\n * over the authored object would report a change for `{}` versus `{ chunkSize: 512 }` (identical\n * derivations) and re-chunk the whole corpus on every run, forever.\n */\nexport interface RagEffectiveChunkingConfig {\n /**\n * The strategy the chunker will execute.\n *\n * Kept named `appliedStrategy` rather than `strategy` even though it now always equals the\n * authored one: its VALUE is the first element of the `chunkingConfigHash` tuple, and the name\n * records that this is the resolved end of a resolution — the place a future divergence would\n * appear, if the vocabulary ever grows a member whose execution differs from its authoring.\n */\n appliedStrategy: RAGChunkingStrategy;\n chunkSize: number;\n /** Post-clamp: always `< chunkSize`, so the chunking stride is always positive. */\n chunkOverlap: number;\n}\n\n/**\n * Resolve one field's authored `.ragSource()` config into the parameters the chunker will apply.\n *\n * Pure and total — every authored shape resolves, nothing throws. Config values arrive already\n * validated by the decorator chokepoint (`chunkSize` positive int, `chunkOverlap` non-negative int\n * `< chunkSize` when both present); the clamp below covers the one mixed case the decorator cannot\n * see (an authored overlap meeting the DEFAULT size, e.g. `.ragSource({ chunkOverlap: 600 })`).\n *\n * The clamp is INSIDE the resolution rather than beside it on purpose: `{ chunkOverlap: 600 }` and\n * `{ chunkOverlap: 511 }` produce byte-identical chunks under the default size, so they must produce\n * an identical config hash. Clamping after hashing would make two spellings of one derivation look\n * like a configuration change to the sweep.\n */\nexport function resolveEffectiveRagChunkingConfig(config: RagSourceConfiguration): RagEffectiveChunkingConfig {\n const requestedStrategy = config.chunkingStrategy ?? RAGChunkingStrategy.FIXED_SIZE;\n const chunkSize = config.chunkSize ?? RAG_DEFAULT_CHUNK_SIZE;\n const configuredOverlap = config.chunkOverlap ?? RAG_DEFAULT_CHUNK_OVERLAP;\n return {\n appliedStrategy: requestedStrategy,\n chunkSize,\n chunkOverlap: Math.min(configuredOverlap, chunkSize - 1),\n };\n}\n\n/**\n * The separator hierarchy each structure-aware strategy walks, WIDEST BOUNDARY FIRST (#434).\n *\n * This table is the entire difference between the three structure-aware strategies — they share one\n * recursive engine. That is the honest shape: what makes markdown chunking markdown-aware is knowing\n * that a heading is a bigger boundary than a paragraph, not a different algorithm.\n *\n * A separator is retained at the START of the piece that follows it, so concatenating a strategy's\n * chunks (minus overlap) reproduces the source exactly. Losslessness is not decoration here: a chunk\n * is what retrieval shows a user, and a splitter that silently ate the newlines between paragraphs\n * would return text nobody wrote.\n *\n * TERMINATION does not come from a separator. A piece longer than `chunkSize` with no separator in\n * it — a minified bundle, a base64 blob, CJK prose with no spaces — exhausts the list, and the\n * exhausted case HARD-SPLITS at the character boundary. An earlier revision of this table also\n * carried a trailing `''` entry described as the terminator; it was dead code, because reaching the\n * end of the list already does exactly that. Mutation testing found it: deleting the `''` changed\n * no behaviour and reddened no pin.\n */\nconst RAG_CHUNKING_SEPARATORS: Record<RAGChunkingStrategy, readonly string[] | null> = {\n /** No separators: `FIXED_SIZE` splits at `chunkSize` regardless of structure. Not an omission. */\n [RAGChunkingStrategy.FIXED_SIZE]: null,\n /** Prose: paragraph, then line, then sentence, then word, then character. */\n [RAGChunkingStrategy.RECURSIVE]: ['\\n\\n', '\\n', '. ', ' '],\n /**\n * Markdown: heading levels outermost (h1 is a bigger boundary than h6), then the fence that must\n * not be split mid-block, then ordinary prose separators.\n */\n [RAGChunkingStrategy.MARKDOWN]: ['\\n# ', '\\n## ', '\\n### ', '\\n#### ', '\\n##### ', '\\n###### ', '\\n```', '\\n\\n', '\\n', '. ', ' '],\n /**\n * Source code: declaration boundaries first, because a chunk that starts mid-function is the one\n * retrieval cannot use. `\\n\\n` sits below them — a blank line inside a function body is a weaker\n * boundary than the function itself.\n */\n [RAGChunkingStrategy.CODE]: ['\\nclass ', '\\nfunction ', '\\nexport ', '\\nconst ', '\\ndef ', '\\n\\n', '\\n', ' '],\n};\n\n/**\n * Split `text` into pieces no larger than `chunkSize`, preferring the widest separator that works.\n *\n * Recursion is on the SEPARATOR LIST, not on the text: a piece still too large after splitting on\n * one separator is re-split with the remaining, narrower ones. Every piece it returns is either\n * `<= chunkSize` or an atom the last separator could not divide — and since the last separator is\n * `''`, that second case cannot arise, which is what makes this total.\n */\nfunction splitTextBySeparatorHierarchy(text: string, separators: readonly string[], chunkSize: number): string[] {\n if (text.length <= chunkSize) {\n return text.length > 0 ? [text] : [];\n }\n\n const [separator, ...remaining] = separators;\n if (separator === undefined) {\n /*\n * Separators exhausted: this text has no boundary any strategy recognises — a minified bundle,\n * a base64 blob, CJK prose with no spaces. Return it WHOLE and oversized.\n *\n * Boundedness is owned by `mergePiecesIntoChunks`, which hard-splits anything still larger than\n * `chunkSize`. An earlier revision also hard-split here, and mutation testing showed the two\n * were redundant — removing either left every pin green, which is the signal that one invariant\n * had two mechanisms and no test could say which was load-bearing. The merge keeps it because it\n * must handle the case anyway: an overlap that eats the budget can grow a chunk past the size\n * from pieces that were each within it.\n */\n return [text];\n }\n\n const rawPieces = text.split(separator);\n if (rawPieces.length === 1) {\n // This separator does not occur — try the next narrower one without emitting anything.\n return splitTextBySeparatorHierarchy(text, remaining, chunkSize);\n }\n\n // Re-attach the separator to the piece that FOLLOWS it, so concatenation is lossless.\n const pieces = rawPieces.map((piece, index) => (index === 0 ? piece : `${separator}${piece}`))\n .filter(piece => piece.length > 0);\n\n return pieces.flatMap(piece => (\n piece.length <= chunkSize ? [piece] : splitTextBySeparatorHierarchy(piece, remaining, chunkSize)\n ));\n}\n\n/**\n * Merge bounded pieces into chunks that fill `chunkSize`, carrying `chunkOverlap` characters across\n * each boundary.\n *\n * Overlap is taken from the TAIL of the emitted chunk rather than by replaying whole pieces, so it\n * is exactly `chunkOverlap` characters wherever the text allows — the same quantity the fixed-size\n * arm carries, which is what lets the two arms share a `chunkOverlap` contract at all.\n */\nfunction mergePiecesIntoChunks(pieces: readonly string[], chunkSize: number, chunkOverlap: number): string[] {\n const chunks: string[] = [];\n let current = '';\n\n for (const piece of pieces) {\n if (current.length > 0 && current.length + piece.length > chunkSize) {\n chunks.push(current);\n current = chunkOverlap > 0 ? current.slice(-chunkOverlap) : '';\n }\n current += piece;\n // A single piece can still exceed the size when overlap ate the budget; emit and restart clean\n // rather than letting `current` grow without bound.\n while (current.length > chunkSize) {\n chunks.push(current.slice(0, chunkSize));\n current = current.slice(chunkSize - (chunkOverlap > 0 ? chunkOverlap : 0));\n if (chunkOverlap === 0 && current.length === 0) break;\n }\n }\n\n if (current.trim().length > 0 && chunks[chunks.length - 1] !== current) {\n chunks.push(current);\n }\n return chunks;\n}\n\n/** The logger slice the chunker accepts — DEBUG only (the fallback notice; nothing here can fail). */\nexport interface RagChunkingLogger {\n debug(message: string, context?: Record<string, unknown>): void;\n}\n\n/**\n * Split one RAG-source field's text into its chunk set.\n *\n * - Empty / whitespace-only text yields ZERO chunks — an empty corpus is expressed as the absence\n * of chunk rows, not as one empty row (the store's replace verb turns zero chunks into a bare\n * delete of the previous set).\n * - `chunkIndex` is the 0-based position, dense and gap-free — the row-key contract\n * (`assembleRagChunkRows` refuses duplicates, and retrieval assembles neighbours by index).\n * - The final chunk is never a pure suffix of the previous one: iteration stops the moment a chunk\n * reaches the end of the text, so an overlap window never manufactures a redundant tail chunk.\n *\n * Every parameter comes from {@link resolveEffectiveRagChunkingConfig} — the SAME resolution the\n * stored `chunkingConfigHash` is computed over. Reading `config.chunkSize ?? DEFAULT` inline here\n * instead would re-derive the parameters a second time and let the two drift, at which point the\n * sweep's \"did the derivation change?\" question would be answered about a config this function does\n * not use.\n */\nexport function chunkRagSourceText(\n text: string,\n config: RagSourceConfiguration,\n logger?: RagChunkingLogger,\n): RagChunkWrite[] {\n if (text.trim().length === 0) {\n return [];\n }\n\n const { appliedStrategy, chunkSize, chunkOverlap } = resolveEffectiveRagChunkingConfig(config);\n\n const separators = RAG_CHUNKING_SEPARATORS[appliedStrategy];\n if (separators) {\n /*\n * The structure-aware arm (#434). Two stages, deliberately separate: find the boundaries the\n * strategy cares about, THEN fill chunks to size across them. Splitting and sizing in one pass\n * is what produces a splitter that respects headings but emits 40-character chunks.\n *\n * `.filter` on the trimmed text keeps the empty-corpus contract: a run of separators must not\n * manufacture whitespace-only chunk rows, which would then be embedded and retrieved.\n */\n return mergePiecesIntoChunks(\n splitTextBySeparatorHierarchy(text, separators, chunkSize),\n chunkSize,\n chunkOverlap,\n )\n .filter(chunkText => chunkText.trim().length > 0)\n .map((chunkText, chunkIndex) => ({ chunkIndex, text: chunkText }));\n }\n\n const chunks: RagChunkWrite[] = [];\n const stride = chunkSize - chunkOverlap;\n for (let start = 0, chunkIndex = 0; start < text.length; start += stride, chunkIndex += 1) {\n const end = Math.min(start + chunkSize, text.length);\n chunks.push({ chunkIndex, text: text.slice(start, end) });\n if (end === text.length) {\n break; // Reached the end — a further window would only repeat this chunk's suffix.\n }\n }\n return chunks;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rag-context-assembly.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"rag-context-assembly.backend.utils.d.ts","sourceRoot":"","sources":["../../../../src/rag/utils/rag-context-assembly.backend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAEH,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAkB/B;;;;;;;;GAQG;AACH,eAAO,MAAM,2BAA2B,EAAE,WAAW,CAAC,MAAM,CAG1D,CAAC;AAEH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,4BAA4B,CAAC,YAAY,EAAE,YAAY,GAAG,MAAM,GAAG,MAAM,CAOxF;AAqCD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,YAAY,EAAE,YAAY,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7B,+FAA+F;IAC/F,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,GAAG,MAAM,CA8BT;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,MAAM,CAET;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,SAAS;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC/D,GAAG,MAAM,CAcT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rag-context-assembly.backend.utils.js","sourceRoot":"","sources":["../../../../../src/rag/utils/rag-context-assembly.backend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Assembling retrieved chunks into USABLE context — schema-derived chunk headers and row grouping\n * (plan D6, Phase 5-B).\n *\n * ## Why a raw chunk is not an answer\n *\n * A chunk is a window into one field of one row, and the chunker cuts it wherever the size bound\n * falls. Handed to a model on its own it reads as an anonymous paragraph: *\"…renewal was deferred\n * pending the security review.\"* Deferred for whom? Which contract? The literature's fix is the\n * \"contextual chunk header\" — a short preamble naming what the chunk belongs to, prepended to the\n * chunk text so the retriever and the model both see it.\n *\n * The usual way to produce one is to ask an LLM to summarise the document per chunk. **This does it\n * FROM THE SCHEMA instead**, and that is the whole point of RAG being a resource-system capability:\n * the framework already knows the resource's name, which of its fields SUMMARISE a row\n * (`.isSummaryField()`), and which field the chunk came from. That is free, deterministic, exact,\n * costs no tokens, and cannot hallucinate — three properties an LLM-written header does not have.\n *\n * ## What a header deliberately does NOT contain\n *\n * A header is prose a model reads, and every identifier in it is both noise to the model and a value\n * that leaves the tenant boundary when the assembled context is sent to a provider. So:\n *\n * - **summary fields are the source**, because they are exactly the fields an application DECLARED\n * as the human-readable face of a row. `ResourcesSummaryUtils.getSummaryFieldNames` is used\n * rather than a hand-rolled shape walk BECAUSE it applies the framework's field-value disclosure\n * rule (`isNonDisclosableFieldValue`) — the same rule the response DTO and the subject export\n * enforce — so a field the application declared as a summary field is still withheld here when\n * its own declaration forbids disclosure.\n *\n * That reader carried only HALF the rule until 2026-09-07 (issue #95): it excluded\n * `.isBackendOnly()` and rendered `.isWriteOnlySecret()` in full. A resource may legally declare\n * a field as BOTH a summary field and a write-only secret, and the header would then have put\n * into a provider payload the exact value the response DTO exists to mask. Do not re-teach this\n * module about decorators to fix a future gap of that shape — widen the shared rule, or the\n * two answers drift again;\n * - **the row id and the primary-scope foreign keys are excluded BY NAME**\n * ({@link HEADER_EXCLUDED_FIELD_NAMES}), not left to the application's declarations. An earlier\n * revision asserted \"no row id, no scope columns\" as if it were a property of this code; it was a\n * property of the schemas that happened to be looked at. A resource may legitimately declare\n * `organizationId` as a summary field — nothing forbids it — and the header would then carry a\n * tenant id into a provider payload. The exclusion is cheap and the failure it prevents is not;\n * - **values that are not prose are skipped** rather than stringified: an object renders as\n * `[object Object]` and situates nothing.\n *\n * ## Corpus is DATA, never instructions (partial-resource paper, PR-17)\n *\n * The assembled context can carry text a REMOTE SYSTEM authored: ETL pipeline destinations sync\n * field values verbatim from external providers (Odoo, SAP, arbitrary REST sources), so a chunk\n * here may be remote-controlled prose that was never typed by anyone this application trusts.\n * The same is already true of user-authored rows, but a pipeline widens the author set to\n * whoever can write in the EXTERNAL system. Everything this module assembles must therefore stay\n * on the data side of the prompt: headers and chunk text are quoted context for the model to\n * read, never a channel whose content is followed as instructions — and any consumer composing a\n * prompt from this output owes the same posture.\n */\n\nimport {\n PRIMARY_SCOPE_FIELD_IDENTIFIERS,\n ResourcesConfigNamingUtils,\n ResourcesSummaryUtils,\n type ResourceType,\n} from '@wildo-ai/saas-models';\n\n/** Separator between a chunk's header and its text. A blank line — prose, not a delimiter language. */\nconst HEADER_TEXT_SEPARATOR = '\\n\\n';\n\n/** Separator between two summary-field values inside one header. */\nconst SUMMARY_VALUE_SEPARATOR = ' · ';\n\n/**\n * Longest summary value admitted into a header. A header exists to SITUATE a chunk; a summary field\n * that is itself a paragraph would push the chunk out of the context budget it is supposed to earn\n * its place in. Truncated with an ellipsis rather than dropped, so the row stays identifiable.\n */\nconst MAX_SUMMARY_VALUE_CHARS = 120;\n\n/** Summary fields named in one header, at most. Beyond that a header stops reading as a label. */\nconst MAX_SUMMARY_FIELDS_PER_HEADER = 3;\n\n/**\n * Field names a header NEVER renders, whatever the application declared — the row's own primary key\n * and every primary-scope foreign key. See the file header for why this is enforced here rather than\n * assumed of the schemas.\n *\n * Derived from `PRIMARY_SCOPE_FIELD_IDENTIFIERS` (the resource system's own closed list:\n * `organizationId`, `userId`, `applicationId`, `anonymousUserId`) so a future scope's FK is excluded\n * the day it is declared, rather than the day someone notices it in a prompt.\n */\nexport const HEADER_EXCLUDED_FIELD_NAMES: ReadonlySet<string> = new Set<string>([\n '_id',\n ...PRIMARY_SCOPE_FIELD_IDENTIFIERS,\n]);\n\n/**\n * A resource type as a reader would say it: `organizationProfiles` → `Organization Profile`.\n *\n * The backend registry carries NO human label for a resource — verified 2026-08-27 against\n * `ResourceConfiguration`, which has `resourceIdentifier` and `resourceFieldIdentifier` and no\n * `name`/`label`/`displayName` — and the only human-readable path, the i18n bundle key\n * `resources.<resourceType>`, needs a LOCALE. Retrieval has no locale: it assembles context for a\n * model, not a screen, and picking one arbitrarily would make the corpus text language-dependent for\n * a reason that has nothing to do with the corpus. So the name is derived from the identifier —\n * singularised through the framework's own naming utility, then space-separated and title-cased.\n *\n * THE DOOR: when a caller genuinely needs localised headers (a user-facing citation list rather than\n * model context), it passes the locale and this resolves through the i18n bundle. That is a new\n * parameter, not a rewrite.\n */\nexport function deriveRagResourceDisplayName(resourceType: ResourceType | string): string {\n const singular = ResourcesConfigNamingUtils.singularize(String(resourceType));\n return singular\n .replace(/([a-z0-9])([A-Z])/g, '$1 $2')\n .replace(/[_-]+/g, ' ')\n .trim()\n .replace(/\\b\\w/g, (character) => character.toUpperCase());\n}\n\n/** A field name as a reader would say it: `internalNotes` → `Internal Notes`. */\nfunction deriveFieldDisplayName(fieldName: string): string {\n // A dotted path keeps only its LEAF: `profile.bio` reads as \"Bio\" — the container is already named\n // by the resource, and repeating it makes the header longer without making it clearer.\n const leaf = fieldName.split('.').pop() ?? fieldName;\n return leaf\n .replace(/([a-z0-9])([A-Z])/g, '$1 $2')\n .replace(/[_-]+/g, ' ')\n .trim()\n .replace(/\\b\\w/g, (character) => character.toUpperCase());\n}\n\n/** One summary value rendered for a header, or `undefined` when the row carries nothing usable. */\nfunction renderSummaryValue(value: unknown): string | undefined {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === 'string') {\n const trimmed = value.trim();\n if (trimmed.length === 0) {\n return undefined;\n }\n return trimmed.length > MAX_SUMMARY_VALUE_CHARS ? `${trimmed.slice(0, MAX_SUMMARY_VALUE_CHARS)}…` : trimmed;\n }\n if (typeof value === 'number' || typeof value === 'boolean') {\n return String(value);\n }\n if (value instanceof Date) {\n return value.toISOString();\n }\n // Objects and arrays are deliberately NOT stringified: a summary field holding a nested shape\n // renders as `[object Object]` or as JSON noise, neither of which situates a chunk.\n return undefined;\n}\n\n/**\n * The header line for one row's chunks: `Contract — Acme MSA · Renewal 2026` (the resource's\n * readable name, then its declared summary values).\n *\n * Returns just the resource name when the row carries no usable summary value — that is still more\n * than the chunk had on its own, and inventing a substitute (an id, a truncated field) would put\n * exactly the identifiers the header contract excludes back into the prose.\n */\nexport function buildRagRowHeader(input: {\n resourceType: ResourceType;\n row: Record<string, unknown>;\n /** The row's `mainSchema`, or `undefined` when the resource is unregistered (orphan chunk). */\n mainSchema?: unknown;\n}): string {\n const resourceName = deriveRagResourceDisplayName(input.resourceType);\n if (input.mainSchema === undefined || input.mainSchema === null) {\n return resourceName;\n }\n let summaryFieldNames: string[];\n try {\n summaryFieldNames = ResourcesSummaryUtils.getSummaryFieldNames(input.mainSchema as never);\n } catch {\n // A schema shape the summary reader cannot walk (a union main schema) yields no header detail\n // rather than failing the assembly — a header is an enhancement, never a gate.\n return resourceName;\n }\n\n const values: string[] = [];\n for (const fieldName of summaryFieldNames) {\n if (values.length >= MAX_SUMMARY_FIELDS_PER_HEADER) {\n break;\n }\n // The by-name exclusion (file header): an application MAY declare a scope FK or the id as a\n // summary field, and a header must not carry either into a provider payload.\n if (HEADER_EXCLUDED_FIELD_NAMES.has(fieldName.split('.').pop() ?? fieldName)) {\n continue;\n }\n const rendered = renderSummaryValue(input.row[fieldName]);\n if (rendered !== undefined) {\n values.push(rendered);\n }\n }\n return values.length === 0 ? resourceName : `${resourceName} — ${values.join(SUMMARY_VALUE_SEPARATOR)}`;\n}\n\n/**\n * One chunk's contextual text: the row header, the field it came from, then the chunk itself.\n *\n * The field name is on the header line rather than in a separate preamble because a model reading\n * `Contract — Acme MSA · Renewal 2026 (Termination Clause)` gets the whole situation in one line,\n * and every additional line of scaffolding is budget taken from the corpus.\n */\nexport function buildRagChunkContextualText(input: {\n rowHeader: string;\n fieldName: string;\n chunkText: string;\n}): string {\n return `${input.rowHeader} (${deriveFieldDisplayName(input.fieldName)})${HEADER_TEXT_SEPARATOR}${input.chunkText}`;\n}\n\n/**\n * Join several chunk texts belonging to ONE row under ONE header — the grouping half of assembly.\n *\n * A row whose three chunks all matched must appear ONCE with three passages, not three times with\n * three near-identical headers: repeating the header wastes budget, and a model reading the same\n * label three times is being told the corpus contains three documents when it contains one.\n */\nexport function buildRagRowContextualText(input: {\n rowHeader: string;\n passages: readonly { fieldName: string; chunkText: string }[];\n}): string {\n const byField = new Map<string, string[]>();\n for (const passage of input.passages) {\n const existing = byField.get(passage.fieldName);\n if (existing) {\n existing.push(passage.chunkText);\n } else {\n byField.set(passage.fieldName, [passage.chunkText]);\n }\n }\n const sections = [...byField].map(\n ([fieldName, texts]) => `${deriveFieldDisplayName(fieldName)}:${HEADER_TEXT_SEPARATOR}${texts.join(HEADER_TEXT_SEPARATOR)}`,\n );\n return `${input.rowHeader}${HEADER_TEXT_SEPARATOR}${sections.join(HEADER_TEXT_SEPARATOR)}`;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"rag-context-assembly.backend.utils.js","sourceRoot":"","sources":["../../../../src/rag/utils/rag-context-assembly.backend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Assembling retrieved chunks into USABLE context — schema-derived chunk headers and row grouping\n * (plan D6, Phase 5-B).\n *\n * ## Why a raw chunk is not an answer\n *\n * A chunk is a window into one field of one row, and the chunker cuts it wherever the size bound\n * falls. Handed to a model on its own it reads as an anonymous paragraph: *\"…renewal was deferred\n * pending the security review.\"* Deferred for whom? Which contract? The literature's fix is the\n * \"contextual chunk header\" — a short preamble naming what the chunk belongs to, prepended to the\n * chunk text so the retriever and the model both see it.\n *\n * The usual way to produce one is to ask an LLM to summarise the document per chunk. **This does it\n * FROM THE SCHEMA instead**, and that is the whole point of RAG being a resource-system capability:\n * the framework already knows the resource's name, which of its fields SUMMARISE a row\n * (`.isSummaryField()`), and which field the chunk came from. That is free, deterministic, exact,\n * costs no tokens, and cannot hallucinate — three properties an LLM-written header does not have.\n *\n * ## What a header deliberately does NOT contain\n *\n * A header is prose a model reads, and every identifier in it is both noise to the model and a value\n * that leaves the tenant boundary when the assembled context is sent to a provider. So:\n *\n * - **summary fields are the source**, because they are exactly the fields an application DECLARED\n * as the human-readable face of a row. `ResourcesSummaryUtils.getSummaryFieldNames` is used\n * rather than a hand-rolled shape walk BECAUSE it applies the framework's field-value disclosure\n * rule (`isNonDisclosableFieldValue`) — the same rule the response DTO and the subject export\n * enforce — so a field the application declared as a summary field is still withheld here when\n * its own declaration forbids disclosure.\n *\n * That reader carried only HALF the rule until 2026-09-07 (issue #95): it excluded\n * `.isBackendOnly()` and rendered `.isWriteOnlySecret()` in full. A resource may legally declare\n * a field as BOTH a summary field and a write-only secret, and the header would then have put\n * into a provider payload the exact value the response DTO exists to mask. Do not re-teach this\n * module about decorators to fix a future gap of that shape — widen the shared rule, or the\n * two answers drift again;\n * - **the row id and the primary-scope foreign keys are excluded BY NAME**\n * ({@link HEADER_EXCLUDED_FIELD_NAMES}), not left to the application's declarations. An earlier\n * revision asserted \"no row id, no scope columns\" as if it were a property of this code; it was a\n * property of the schemas that happened to be looked at. A resource may legitimately declare\n * `organizationId` as a summary field — nothing forbids it — and the header would then carry a\n * tenant id into a provider payload. The exclusion is cheap and the failure it prevents is not;\n * - **values that are not prose are skipped** rather than stringified: an object renders as\n * `[object Object]` and situates nothing.\n *\n * ## Corpus is DATA, never instructions (partial-resource paper, PR-17)\n *\n * The assembled context can carry text a REMOTE SYSTEM authored: ETL pipeline destinations sync\n * field values verbatim from external providers (Odoo, SAP, arbitrary REST sources), so a chunk\n * here may be remote-controlled prose that was never typed by anyone this application trusts.\n * The same is already true of user-authored rows, but a pipeline widens the author set to\n * whoever can write in the EXTERNAL system. Everything this module assembles must therefore stay\n * on the data side of the prompt: headers and chunk text are quoted context for the model to\n * read, never a channel whose content is followed as instructions — and any consumer composing a\n * prompt from this output owes the same posture.\n */\n\nimport {\n PRIMARY_SCOPE_FIELD_IDENTIFIERS,\n ResourcesConfigNamingUtils,\n ResourcesSummaryUtils,\n type ResourceType,\n} from '@wildo-ai/saas-models';\n\n/** Separator between a chunk's header and its text. A blank line — prose, not a delimiter language. */\nconst HEADER_TEXT_SEPARATOR = '\\n\\n';\n\n/** Separator between two summary-field values inside one header. */\nconst SUMMARY_VALUE_SEPARATOR = ' · ';\n\n/**\n * Longest summary value admitted into a header. A header exists to SITUATE a chunk; a summary field\n * that is itself a paragraph would push the chunk out of the context budget it is supposed to earn\n * its place in. Truncated with an ellipsis rather than dropped, so the row stays identifiable.\n */\nconst MAX_SUMMARY_VALUE_CHARS = 120;\n\n/** Summary fields named in one header, at most. Beyond that a header stops reading as a label. */\nconst MAX_SUMMARY_FIELDS_PER_HEADER = 3;\n\n/**\n * Field names a header NEVER renders, whatever the application declared — the row's own primary key\n * and every primary-scope foreign key. See the file header for why this is enforced here rather than\n * assumed of the schemas.\n *\n * Derived from `PRIMARY_SCOPE_FIELD_IDENTIFIERS` (the resource system's own closed list:\n * `organizationId`, `userId`, `applicationId`, `anonymousUserId`) so a future scope's FK is excluded\n * the day it is declared, rather than the day someone notices it in a prompt.\n */\nexport const HEADER_EXCLUDED_FIELD_NAMES: ReadonlySet<string> = new Set<string>([\n '_id',\n ...PRIMARY_SCOPE_FIELD_IDENTIFIERS,\n]);\n\n/**\n * A resource type as a reader would say it: `organizationProfiles` → `Organization Profile`.\n *\n * The backend registry carries NO human label for a resource — verified 2026-08-27 against\n * `ResourceConfiguration`, which has `resourceIdentifier` and `resourceFieldIdentifier` and no\n * `name`/`label`/`displayName` — and the only human-readable path, the i18n bundle key\n * `resources.<resourceType>`, needs a LOCALE. Retrieval has no locale: it assembles context for a\n * model, not a screen, and picking one arbitrarily would make the corpus text language-dependent for\n * a reason that has nothing to do with the corpus. So the name is derived from the identifier —\n * singularised through the framework's own naming utility, then space-separated and title-cased.\n *\n * THE DOOR: when a caller genuinely needs localised headers (a user-facing citation list rather than\n * model context), it passes the locale and this resolves through the i18n bundle. That is a new\n * parameter, not a rewrite.\n */\nexport function deriveRagResourceDisplayName(resourceType: ResourceType | string): string {\n const singular = ResourcesConfigNamingUtils.singularize(String(resourceType));\n return singular\n .replace(/([a-z0-9])([A-Z])/g, '$1 $2')\n .replace(/[_-]+/g, ' ')\n .trim()\n .replace(/\\b\\w/g, (character) => character.toUpperCase());\n}\n\n/** A field name as a reader would say it: `internalNotes` → `Internal Notes`. */\nfunction deriveFieldDisplayName(fieldName: string): string {\n // A dotted path keeps only its LEAF: `profile.bio` reads as \"Bio\" — the container is already named\n // by the resource, and repeating it makes the header longer without making it clearer.\n const leaf = fieldName.split('.').pop() ?? fieldName;\n return leaf\n .replace(/([a-z0-9])([A-Z])/g, '$1 $2')\n .replace(/[_-]+/g, ' ')\n .trim()\n .replace(/\\b\\w/g, (character) => character.toUpperCase());\n}\n\n/** One summary value rendered for a header, or `undefined` when the row carries nothing usable. */\nfunction renderSummaryValue(value: unknown): string | undefined {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === 'string') {\n const trimmed = value.trim();\n if (trimmed.length === 0) {\n return undefined;\n }\n return trimmed.length > MAX_SUMMARY_VALUE_CHARS ? `${trimmed.slice(0, MAX_SUMMARY_VALUE_CHARS)}…` : trimmed;\n }\n if (typeof value === 'number' || typeof value === 'boolean') {\n return String(value);\n }\n if (value instanceof Date) {\n return value.toISOString();\n }\n // Objects and arrays are deliberately NOT stringified: a summary field holding a nested shape\n // renders as `[object Object]` or as JSON noise, neither of which situates a chunk.\n return undefined;\n}\n\n/**\n * The header line for one row's chunks: `Contract — Acme MSA · Renewal 2026` (the resource's\n * readable name, then its declared summary values).\n *\n * Returns just the resource name when the row carries no usable summary value — that is still more\n * than the chunk had on its own, and inventing a substitute (an id, a truncated field) would put\n * exactly the identifiers the header contract excludes back into the prose.\n */\nexport function buildRagRowHeader(input: {\n resourceType: ResourceType;\n row: Record<string, unknown>;\n /** The row's `mainSchema`, or `undefined` when the resource is unregistered (orphan chunk). */\n mainSchema?: unknown;\n}): string {\n const resourceName = deriveRagResourceDisplayName(input.resourceType);\n if (input.mainSchema === undefined || input.mainSchema === null) {\n return resourceName;\n }\n let summaryFieldNames: string[];\n try {\n summaryFieldNames = ResourcesSummaryUtils.getSummaryFieldNames(input.mainSchema as never);\n } catch {\n // A schema shape the summary reader cannot walk (a union main schema) yields no header detail\n // rather than failing the assembly — a header is an enhancement, never a gate.\n return resourceName;\n }\n\n const values: string[] = [];\n for (const fieldName of summaryFieldNames) {\n if (values.length >= MAX_SUMMARY_FIELDS_PER_HEADER) {\n break;\n }\n // The by-name exclusion (file header): an application MAY declare a scope FK or the id as a\n // summary field, and a header must not carry either into a provider payload.\n if (HEADER_EXCLUDED_FIELD_NAMES.has(fieldName.split('.').pop() ?? fieldName)) {\n continue;\n }\n const rendered = renderSummaryValue(input.row[fieldName]);\n if (rendered !== undefined) {\n values.push(rendered);\n }\n }\n return values.length === 0 ? resourceName : `${resourceName} — ${values.join(SUMMARY_VALUE_SEPARATOR)}`;\n}\n\n/**\n * One chunk's contextual text: the row header, the field it came from, then the chunk itself.\n *\n * The field name is on the header line rather than in a separate preamble because a model reading\n * `Contract — Acme MSA · Renewal 2026 (Termination Clause)` gets the whole situation in one line,\n * and every additional line of scaffolding is budget taken from the corpus.\n */\nexport function buildRagChunkContextualText(input: {\n rowHeader: string;\n fieldName: string;\n chunkText: string;\n}): string {\n return `${input.rowHeader} (${deriveFieldDisplayName(input.fieldName)})${HEADER_TEXT_SEPARATOR}${input.chunkText}`;\n}\n\n/**\n * Join several chunk texts belonging to ONE row under ONE header — the grouping half of assembly.\n *\n * A row whose three chunks all matched must appear ONCE with three passages, not three times with\n * three near-identical headers: repeating the header wastes budget, and a model reading the same\n * label three times is being told the corpus contains three documents when it contains one.\n */\nexport function buildRagRowContextualText(input: {\n rowHeader: string;\n passages: readonly { fieldName: string; chunkText: string }[];\n}): string {\n const byField = new Map<string, string[]>();\n for (const passage of input.passages) {\n const existing = byField.get(passage.fieldName);\n if (existing) {\n existing.push(passage.chunkText);\n } else {\n byField.set(passage.fieldName, [passage.chunkText]);\n }\n }\n const sections = [...byField].map(\n ([fieldName, texts]) => `${deriveFieldDisplayName(fieldName)}:${HEADER_TEXT_SEPARATOR}${texts.join(HEADER_TEXT_SEPARATOR)}`,\n );\n return `${input.rowHeader}${HEADER_TEXT_SEPARATOR}${sections.join(HEADER_TEXT_SEPARATOR)}`;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rag-ingestion-trigger.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"rag-ingestion-trigger.backend.utils.d.ts","sourceRoot":"","sources":["../../../../src/rag/utils/rag-ingestion-trigger.backend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAEH,OAAO,EAAE,qBAAqB,EAAE,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAMjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qEAAqE,CAAC;AAC5G,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+DAA+D,CAAC;AAC5G,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAGhH;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,8BAA8B,EAAE,WAAW,CAAC,qBAAqB,CAK5E,CAAC;AAKH;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,qCAAqC,CACnD,6BAA6B,EAAE,qBAAqB,GAAG,SAAS,EAChE,mBAAmB,EAAE,MAAM,GAC1B,OAAO,CAET;AAED,6GAA6G;AAC7G,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,KAAK,EAAE;QACf,YAAY,EAAE,YAAY,CAAC;QAC3B,UAAU,EAAE,MAAM,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC7B,gBAAgB,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACxC,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QACnC,IAAI,EAAE,MAAM,CAAC;KACd,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACrC;AAED,oGAAoG;AACpG,MAAM,WAAW,yBAAyB;IACxC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAChE,KAAK,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CAClE;AAED;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC,YAAY,EAAE,gBAAgB,CAAC;IAC/B,uBAAuB,EAAE,2BAA2B,CAAC;IACrD,MAAM,EAAE,yBAAyB,CAAC;CACnC;AAED,oFAAoF;AACpF,MAAM,WAAW,6BAA6B;IAC5C,YAAY,EAAE,YAAY,CAAC;IAC3B;;;;OAIG;IACH,aAAa,EAAE,qBAAqB,GAAG,MAAM,GAAG,SAAS,CAAC;IAC1D,yGAAyG;IACzG,SAAS,EAAE,OAAO,CAAC;IACnB,oFAAoF;IACpF,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACxC,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kDAAkD,CAChE,OAAO,EAAE,IAAI,CAAC,0BAA0B,EAAE,yBAAyB,GAAG,QAAQ,CAAC,EAC/E,KAAK,EAAE;IAAE,YAAY,EAAE,YAAY,CAAC;IAAC,mBAAmB,EAAE,MAAM,CAAA;CAAE,GACjE,IAAI,CAYN;AAiBD;;;;;GAKG;AACH,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,0BAA0B,EACnC,KAAK,EAAE,6BAA6B,GACnC,OAAO,CAAC,IAAI,CAAC,CAwDf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rag-retrieval-scope.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"rag-retrieval-scope.backend.utils.d.ts","sourceRoot":"","sources":["../../../../src/rag/utils/rag-retrieval-scope.backend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AAEH,OAAO,EAEL,oBAAoB,EACpB,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAM/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,kEAAkE,CAAC;AAEpG;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,gBAAgB,CAAC,cAAc,GAAG,OAAO,gBAAgB,CAAC,MAAM,CAAC;AAE1G,sGAAsG;AACtG,oBAAY,wBAAwB;IAClC;;;;OAIG;IACH,aAAa,kBAAkB;IAC/B;;;;;;;;;;;;;;;;;OAiBG;IACH,gBAAgB,qBAAqB;IACrC;;;;;;;;OAQG;IACH,eAAe,oBAAoB;IACnC;;;;;OAKG;IACH,uBAAuB,4BAA4B;CACpD;AAED,0GAA0G;AAC1G,MAAM,MAAM,oBAAoB,GAC5B;IACE,IAAI,EAAE,wBAAwB,CAAC,aAAa,CAAC;IAC7C,MAAM,EAAE,mBAAmB,CAAC;IAC5B,kHAAkH;IAClH,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3B,GACD;IAAE,IAAI,EAAE,wBAAwB,CAAC,gBAAgB,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,wBAAwB,CAAC,eAAe,CAAC;IAAC,YAAY,EAAE,oBAAoB,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,GAC/G;IAAE,IAAI,EAAE,wBAAwB,CAAC,uBAAuB,CAAC;IAAC,YAAY,EAAE,oBAAoB,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5H;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,oBAAoB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAClE,QAAQ,CAAC,YAAY,CAAC,EAAE;QAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IAC5G;;;;;;;;OAQG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,OAAO,EAAE,CAAC;CAC9C;AAED,+DAA+D;AAC/D,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,kBAAkB,EAAE,YAAY,GAAG,MAAM,CAAC;IACnD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;CACtD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,oBAAoB,GAAG,mBAAmB,GAAG,SAAS,CAS9G;AA8GD;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CACzC,qBAAqB,EAAE,yBAAyB,EAChD,MAAM,EAAE,uBAAuB,GAC9B,oBAAoB,CA+BtB;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CACxC,qBAAqB,EAAE,yBAAyB,GAAG,SAAS,GAC3D,mBAAmB,GAAG,SAAS,CAMjC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rag-source-field-value.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"rag-source-field-value.backend.utils.d.ts","sourceRoot":"","sources":["../../../../src/rag/utils/rag-source-field-value.backend.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,SAAS,CAAC;AAoBjD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAO7G;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAgBjG;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qCAAqC,CAAC,SAAS,EAAE,MAAM,EAAE,mBAAmB,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAGxH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-routes.backend.defintions.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"api-routes.backend.defintions.d.ts","sourceRoot":"","sources":["../../../../src/requests/models/api-routes.backend.defintions.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,8BAA8B;;;;uDAKY,MAAM;;;QAIrD;;;;;;;;;;;;WAYG;;QAEH;;;;;;;;;;;WAWG;;;QAKH;;;;;;;;;;;WAWG;;;;;;wCAQ6B,MAAM;qCACT,MAAM;QACnC;;;;;;WAMG;sDAC2C,MAAM,gBAAgB,MAAM;yCAEzC,MAAM,OAAO,MAAM;;;;;;;;;;;;;QAkBpD;;;;;;;;;;;WAWG;8CACmC,MAAM,UAAU,MAAM,eAAe,MAAM,SAAS,MAAM,WAAW,MAAM;QAEjH;;;;WAIG;uDAC4C,MAAM,eAAe,MAAM,SAAS,MAAM,WAAW,MAAM;QAE1G,8FAA8F;yDAC7C,MAAM,eAAe,MAAM;;CAGnF,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requests.backend.schemas.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"requests.backend.schemas.d.ts","sourceRoot":"","sources":["../../../../src/requests/models/requests.backend.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qEAAqE,CAAC;AAE/G,OAAO,CAAC,MAAM,CAAC;IAEb,UAAU,OAAO,CAAC;QAChB,UAAU,OAAO;YACf;;;;;;;;;;;eAWG;YACH,OAAO,CAAC,EAAE,MAAM,CAAC;SAClB;KACF;CACF;AAGD,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAID,MAAM,WAAW,cAAe,SAAQ,kBAAkB;IAExD,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnC,YAAY,EAAE,KAAK,EAAE,CAAC;CAGvB;AAED,MAAM,WAAW,sBAAsB;IAErC,MAAM,EAAE,qBAAqB,CAAC;IAG9B,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;CACxD;AAED,oBAAY,qBAAqB;IAC/B,oBAAoB,yBAAyB;IAC7C,eAAe,oBAAoB;IACnC,OAAO,YAAY;CACpB;AAGD,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform-mutualized-handler.backend.service.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"platform-mutualized-handler.backend.service.d.ts","sourceRoot":"","sources":["../../../../src/requests/service/platform-mutualized-handler.backend.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAC;AAC7F,OAAO,EAAE,0BAA0B,EAAE,MAAM,kEAAkE,CAAC;AAE9G,qBACa,uCAAuC;IAIb,OAAO,CAAC,QAAQ,CAAC,MAAM;IACV,OAAO,CAAC,QAAQ,CAAC,YAAY;IAJ/E,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA+D;gBAGlC,MAAM,EAAE,aAAa,EACR,YAAY,EAAE,0BAA0B;CAK5G"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform-requests.backend.utils.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"platform-requests.backend.utils.d.ts","sourceRoot":"","sources":["../../../../src/requests/service/platform-requests.backend.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAyB,MAAM,6DAA6D,CAAC;AAC5H,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,qBAAa,4BAA4B;WAEzB,2BAA2B,CAAC,GAAG,EAAE,OAAO,GAAG,sBAAsB;CA8ChF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-client-base.backend.service.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"remote-client-base.backend.service.d.ts","sourceRoot":"","sources":["../../../../src/requests/service/remote-client-base.backend.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serverless-services-handler.backend.service.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"serverless-services-handler.backend.service.d.ts","sourceRoot":"","sources":["../../../../src/requests/service/serverless-services-handler.backend.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAC;AAC7F,OAAO,EAAE,0BAA0B,EAAE,MAAM,kEAAkE,CAAC;AAE9G,qBACa,uCAAuC;IAIb,OAAO,CAAC,QAAQ,CAAC,MAAM;IACV,OAAO,CAAC,QAAQ,CAAC,YAAY;IAJ/E,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA+D;gBAGlC,MAAM,EAAE,aAAa,EACR,YAAY,EAAE,0BAA0B;CAK5G"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket.service.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"websocket.service.d.ts","sourceRoot":"","sources":["../../../../src/requests/service/websocket.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -2085,12 +2085,44 @@ let WebSocketService = class WebSocketService {
|
|
|
2085
2085
|
const initiator = auth?.initiatorIds;
|
|
2086
2086
|
if (!initiator?.userId)
|
|
2087
2087
|
return;
|
|
2088
|
+
const approverUserId = initiator.userId;
|
|
2088
2089
|
await this.getConversationalExecutionService().respondToApproval({
|
|
2089
2090
|
systemRef: parsed.data.systemRef,
|
|
2090
2091
|
executionId: parsed.data.executionId,
|
|
2091
2092
|
approvalId: parsed.data.approvalId,
|
|
2092
2093
|
approved: parsed.data.approved,
|
|
2093
|
-
scopeContext: { userId:
|
|
2094
|
+
scopeContext: { userId: approverUserId },
|
|
2095
|
+
/*
|
|
2096
|
+
* The channel back to the approver — and until now this handler passed NONE.
|
|
2097
|
+
*
|
|
2098
|
+
* `resumeAfterApproval` streams the resumed reply and its final message through
|
|
2099
|
+
* `params.emitter?.(…)`, and its own comments say so ("the agent's reply was emitted to the
|
|
2100
|
+
* live socket"). At the only production call site there was no emitter, so every one of
|
|
2101
|
+
* those calls was a no-op: a person approved a tool call and their screen showed nothing
|
|
2102
|
+
* until they reloaded, which read as a resume that had not happened.
|
|
2103
|
+
*
|
|
2104
|
+
* It became load-bearing rather than merely missing with approve-with-modifications (#566):
|
|
2105
|
+
* an edit the server REFUSES has to reach the human who made it, or the surface has
|
|
2106
|
+
* collected a change and dropped it — the exact outcome #537 refused to ship.
|
|
2107
|
+
*
|
|
2108
|
+
* Same construction as the START handler above: the initiating user's own room, bound to
|
|
2109
|
+
* the SERVER-VALIDATED id, never anything from the payload.
|
|
2110
|
+
*/
|
|
2111
|
+
emitter: (event, payload) => {
|
|
2112
|
+
if (!this.io)
|
|
2113
|
+
return;
|
|
2114
|
+
this.io.to(buildUserRoomName(approverUserId)).emit(event, payload);
|
|
2115
|
+
},
|
|
2116
|
+
/*
|
|
2117
|
+
* The arguments the approver AUTHORED, when they edited the proposed call (#566).
|
|
2118
|
+
*
|
|
2119
|
+
* Forwarded rather than interpreted: this handler cannot know the tool's `inputSchema`, and
|
|
2120
|
+
* the browser's validation is a convenience. The server re-validates against the tool's own
|
|
2121
|
+
* schema, re-signs the approval over the modified input, and refuses back through the
|
|
2122
|
+
* emitter above with the pause left standing — so a rejected edit costs an error message
|
|
2123
|
+
* rather than the turn.
|
|
2124
|
+
*/
|
|
2125
|
+
modifiedToolArgs: parsed.data.modifiedToolArgs,
|
|
2094
2126
|
// The APPROVER's verified auth. The resumed turn executes the gated tool, and it must do so
|
|
2095
2127
|
// with a real identity — without this the agent resolves no tools at all and the approval
|
|
2096
2128
|
// completes having done nothing. Passing the socket's own auth (never anything from the
|
|
@@ -2100,6 +2132,22 @@ let WebSocketService = class WebSocketService {
|
|
|
2100
2132
|
// unresumable: the resume filtered on the DEFAULT sentinel while the paused execution had
|
|
2101
2133
|
// been written with the named ref, so the read matched nothing and returned silently.
|
|
2102
2134
|
resourceServerInstanceRef: parsed.data.resourceServerInstanceRef,
|
|
2135
|
+
/*
|
|
2136
|
+
* The approver's own words, forwarded to the model — and until 2026-09-09 they were not.
|
|
2137
|
+
*
|
|
2138
|
+
* `comment` is offered by the approval surface, sent by the browser and validated by the
|
|
2139
|
+
* payload schema; this handler parsed it and passed everything EXCEPT it, so `reason` was
|
|
2140
|
+
* always `undefined` and the text a person typed to explain their decision reached nothing.
|
|
2141
|
+
* The UI collected it, the wire carried it, and it was dropped one function short of the
|
|
2142
|
+
* `tool-approval-response` that would have shown it to the agent.
|
|
2143
|
+
*
|
|
2144
|
+
* That is the same defect #537 refused to ship for a MODIFIED ARGUMENT — a surface that
|
|
2145
|
+
* collects a change and silently discards it — already live for the field beside it. It
|
|
2146
|
+
* matters most on a DENIAL: denying resumes the turn so the model can respond, and "no,
|
|
2147
|
+
* send it to finance instead" is the difference between the agent re-proposing something
|
|
2148
|
+
* useful and answering that it cannot proceed.
|
|
2149
|
+
*/
|
|
2150
|
+
reason: parsed.data.comment,
|
|
2103
2151
|
});
|
|
2104
2152
|
});
|
|
2105
2153
|
}
|