@wildo-ai/saas-backend-lib 1.1.1 → 1.1.3
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/applications/services/worker-remote-client-factory.backend.service.d.ts.map +1 -1
- package/dist/esm/applications/services/worker-remote-client-factory.backend.service.js +19 -1
- package/dist/esm/applications/services/worker-remote-client-factory.backend.service.js.map +1 -1
- package/dist/esm/base-classes/models/manual-controllers.backend.definition.d.ts.map +1 -1
- package/dist/esm/base-classes/models/manual-controllers.backend.definition.js +4 -0
- package/dist/esm/base-classes/models/manual-controllers.backend.definition.js.map +1 -1
- package/dist/esm/base-classes/services/batches/child-lifecycle-teardown.batch.backend.service.d.ts +35 -0
- package/dist/esm/base-classes/services/batches/child-lifecycle-teardown.batch.backend.service.d.ts.map +1 -0
- package/dist/esm/base-classes/services/batches/child-lifecycle-teardown.batch.backend.service.js +111 -0
- package/dist/esm/base-classes/services/batches/child-lifecycle-teardown.batch.backend.service.js.map +1 -0
- package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.d.ts +50 -0
- package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.d.ts.map +1 -0
- package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.js +199 -0
- package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.js.map +1 -0
- package/dist/esm/base-classes/services/batches/engine-custom-batch-manifests.d.ts +111 -0
- package/dist/esm/base-classes/services/batches/engine-custom-batch-manifests.d.ts.map +1 -1
- package/dist/esm/base-classes/services/batches/engine-custom-batch-manifests.js +140 -0
- package/dist/esm/base-classes/services/batches/engine-custom-batch-manifests.js.map +1 -1
- package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.d.ts +14 -3
- 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 +138 -24
- 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 +3 -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 +8 -3
- package/dist/esm/base-classes/services/controllers/controllers-registry-handler.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/field-clearing-partition.backend.d.ts +11 -0
- package/dist/esm/base-classes/services/repositories/field-clearing-partition.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/field-clearing-partition.backend.js +11 -2
- package/dist/esm/base-classes/services/repositories/field-clearing-partition.backend.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.d.ts +124 -13
- package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.js +207 -21
- 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-read-client.backend.d.ts +60 -8
- package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.js +174 -26
- package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.d.ts +48 -4
- package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.js +102 -30
- package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.d.ts +55 -0
- package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.d.ts.map +1 -0
- package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.js +114 -0
- package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.js.map +1 -0
- package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.d.ts +89 -14
- package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.js +84 -11
- package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/odata-query-compiler.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/repositories/http-api/odata-query-compiler.backend.js +16 -0
- package/dist/esm/base-classes/services/repositories/http-api/odata-query-compiler.backend.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.d.ts +20 -6
- 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 +96 -32
- 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 +3 -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-repository.backend.service.js +32 -7
- package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-repository.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-source.backend.port.d.ts +8 -5
- 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/introspection/introspection-resource-source.backend.port.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.d.ts +80 -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 +298 -23
- 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 +71 -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 +85 -5
- package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.d.ts +21 -0
- 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 +146 -4
- package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/services/resource-operation-custom-implementation-base.backend.service.d.ts +22 -0
- package/dist/esm/base-classes/services/services/resource-operation-custom-implementation-base.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/resource-operation-custom-implementation-base.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/services/resource-operation-implementation-coverage.backend.utils.d.ts +3 -26
- 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-implementation-coverage.backend.utils.js +3 -68
- package/dist/esm/base-classes/services/services/resource-operation-implementation-coverage.backend.utils.js.map +1 -1
- package/dist/esm/base-classes/services/services/resource-status-transition.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/resource-status-transition.custom-impl.backend.service.js +4 -1
- package/dist/esm/base-classes/services/services/resource-status-transition.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.d.ts +11 -0
- package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.js +39 -5
- package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.js.map +1 -1
- package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.d.ts +181 -2
- package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.js +533 -43
- package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.js.map +1 -1
- package/dist/esm/base-classes/services/services/system-access.backend.service.d.ts +36 -3
- package/dist/esm/base-classes/services/services/system-access.backend.service.d.ts.map +1 -1
- package/dist/esm/base-classes/services/services/system-access.backend.service.js +70 -8
- package/dist/esm/base-classes/services/services/system-access.backend.service.js.map +1 -1
- package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.d.ts +28 -0
- package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.d.ts.map +1 -0
- package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.js +90 -0
- package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.js.map +1 -0
- package/dist/esm/billing/batches/usage-flush.batch.backend.service.d.ts +44 -0
- package/dist/esm/billing/batches/usage-flush.batch.backend.service.d.ts.map +1 -0
- package/dist/esm/billing/batches/usage-flush.batch.backend.service.js +99 -0
- package/dist/esm/billing/batches/usage-flush.batch.backend.service.js.map +1 -0
- package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.d.ts +91 -0
- package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.d.ts.map +1 -0
- package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.js +152 -0
- package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.js.map +1 -0
- package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.d.ts +186 -0
- package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.d.ts.map +1 -0
- package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.js +474 -0
- package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.js.map +1 -0
- package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.d.ts +100 -0
- package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.js +209 -6
- package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.js.map +1 -1
- package/dist/esm/billing/services/back-office/usage-metering.backend.service.d.ts +200 -4
- package/dist/esm/billing/services/back-office/usage-metering.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/back-office/usage-metering.backend.service.js +593 -64
- package/dist/esm/billing/services/back-office/usage-metering.backend.service.js.map +1 -1
- package/dist/esm/billing/services/billing-adapter-registry.backend.d.ts +36 -0
- package/dist/esm/billing/services/billing-adapter-registry.backend.d.ts.map +1 -0
- package/dist/esm/billing/services/billing-adapter-registry.backend.js +83 -0
- package/dist/esm/billing/services/billing-adapter-registry.backend.js.map +1 -0
- package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.d.ts +9 -0
- package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.d.ts.map +1 -1
- package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.js +11 -1
- package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.js.map +1 -1
- package/dist/esm/billing/services/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 +54 -13
- 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 +38 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.d.ts.map +1 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.js +67 -2
- package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.js.map +1 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.d.ts +30 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.d.ts.map +1 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.js +43 -1
- package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.js.map +1 -1
- package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.d.ts +11 -3
- package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.js +30 -16
- package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/billing/services/custom-impl/subscription.mutations.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/custom-impl/subscription.mutations.custom-impl.backend.service.js +104 -25
- package/dist/esm/billing/services/custom-impl/subscription.mutations.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.d.ts +18 -1
- package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.js +106 -2
- package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.js.map +1 -1
- package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.d.ts +52 -0
- package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.d.ts.map +1 -0
- package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.js +74 -0
- package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.js.map +1 -0
- package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.d.ts +104 -11
- package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.d.ts.map +1 -1
- package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.js +260 -26
- package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.js.map +1 -1
- package/dist/esm/billing/testing/mock-billing-provider.d.ts +30 -1
- package/dist/esm/billing/testing/mock-billing-provider.d.ts.map +1 -1
- package/dist/esm/billing/testing/mock-billing-provider.js +25 -0
- package/dist/esm/billing/testing/mock-billing-provider.js.map +1 -1
- package/dist/esm/compliance/audit-trails/batches/audit-logs-archive.batch.backend.service.js +11 -4
- package/dist/esm/compliance/audit-trails/batches/audit-logs-archive.batch.backend.service.js.map +1 -1
- package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.d.ts +263 -13
- package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.js +376 -58
- 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 +264 -7
- 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 +414 -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 +7 -1
- package/dist/esm/compliance/audit-trails/services/composite-audit-log-sink.backend.js.map +1 -1
- package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.d.ts +16 -0
- package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.d.ts.map +1 -0
- package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.js +140 -0
- package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.js.map +1 -0
- package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.d.ts +42 -0
- package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.js +65 -6
- package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.js.map +1 -1
- package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.d.ts +110 -0
- package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.d.ts.map +1 -0
- package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.js +192 -0
- package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.js.map +1 -0
- package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.d.ts.map +1 -1
- package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.js +45 -0
- package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.js.map +1 -1
- package/dist/esm/config/bootstrap/application-runtime-profile.backend.d.ts +5 -0
- package/dist/esm/config/bootstrap/application-runtime-profile.backend.d.ts.map +1 -1
- package/dist/esm/config/bootstrap/application-runtime-profile.backend.js +6 -0
- package/dist/esm/config/bootstrap/application-runtime-profile.backend.js.map +1 -1
- package/dist/esm/config/custom/application-config-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/config/custom/application-config-controller.backend.service.js +7 -1
- package/dist/esm/config/custom/application-config-controller.backend.service.js.map +1 -1
- package/dist/esm/config/models/app-config.backend.schemas.d.ts +146 -46
- package/dist/esm/config/models/app-config.backend.schemas.d.ts.map +1 -1
- package/dist/esm/config/models/app-config.backend.schemas.js +121 -12
- package/dist/esm/config/models/app-config.backend.schemas.js.map +1 -1
- package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.d.ts +38 -15
- package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.d.ts.map +1 -1
- package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.js +17 -2
- package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.js.map +1 -1
- package/dist/esm/config/services/app-configuration-loader.backend.service.d.ts +0 -1
- package/dist/esm/config/services/app-configuration-loader.backend.service.d.ts.map +1 -1
- package/dist/esm/config/services/app-configuration-loader.backend.service.js +68 -76
- package/dist/esm/config/services/app-configuration-loader.backend.service.js.map +1 -1
- package/dist/esm/config/services/app-configuration.backend.service.d.ts.map +1 -1
- package/dist/esm/config/services/app-configuration.backend.service.js +23 -1
- package/dist/esm/config/services/app-configuration.backend.service.js.map +1 -1
- package/dist/esm/config/services/app-configuration.backend.utils.d.ts +43 -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 +52 -3
- 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 +25 -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 +41 -1
- package/dist/esm/config/services/application-startup-config-validator.backend.service.js.map +1 -1
- package/dist/esm/data-seeding/services/shared/data-seed-scope-iteration.shared.utils.d.ts +2 -2
- package/dist/esm/data-seeding/services/shared/data-seed-scope-iteration.shared.utils.js +2 -2
- package/dist/esm/data-seeding/services/shared/data-seed-scope-iteration.shared.utils.js.map +1 -1
- package/dist/esm/databases/models/filter.backend.schemas.js +2 -2
- package/dist/esm/databases/models/filter.backend.schemas.js.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-authorization.backend.service.js +20 -1
- package/dist/esm/databases/services/aggregation/aggregation-authorization.backend.service.js.map +1 -1
- package/dist/esm/databases/services/postgresql-schema-plan-diff.backend.d.ts.map +1 -1
- package/dist/esm/databases/services/postgresql-schema-plan-diff.backend.js +48 -0
- package/dist/esm/databases/services/postgresql-schema-plan-diff.backend.js.map +1 -1
- package/dist/esm/databases/services/redis.service.d.ts +27 -0
- package/dist/esm/databases/services/redis.service.d.ts.map +1 -1
- package/dist/esm/databases/services/redis.service.js +29 -0
- package/dist/esm/databases/services/redis.service.js.map +1 -1
- package/dist/esm/errors/services/error-builder.backend.service.d.ts +13 -1
- package/dist/esm/errors/services/error-builder.backend.service.d.ts.map +1 -1
- package/dist/esm/errors/services/error-builder.backend.service.js +13 -1
- package/dist/esm/errors/services/error-builder.backend.service.js.map +1 -1
- package/dist/esm/errors/services/error-handler.backend.service.d.ts +70 -7
- package/dist/esm/errors/services/error-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/errors/services/error-handler.backend.service.js +134 -8
- package/dist/esm/errors/services/error-handler.backend.service.js.map +1 -1
- package/dist/esm/errors/services/rate-limit.backend.service.d.ts +66 -0
- package/dist/esm/errors/services/rate-limit.backend.service.d.ts.map +1 -1
- package/dist/esm/errors/services/rate-limit.backend.service.js +102 -25
- package/dist/esm/errors/services/rate-limit.backend.service.js.map +1 -1
- package/dist/esm/errors/utils/error-log-level-classification.backend.utils.d.ts +5 -0
- package/dist/esm/errors/utils/error-log-level-classification.backend.utils.d.ts.map +1 -1
- package/dist/esm/errors/utils/error-log-level-classification.backend.utils.js +25 -0
- package/dist/esm/errors/utils/error-log-level-classification.backend.utils.js.map +1 -1
- package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.d.ts +33 -0
- package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.d.ts.map +1 -1
- package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.js +40 -0
- package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.js.map +1 -1
- package/dist/esm/external-data/controllers/external-data-admin.backend.contracts.d.ts +41 -0
- package/dist/esm/external-data/controllers/external-data-admin.backend.contracts.d.ts.map +1 -0
- package/dist/esm/external-data/controllers/external-data-admin.backend.contracts.js +40 -0
- package/dist/esm/external-data/controllers/external-data-admin.backend.contracts.js.map +1 -0
- package/dist/esm/external-data/controllers/external-data-admin.backend.controller.d.ts +64 -0
- package/dist/esm/external-data/controllers/external-data-admin.backend.controller.d.ts.map +1 -0
- package/dist/esm/external-data/controllers/external-data-admin.backend.controller.js +193 -0
- package/dist/esm/external-data/controllers/external-data-admin.backend.controller.js.map +1 -0
- package/dist/esm/external-data/external-data-pipeline-run.backend.service.d.ts +72 -4
- 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 +60 -19
- 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/external-data-transform.backend.js +7 -1
- package/dist/esm/external-data/external-data-transform.backend.js.map +1 -1
- package/dist/esm/external-data/models/external-data-pipeline-state.backend.schemas.d.ts +2 -0
- package/dist/esm/external-data/models/external-data-pipeline-state.backend.schemas.d.ts.map +1 -1
- package/dist/esm/external-data/models/external-data-pipeline-state.backend.schemas.js +13 -0
- package/dist/esm/external-data/models/external-data-pipeline-state.backend.schemas.js.map +1 -1
- package/dist/esm/external-providers/models/provider-selection-resolution-evidence.backend.definitions.d.ts +4 -2
- package/dist/esm/external-providers/models/provider-selection-resolution-evidence.backend.definitions.d.ts.map +1 -1
- package/dist/esm/external-providers/models/provider-selection-resolution-evidence.backend.definitions.js.map +1 -1
- package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.d.ts +256 -0
- package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.d.ts.map +1 -0
- package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.js +333 -0
- package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.js.map +1 -0
- package/dist/esm/external-providers/operations/provider-operation-request.backend.d.ts +56 -0
- package/dist/esm/external-providers/operations/provider-operation-request.backend.d.ts.map +1 -0
- package/dist/esm/external-providers/operations/provider-operation-request.backend.js +211 -0
- package/dist/esm/external-providers/operations/provider-operation-request.backend.js.map +1 -0
- package/dist/esm/external-providers/operations/provider-request-signing.backend.d.ts +45 -0
- package/dist/esm/external-providers/operations/provider-request-signing.backend.d.ts.map +1 -0
- package/dist/esm/external-providers/operations/provider-request-signing.backend.js +216 -0
- package/dist/esm/external-providers/operations/provider-request-signing.backend.js.map +1 -0
- package/dist/esm/external-providers/operations/provider-rest-call-client.backend.d.ts +56 -0
- package/dist/esm/external-providers/operations/provider-rest-call-client.backend.d.ts.map +1 -0
- package/dist/esm/external-providers/operations/provider-rest-call-client.backend.js +78 -0
- package/dist/esm/external-providers/operations/provider-rest-call-client.backend.js.map +1 -0
- package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.d.ts +1 -1
- package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.js +2 -2
- package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.js.map +1 -1
- package/dist/esm/external-providers/services/backend-provider-loader.backend.service.d.ts +89 -0
- package/dist/esm/external-providers/services/backend-provider-loader.backend.service.d.ts.map +1 -0
- package/dist/esm/external-providers/services/backend-provider-loader.backend.service.js +164 -0
- package/dist/esm/external-providers/services/backend-provider-loader.backend.service.js.map +1 -0
- package/dist/esm/external-providers/services/backend-provider-registry.backend.service.d.ts +26 -27
- package/dist/esm/external-providers/services/backend-provider-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/backend-provider-registry.backend.service.js +50 -64
- package/dist/esm/external-providers/services/backend-provider-registry.backend.service.js.map +1 -1
- package/dist/esm/external-providers/services/document-extraction.backend.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/document-extraction.backend.service.js +3 -3
- package/dist/esm/external-providers/services/document-extraction.backend.service.js.map +1 -1
- package/dist/esm/external-providers/services/embeddings.backend.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/embeddings.backend.service.js +4 -4
- package/dist/esm/external-providers/services/embeddings.backend.service.js.map +1 -1
- package/dist/esm/external-providers/services/external-providers-registry.backend.service.d.ts +306 -7
- package/dist/esm/external-providers/services/external-providers-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/external-providers-registry.backend.service.js +539 -45
- package/dist/esm/external-providers/services/external-providers-registry.backend.service.js.map +1 -1
- package/dist/esm/external-providers/services/frontend-bootstrap.backend.service.d.ts.map +1 -1
- package/dist/esm/external-providers/services/frontend-bootstrap.backend.service.js +25 -2
- package/dist/esm/external-providers/services/frontend-bootstrap.backend.service.js.map +1 -1
- package/dist/esm/files/controllers/file.controller.d.ts +24 -1
- package/dist/esm/files/controllers/file.controller.d.ts.map +1 -1
- package/dist/esm/files/controllers/file.controller.js +83 -11
- package/dist/esm/files/controllers/file.controller.js.map +1 -1
- package/dist/esm/files/handlers/file-upload-route-locals.backend.types.d.ts +17 -0
- package/dist/esm/files/handlers/file-upload-route-locals.backend.types.d.ts.map +1 -0
- package/dist/esm/files/handlers/file-upload-route-locals.backend.types.js +1 -0
- package/dist/esm/files/handlers/file-upload-route-locals.backend.types.js.map +1 -0
- package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.d.ts +5 -1
- 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 +76 -13
- package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.js.map +1 -1
- package/dist/esm/files/services/file-operation-handler.backend.service.d.ts +18 -0
- 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 +36 -28
- package/dist/esm/files/services/file-operation-handler.backend.service.js.map +1 -1
- package/dist/esm/files/services/file-scanning.backend.service.d.ts +94 -9
- package/dist/esm/files/services/file-scanning.backend.service.d.ts.map +1 -1
- package/dist/esm/files/services/file-scanning.backend.service.js +197 -17
- package/dist/esm/files/services/file-scanning.backend.service.js.map +1 -1
- package/dist/esm/files/services/file-text-extraction.backend.service.d.ts +60 -1
- package/dist/esm/files/services/file-text-extraction.backend.service.d.ts.map +1 -1
- package/dist/esm/files/services/file-text-extraction.backend.service.js +167 -8
- 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 +214 -0
- package/dist/esm/files/services/file-upload-grant.backend.service.d.ts.map +1 -0
- package/dist/esm/files/services/file-upload-grant.backend.service.js +566 -0
- package/dist/esm/files/services/file-upload-grant.backend.service.js.map +1 -0
- package/dist/esm/files/services/files.backend.service.d.ts +87 -0
- package/dist/esm/files/services/files.backend.service.d.ts.map +1 -1
- package/dist/esm/files/services/files.backend.service.js +252 -19
- package/dist/esm/files/services/files.backend.service.js.map +1 -1
- package/dist/esm/files/storage/application-storage-key.backend.utils.d.ts +109 -0
- package/dist/esm/files/storage/application-storage-key.backend.utils.d.ts.map +1 -0
- package/dist/esm/files/storage/application-storage-key.backend.utils.js +123 -0
- package/dist/esm/files/storage/application-storage-key.backend.utils.js.map +1 -0
- package/dist/esm/files/storage/file-storage-provider.types.d.ts +16 -10
- 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/local-directory-storage-provider.backend.service.d.ts +67 -8
- package/dist/esm/files/storage/local-directory-storage-provider.backend.service.d.ts.map +1 -1
- package/dist/esm/files/storage/local-directory-storage-provider.backend.service.js +101 -28
- package/dist/esm/files/storage/local-directory-storage-provider.backend.service.js.map +1 -1
- package/dist/esm/files/storage/wildo-managed-storage-provider.backend.service.d.ts.map +1 -1
- package/dist/esm/files/storage/wildo-managed-storage-provider.backend.service.js +8 -55
- package/dist/esm/files/storage/wildo-managed-storage-provider.backend.service.js.map +1 -1
- package/dist/esm/files/utils/file-field-schema-path.backend.utils.d.ts.map +1 -1
- package/dist/esm/files/utils/file-field-schema-path.backend.utils.js +20 -0
- package/dist/esm/files/utils/file-field-schema-path.backend.utils.js.map +1 -1
- package/dist/esm/files/utils/file-uploader.utils.d.ts.map +1 -1
- package/dist/esm/files/utils/file-uploader.utils.js +12 -0
- package/dist/esm/files/utils/file-uploader.utils.js.map +1 -1
- package/dist/esm/files/utils/office-document-text-extraction.backend.utils.d.ts +86 -0
- package/dist/esm/files/utils/office-document-text-extraction.backend.utils.d.ts.map +1 -0
- package/dist/esm/files/utils/office-document-text-extraction.backend.utils.js +288 -0
- package/dist/esm/files/utils/office-document-text-extraction.backend.utils.js.map +1 -0
- package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.d.ts +15 -0
- package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.js +76 -5
- package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/a2a/controllers/a2a.controller.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/controllers/a2a.controller.js +6 -1
- package/dist/esm/flows-actors/a2a/controllers/a2a.controller.js.map +1 -1
- package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.d.ts +60 -0
- package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.js +63 -0
- package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.js.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.d.ts +74 -0
- package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.js +200 -44
- package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.d.ts +7 -1
- package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.js +53 -1
- package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.d.ts +18 -0
- package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.js +18 -0
- package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a.backend.service.d.ts +12 -7
- package/dist/esm/flows-actors/a2a/services/a2a.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/a2a/services/a2a.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.d.ts +0 -13
- package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.js +14 -22
- package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.js.map +1 -1
- package/dist/esm/flows-actors/models/core-facets.backend.definitions.d.ts +8 -3
- package/dist/esm/flows-actors/models/core-facets.backend.definitions.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/core-facets.backend.definitions.js +25 -15
- package/dist/esm/flows-actors/models/core-facets.backend.definitions.js.map +1 -1
- package/dist/esm/flows-actors/models/flows-actors.backend.schemas.d.ts +13 -1
- package/dist/esm/flows-actors/models/flows-actors.backend.schemas.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/flows-actors.backend.schemas.js.map +1 -1
- package/dist/esm/flows-actors/models/function-tools.backend.definitions.d.ts +88 -8
- package/dist/esm/flows-actors/models/function-tools.backend.definitions.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/function-tools.backend.definitions.js +333 -31
- package/dist/esm/flows-actors/models/function-tools.backend.definitions.js.map +1 -1
- package/dist/esm/flows-actors/models/market-generation.actors-system.backend.definitions.d.ts.map +1 -1
- package/dist/esm/flows-actors/models/market-generation.actors-system.backend.definitions.js +4 -2
- package/dist/esm/flows-actors/models/market-generation.actors-system.backend.definitions.js.map +1 -1
- package/dist/esm/flows-actors/models/mcp-client.backend.definitions.d.ts +113 -0
- package/dist/esm/flows-actors/models/mcp-client.backend.definitions.d.ts.map +1 -0
- package/dist/esm/flows-actors/models/mcp-client.backend.definitions.js +62 -0
- package/dist/esm/flows-actors/models/mcp-client.backend.definitions.js.map +1 -0
- package/dist/esm/flows-actors/services/actors-system.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/actors-system.backend.service.js +0 -2
- package/dist/esm/flows-actors/services/actors-system.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/services/agents.backend.service.d.ts +107 -1
- package/dist/esm/flows-actors/services/agents.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/agents.backend.service.js +519 -56
- package/dist/esm/flows-actors/services/agents.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/services/conversational-execution.backend.service.d.ts +5 -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 +79 -16
- package/dist/esm/flows-actors/services/conversational-execution.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/services/flows-actors-registry.service.d.ts +34 -5
- package/dist/esm/flows-actors/services/flows-actors-registry.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/flows-actors-registry.service.js +154 -20
- package/dist/esm/flows-actors/services/flows-actors-registry.service.js.map +1 -1
- package/dist/esm/flows-actors/services/flows.backend.services.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/flows.backend.services.js +27 -23
- package/dist/esm/flows-actors/services/flows.backend.services.js.map +1 -1
- package/dist/esm/flows-actors/services/llm-observability-agent-call-trace-sink.backend.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/llm-observability-agent-call-trace-sink.backend.js +7 -1
- package/dist/esm/flows-actors/services/llm-observability-agent-call-trace-sink.backend.js.map +1 -1
- package/dist/esm/flows-actors/services/mcp-client.backend.service.d.ts +90 -0
- package/dist/esm/flows-actors/services/mcp-client.backend.service.d.ts.map +1 -0
- package/dist/esm/flows-actors/services/mcp-client.backend.service.js +368 -0
- package/dist/esm/flows-actors/services/mcp-client.backend.service.js.map +1 -0
- package/dist/esm/flows-actors/services/prompt-compiler.backend.service.d.ts +9 -5
- package/dist/esm/flows-actors/services/prompt-compiler.backend.service.d.ts.map +1 -1
- package/dist/esm/flows-actors/services/prompt-compiler.backend.service.js +12 -17
- package/dist/esm/flows-actors/services/prompt-compiler.backend.service.js.map +1 -1
- package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.d.ts +151 -41
- 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 +308 -143
- package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.js.map +1 -1
- package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.d.ts +0 -207
- package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.d.ts.map +1 -1
- package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.js +8 -243
- package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.js.map +1 -1
- package/dist/esm/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.d.ts.map +1 -1
- package/dist/esm/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.js.map +1 -1
- package/dist/esm/guidance/services/milestone-evaluator.backend.service.d.ts +9 -14
- package/dist/esm/guidance/services/milestone-evaluator.backend.service.d.ts.map +1 -1
- package/dist/esm/guidance/services/milestone-evaluator.backend.service.js +18 -89
- package/dist/esm/guidance/services/milestone-evaluator.backend.service.js.map +1 -1
- package/dist/esm/guidance/services/progression-state-store.backend.service.d.ts +86 -0
- package/dist/esm/guidance/services/progression-state-store.backend.service.d.ts.map +1 -0
- package/dist/esm/guidance/services/progression-state-store.backend.service.js +155 -0
- package/dist/esm/guidance/services/progression-state-store.backend.service.js.map +1 -0
- package/dist/esm/i18n/controllers/i18n-controller.backend.service.d.ts +10 -0
- package/dist/esm/i18n/controllers/i18n-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/i18n/controllers/i18n-controller.backend.service.js +55 -5
- package/dist/esm/i18n/controllers/i18n-controller.backend.service.js.map +1 -1
- package/dist/esm/index.d.ts +15 -5
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +45 -5
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/inject/models/container.d.ts.map +1 -1
- package/dist/esm/inject/models/container.js +82 -10
- package/dist/esm/inject/models/container.js.map +1 -1
- package/dist/esm/inject/models/service-types.d.ts +20 -3
- package/dist/esm/inject/models/service-types.d.ts.map +1 -1
- package/dist/esm/inject/models/service-types.js +21 -3
- package/dist/esm/inject/models/service-types.js.map +1 -1
- package/dist/esm/mcp/controllers/mcp.controller.d.ts.map +1 -1
- package/dist/esm/mcp/controllers/mcp.controller.js +32 -4
- package/dist/esm/mcp/controllers/mcp.controller.js.map +1 -1
- package/dist/esm/mcp/models/mcp-tool.backend.schemas.d.ts +34 -0
- package/dist/esm/mcp/models/mcp-tool.backend.schemas.d.ts.map +1 -1
- package/dist/esm/mcp/models/mcp-tool.backend.schemas.js +42 -0
- package/dist/esm/mcp/models/mcp-tool.backend.schemas.js.map +1 -1
- package/dist/esm/mcp/services/mcp-server.backend.service.d.ts +84 -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 +235 -11
- package/dist/esm/mcp/services/mcp-server.backend.service.js.map +1 -1
- package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.d.ts +64 -2
- 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 +152 -6
- package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.js.map +1 -1
- package/dist/esm/monitoring/analytics/controllers/analytics.backend.controller.d.ts.map +1 -1
- package/dist/esm/monitoring/analytics/controllers/analytics.backend.controller.js +49 -4
- package/dist/esm/monitoring/analytics/controllers/analytics.backend.controller.js.map +1 -1
- package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.d.ts +66 -0
- package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.d.ts.map +1 -0
- package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.js +199 -0
- package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.js.map +1 -0
- package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.d.ts +149 -13
- package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.d.ts.map +1 -1
- package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.js +411 -19
- package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.js.map +1 -1
- package/dist/esm/monitoring/analytics/services/value-moment-handler-registry.backend.service.d.ts +11 -2
- package/dist/esm/monitoring/analytics/services/value-moment-handler-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/monitoring/analytics/services/value-moment-handler-registry.backend.service.js.map +1 -1
- package/dist/esm/monitoring/logger/models/logger.backend.schemas.d.ts +28 -9
- package/dist/esm/monitoring/logger/models/logger.backend.schemas.d.ts.map +1 -1
- package/dist/esm/monitoring/logger/models/logger.backend.schemas.js +30 -10
- package/dist/esm/monitoring/logger/models/logger.backend.schemas.js.map +1 -1
- package/dist/esm/monitoring/logger/services/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 +52 -11
- package/dist/esm/monitoring/logger/services/logger.service.js.map +1 -1
- package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.d.ts +62 -0
- package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.d.ts.map +1 -0
- package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.js +78 -0
- package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.js.map +1 -0
- package/dist/esm/monitoring/observability/audit-observation-emission.backend.d.ts +309 -0
- package/dist/esm/monitoring/observability/audit-observation-emission.backend.d.ts.map +1 -0
- package/dist/esm/monitoring/observability/audit-observation-emission.backend.js +385 -0
- package/dist/esm/monitoring/observability/audit-observation-emission.backend.js.map +1 -0
- package/dist/esm/monitoring/observability/models/observability.backend.schemas.d.ts +1 -0
- package/dist/esm/monitoring/observability/models/observability.backend.schemas.d.ts.map +1 -1
- package/dist/esm/monitoring/observability/models/observability.backend.schemas.js.map +1 -1
- package/dist/esm/monitoring/observability/services/metrics.service.d.ts +21 -0
- package/dist/esm/monitoring/observability/services/metrics.service.d.ts.map +1 -1
- package/dist/esm/monitoring/observability/services/metrics.service.js +38 -0
- package/dist/esm/monitoring/observability/services/metrics.service.js.map +1 -1
- package/dist/esm/notifications/email/models/email-context-provider.interface.d.ts +0 -80
- package/dist/esm/notifications/email/models/email-context-provider.interface.d.ts.map +0 -1
- package/dist/esm/notifications/email/models/email-context-provider.interface.js +0 -25
- package/dist/esm/notifications/email/models/email-context-provider.interface.js.map +0 -1
- package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.d.ts +0 -49
- package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.d.ts.map +0 -1
- package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.js +0 -141
- package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.js.map +0 -1
- package/dist/esm/notifications/email/services/email-template-compiler.backend.service.d.ts +0 -37
- package/dist/esm/notifications/email/services/email-template-compiler.backend.service.d.ts.map +0 -1
- package/dist/esm/notifications/email/services/email-template-compiler.backend.service.js +0 -121
- package/dist/esm/notifications/email/services/email-template-compiler.backend.service.js.map +0 -1
- package/dist/esm/notifications/email/services/email-template-registry.backend.service.d.ts +66 -1
- package/dist/esm/notifications/email/services/email-template-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/email/services/email-template-registry.backend.service.js +105 -10
- package/dist/esm/notifications/email/services/email-template-registry.backend.service.js.map +1 -1
- package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.d.ts +0 -58
- package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.d.ts.map +0 -1
- package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.js +0 -223
- package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.js.map +0 -1
- package/dist/esm/notifications/email/services/email-template-validator.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/email/services/email-template-validator.backend.service.js +10 -1
- package/dist/esm/notifications/email/services/email-template-validator.backend.service.js.map +1 -1
- package/dist/esm/notifications/email/services/email.backend.service.d.ts +60 -4
- package/dist/esm/notifications/email/services/email.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/email/services/email.backend.service.js +145 -43
- package/dist/esm/notifications/email/services/email.backend.service.js.map +1 -1
- package/dist/esm/notifications/email/utils/color-conversion.utils.d.ts +0 -1
- package/dist/esm/notifications/email/utils/color-conversion.utils.d.ts.map +1 -1
- package/dist/esm/notifications/email/utils/color-conversion.utils.js.map +1 -1
- package/dist/esm/notifications/services/notification-badge.backend.service.d.ts +142 -21
- package/dist/esm/notifications/services/notification-badge.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/services/notification-badge.backend.service.js +283 -58
- package/dist/esm/notifications/services/notification-badge.backend.service.js.map +1 -1
- package/dist/esm/notifications/services/notifications-dispatcher.backend.service.d.ts +108 -13
- package/dist/esm/notifications/services/notifications-dispatcher.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/services/notifications-dispatcher.backend.service.js +432 -101
- package/dist/esm/notifications/services/notifications-dispatcher.backend.service.js.map +1 -1
- package/dist/esm/notifications/sms/services/sms.backend.service.d.ts +2 -2
- package/dist/esm/notifications/sms/services/sms.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/sms/services/sms.backend.service.js +5 -5
- package/dist/esm/notifications/sms/services/sms.backend.service.js.map +1 -1
- package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.d.ts +117 -5
- package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.js +164 -6
- package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.js.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.d.ts +0 -6
- package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.js +54 -7
- 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 +5 -5
- package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.utils.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.utils.js +14 -13
- package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.utils.js.map +1 -1
- package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.d.ts +2 -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 +18 -8
- package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.js.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 +20 -18
- package/dist/esm/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.d.ts +16 -0
- package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.d.ts.map +1 -1
- package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.js +18 -0
- package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.js.map +1 -1
- package/dist/esm/organizations/batches/organization-purge.batch.backend.service.d.ts +2 -2
- package/dist/esm/organizations/batches/organization-purge.batch.backend.service.js +2 -2
- package/dist/esm/organizations/batches/organization-purge.batch.backend.service.js.map +1 -1
- package/dist/esm/organizations/services/organization-custom-implementation.backend.service.d.ts.map +1 -1
- package/dist/esm/organizations/services/organization-custom-implementation.backend.service.js +63 -2
- package/dist/esm/organizations/services/organization-custom-implementation.backend.service.js.map +1 -1
- package/dist/esm/organizations/services/organization-unit-custom-implementation.backend.service.d.ts.map +1 -1
- package/dist/esm/organizations/services/organization-unit-custom-implementation.backend.service.js +4 -1
- package/dist/esm/organizations/services/organization-unit-custom-implementation.backend.service.js.map +1 -1
- package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.d.ts +66 -0
- package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.d.ts.map +1 -0
- package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.js +257 -0
- package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.js.map +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.binding.d.ts +12 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.binding.d.ts.map +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.binding.js +47 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.binding.js.map +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.interface.d.ts +87 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.interface.d.ts.map +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.interface.js +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.interface.js.map +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.options.d.ts +31 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.options.d.ts.map +1 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.options.js +13 -0
- package/dist/esm/queue/adapters/queue-adapter.backend.options.js.map +1 -0
- package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.d.ts +19 -25
- package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.js +33 -0
- package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.js.map +1 -1
- package/dist/esm/queue/domain-queue-consumer.backend.service.d.ts +2 -2
- package/dist/esm/queue/domain-queue-consumer.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/domain-queue-consumer.backend.service.js +1 -4
- package/dist/esm/queue/domain-queue-consumer.backend.service.js.map +1 -1
- package/dist/esm/queue/job-consumer.backend.service.d.ts +2 -2
- package/dist/esm/queue/job-consumer.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/job-consumer.backend.service.js +1 -4
- package/dist/esm/queue/job-consumer.backend.service.js.map +1 -1
- package/dist/esm/queue/job-executor.backend.service.d.ts +2 -2
- package/dist/esm/queue/job-executor.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/job-executor.backend.service.js +1 -4
- package/dist/esm/queue/job-executor.backend.service.js.map +1 -1
- package/dist/esm/queue/queue-monitoring.backend.service.d.ts +8 -4
- package/dist/esm/queue/queue-monitoring.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/queue-monitoring.backend.service.js +25 -17
- package/dist/esm/queue/queue-monitoring.backend.service.js.map +1 -1
- package/dist/esm/queue/queue-worker-initializer.backend.service.d.ts +16 -1
- package/dist/esm/queue/queue-worker-initializer.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/queue-worker-initializer.backend.service.js +16 -1
- package/dist/esm/queue/queue-worker-initializer.backend.service.js.map +1 -1
- package/dist/esm/queue/queue.backend.service.d.ts +3 -3
- package/dist/esm/queue/queue.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/queue.backend.service.js +26 -4
- package/dist/esm/queue/queue.backend.service.js.map +1 -1
- package/dist/esm/queue/worker-shutdown-manager.backend.service.d.ts +2 -2
- package/dist/esm/queue/worker-shutdown-manager.backend.service.d.ts.map +1 -1
- package/dist/esm/queue/worker-shutdown-manager.backend.service.js +18 -3
- package/dist/esm/queue/worker-shutdown-manager.backend.service.js.map +1 -1
- package/dist/esm/rag/utils/rag-chunking.backend.utils.d.ts +50 -25
- package/dist/esm/rag/utils/rag-chunking.backend.utils.d.ts.map +1 -1
- package/dist/esm/rag/utils/rag-chunking.backend.utils.js +147 -39
- package/dist/esm/rag/utils/rag-chunking.backend.utils.js.map +1 -1
- package/dist/esm/rag/utils/rag-context-assembly.backend.utils.d.ts +12 -3
- package/dist/esm/rag/utils/rag-context-assembly.backend.utils.d.ts.map +1 -1
- package/dist/esm/rag/utils/rag-context-assembly.backend.utils.js +12 -3
- package/dist/esm/rag/utils/rag-context-assembly.backend.utils.js.map +1 -1
- package/dist/esm/requests/service/websocket.service.d.ts +9 -0
- package/dist/esm/requests/service/websocket.service.d.ts.map +1 -1
- package/dist/esm/requests/service/websocket.service.js +88 -15
- package/dist/esm/requests/service/websocket.service.js.map +1 -1
- package/dist/esm/resources/models/custom-service-implementations.backend.definition.d.ts.map +1 -1
- package/dist/esm/resources/models/custom-service-implementations.backend.definition.js +16 -2
- package/dist/esm/resources/models/custom-service-implementations.backend.definition.js.map +1 -1
- package/dist/esm/resources/models/resources-operations.backend.definitions.d.ts.map +1 -1
- package/dist/esm/resources/models/resources-operations.backend.definitions.js +2 -0
- package/dist/esm/resources/models/resources-operations.backend.definitions.js.map +1 -1
- package/dist/esm/resources/models/resources-relationships.backend.definitions.d.ts.map +1 -1
- package/dist/esm/resources/models/resources-relationships.backend.definitions.js +14 -0
- package/dist/esm/resources/models/resources-relationships.backend.definitions.js.map +1 -1
- package/dist/esm/resources/models/resources-types.backend.schemas.d.ts +2 -1
- package/dist/esm/resources/models/resources-types.backend.schemas.d.ts.map +1 -1
- package/dist/esm/resources/models/resources-types.backend.schemas.js +8 -0
- package/dist/esm/resources/models/resources-types.backend.schemas.js.map +1 -1
- package/dist/esm/resources/services/resource-id.backend.service.js +3 -3
- package/dist/esm/resources/services/resource-id.backend.service.js.map +1 -1
- package/dist/esm/resources/services/resources-registry.backend.service.d.ts +60 -5
- package/dist/esm/resources/services/resources-registry.backend.service.d.ts.map +1 -1
- package/dist/esm/resources/services/resources-registry.backend.service.js +91 -7
- package/dist/esm/resources/services/resources-registry.backend.service.js.map +1 -1
- package/dist/esm/runtime/controllers/health-controller.backend.service.d.ts +36 -3
- package/dist/esm/runtime/controllers/health-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/runtime/controllers/health-controller.backend.service.js +32 -10
- package/dist/esm/runtime/controllers/health-controller.backend.service.js.map +1 -1
- package/dist/esm/runtime/domain-module.backend.definitions.d.ts +24 -0
- package/dist/esm/runtime/domain-module.backend.definitions.d.ts.map +1 -1
- package/dist/esm/runtime/domain-module.backend.definitions.js +24 -0
- package/dist/esm/runtime/domain-module.backend.definitions.js.map +1 -1
- package/dist/esm/runtime/services/execution-context-creator.backend.service.d.ts.map +1 -1
- package/dist/esm/runtime/services/execution-context-creator.backend.service.js +13 -7
- package/dist/esm/runtime/services/execution-context-creator.backend.service.js.map +1 -1
- package/dist/esm/runtime/services/health-readiness-contributor.backend.interface.d.ts +51 -0
- package/dist/esm/runtime/services/health-readiness-contributor.backend.interface.d.ts.map +1 -1
- package/dist/esm/runtime/services/health-readiness-contributor.backend.interface.js.map +1 -1
- package/dist/esm/runtime/services/http-server.backend.service.d.ts +26 -0
- package/dist/esm/runtime/services/http-server.backend.service.d.ts.map +1 -1
- package/dist/esm/runtime/services/http-server.backend.service.js +181 -1
- package/dist/esm/runtime/services/http-server.backend.service.js.map +1 -1
- package/dist/esm/runtime/services/start-application.backend.service.d.ts +47 -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 +343 -77
- package/dist/esm/runtime/services/start-application.backend.service.js.map +1 -1
- package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.d.ts +15 -0
- package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.js +28 -0
- package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.d.ts +5 -1
- package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.js +24 -4
- package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/controllers/authentication-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/controllers/authentication-controller.backend.service.js +29 -4
- package/dist/esm/security/authentications/controllers/authentication-controller.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.d.ts +114 -0
- package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.js +354 -3
- package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/models/cimd.backend.schemas.d.ts +1 -0
- package/dist/esm/security/authentications/models/cimd.backend.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/models/cimd.backend.schemas.js +22 -0
- package/dist/esm/security/authentications/models/cimd.backend.schemas.js.map +1 -1
- package/dist/esm/security/authentications/models/jwt.backend.schemas.d.ts +3 -23
- package/dist/esm/security/authentications/models/jwt.backend.schemas.d.ts.map +1 -1
- package/dist/esm/security/authentications/models/jwt.backend.schemas.js +20 -45
- package/dist/esm/security/authentications/models/jwt.backend.schemas.js.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/services/admin-config/auth-organization-configuration.service.d.ts +0 -2
- package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.js +23 -14
- package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.js.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.d.ts +0 -1
- package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.js +15 -12
- package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.d.ts +113 -3
- package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.js +207 -30
- package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.d.ts +95 -2
- package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.js +153 -9
- package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/anonymous-session.backend.service.d.ts +190 -0
- package/dist/esm/security/authentications/services/anonymous-session.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/anonymous-session.backend.service.js +377 -53
- package/dist/esm/security/authentications/services/anonymous-session.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.d.ts +9 -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 +77 -2
- 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-mfa.backend.service.js +5 -3
- package/dist/esm/security/authentications/services/auth-methods/auth-mfa.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.d.ts +41 -0
- package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.js +202 -23
- package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/oauth2-authentication.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/oauth2-authentication.backend.service.js +42 -1
- 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.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service.js +34 -4
- package/dist/esm/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.d.ts +29 -5
- package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.js +77 -5
- package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.d.ts +41 -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 +87 -4
- package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.d.ts +43 -1
- package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.js +277 -97
- package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.d.ts +28 -5
- package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.js +72 -12
- package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/custom-impls/auth-custom-implementations.backend.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/custom-impls/auth-custom-implementations.backend.js +3 -0
- package/dist/esm/security/authentications/services/custom-impls/auth-custom-implementations.backend.js.map +1 -1
- package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.d.ts +28 -0
- package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.d.ts.map +1 -0
- package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.js +283 -0
- package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.js.map +1 -0
- package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.d.ts +4 -3
- package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.js +4 -3
- package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.d.ts +35 -0
- package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.js +111 -21
- package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.d.ts +14 -1
- package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.js +49 -8
- package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/utils/auth-policy-resolution.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/auth-policy-resolution.backend.utils.js +4 -0
- package/dist/esm/security/authentications/services/utils/auth-policy-resolution.backend.utils.js.map +1 -1
- package/dist/esm/security/authentications/services/utils/auth-user-lookup.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/auth-user-lookup.backend.service.js +6 -0
- package/dist/esm/security/authentications/services/utils/auth-user-lookup.backend.service.js.map +1 -1
- package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.d.ts +37 -1
- package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.js +51 -0
- package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.js.map +1 -1
- package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.d.ts +41 -0
- package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.js +45 -0
- package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.js.map +1 -1
- package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.d.ts +116 -0
- package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.d.ts.map +1 -0
- package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.js +162 -0
- package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.js.map +1 -0
- package/dist/esm/security/authorizations/initiator-organization-confinement.backend.d.ts.map +1 -1
- package/dist/esm/security/authorizations/initiator-organization-confinement.backend.js +24 -1
- package/dist/esm/security/authorizations/initiator-organization-confinement.backend.js.map +1 -1
- package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.d.ts +20 -20
- package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.js +27 -28
- package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.js.map +1 -1
- package/dist/esm/security/authorizations/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 +77 -3
- 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 +117 -0
- package/dist/esm/security/authorizations/privileged-access-review.backend.utils.d.ts.map +1 -0
- package/dist/esm/security/authorizations/privileged-access-review.backend.utils.js +104 -0
- package/dist/esm/security/authorizations/privileged-access-review.backend.utils.js.map +1 -0
- package/dist/esm/security/authorizations/role-ceiling.backend.utils.d.ts +4 -0
- package/dist/esm/security/authorizations/role-ceiling.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authorizations/role-ceiling.backend.utils.js +4 -0
- package/dist/esm/security/authorizations/role-ceiling.backend.utils.js.map +1 -1
- package/dist/esm/security/authorizations/role-conferral.backend.utils.d.ts +93 -0
- package/dist/esm/security/authorizations/role-conferral.backend.utils.d.ts.map +1 -0
- package/dist/esm/security/authorizations/role-conferral.backend.utils.js +95 -0
- package/dist/esm/security/authorizations/role-conferral.backend.utils.js.map +1 -0
- package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.d.ts +124 -1
- package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.d.ts.map +1 -1
- package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.js +142 -5
- package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.js.map +1 -1
- package/dist/esm/security/authorizations/services/authorizations.backend.service.d.ts +175 -14
- package/dist/esm/security/authorizations/services/authorizations.backend.service.d.ts.map +1 -1
- package/dist/esm/security/authorizations/services/authorizations.backend.service.js +385 -49
- package/dist/esm/security/authorizations/services/authorizations.backend.service.js.map +1 -1
- package/dist/esm/security/authorizations/super-admin-floor.backend.utils.d.ts +6 -14
- package/dist/esm/security/authorizations/super-admin-floor.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/authorizations/super-admin-floor.backend.utils.js +13 -22
- package/dist/esm/security/authorizations/super-admin-floor.backend.utils.js.map +1 -1
- package/dist/esm/security/connected-accounts/connection-target-authorization.backend.d.ts +60 -0
- package/dist/esm/security/connected-accounts/connection-target-authorization.backend.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/connection-target-authorization.backend.js +79 -0
- package/dist/esm/security/connected-accounts/connection-target-authorization.backend.js.map +1 -0
- package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.d.ts +161 -0
- package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.js +512 -0
- package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.d.ts +59 -0
- package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.js +22 -0
- package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.js.map +1 -0
- package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.d.ts +44 -0
- package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.js +20 -0
- package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.d.ts +191 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.js +385 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.d.ts +41 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.js +358 -0
- package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.d.ts +160 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.js +266 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.d.ts +111 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.js +107 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.d.ts +54 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.js +153 -0
- package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.d.ts +195 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.js +387 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.d.ts +45 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.js +291 -0
- package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.js.map +1 -0
- package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.d.ts +62 -0
- package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.js +29 -0
- package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.js.map +1 -0
- package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.d.ts +127 -0
- package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.js +277 -0
- package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.js.map +1 -0
- package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.d.ts +66 -0
- package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.d.ts.map +1 -0
- package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.js +75 -0
- package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.js.map +1 -0
- package/dist/esm/security/consumable-tokens/batches/consumable-tokens-cleanup.batch.backend.service.d.ts +18 -1
- package/dist/esm/security/consumable-tokens/batches/consumable-tokens-cleanup.batch.backend.service.d.ts.map +1 -1
- package/dist/esm/security/consumable-tokens/batches/consumable-tokens-cleanup.batch.backend.service.js +110 -74
- package/dist/esm/security/consumable-tokens/batches/consumable-tokens-cleanup.batch.backend.service.js.map +1 -1
- package/dist/esm/security/consumable-tokens/consumable-token-models.exports.d.ts +22 -0
- package/dist/esm/security/consumable-tokens/consumable-token-models.exports.d.ts.map +1 -0
- package/dist/esm/security/consumable-tokens/consumable-token-models.exports.js +22 -0
- package/dist/esm/security/consumable-tokens/consumable-token-models.exports.js.map +1 -0
- package/dist/esm/security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas.d.ts +17 -3
- 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.backend.resources-config.schemas.js +12 -0
- package/dist/esm/security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas.js.map +1 -1
- package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.d.ts +41 -3
- package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.d.ts.map +1 -1
- package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.js +83 -20
- package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.js.map +1 -1
- package/dist/esm/security/credential-rotation-grace.backend.utils.d.ts +9 -4
- package/dist/esm/security/credential-rotation-grace.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/credential-rotation-grace.backend.utils.js +9 -4
- package/dist/esm/security/credential-rotation-grace.backend.utils.js.map +1 -1
- package/dist/esm/security/jwt/services/jwt.backend.service.d.ts.map +1 -1
- package/dist/esm/security/jwt/services/jwt.backend.service.js +1 -18
- package/dist/esm/security/jwt/services/jwt.backend.service.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.d.ts +26 -0
- package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.js +43 -0
- package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.js.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.d.ts +8 -1
- package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.d.ts.map +1 -1
- package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.js +49 -0
- package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.js.map +1 -1
- package/dist/esm/security/scim/controllers/scim.backend.controller.d.ts.map +1 -1
- package/dist/esm/security/scim/controllers/scim.backend.controller.js +17 -5
- package/dist/esm/security/scim/controllers/scim.backend.controller.js.map +1 -1
- package/dist/esm/security/scim/models/scim-protocol.backend.schemas.d.ts +67 -29
- package/dist/esm/security/scim/models/scim-protocol.backend.schemas.d.ts.map +1 -1
- package/dist/esm/security/scim/models/scim-protocol.backend.schemas.js +47 -25
- package/dist/esm/security/scim/models/scim-protocol.backend.schemas.js.map +1 -1
- package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.d.ts +10 -2
- package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.d.ts.map +1 -1
- package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.js +10 -2
- package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.js.map +1 -1
- package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.d.ts +143 -0
- package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.d.ts.map +1 -0
- package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.js +258 -0
- package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.js.map +1 -0
- package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.d.ts +39 -0
- package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.d.ts.map +1 -0
- package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.js +159 -0
- package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +17 -9
- package/dist/esm/.builder.pid +0 -9
|
@@ -1,181 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* App-neutral canonical JSON
|
|
3
|
-
*/
|
|
4
|
-
import { createHash } from 'node:crypto';
|
|
5
|
-
/** Canonical bytes for one content-addressed semantic artifact. */
|
|
6
|
-
export function canonicalArtifactJsonBytes(value) {
|
|
7
|
-
return Buffer.from(canonicalizeMetaWorkflowJson(value), 'utf8');
|
|
8
|
-
}
|
|
9
|
-
/** Deterministic UUID-v4-shaped identity for replay-stable semantic records. */
|
|
10
|
-
export function deriveMetaWorkflowLowercaseUuidV4(scope, value) {
|
|
11
|
-
const bytes = createHash('sha256').update(`${scope}\0${value}`, 'utf8').digest().subarray(0, 16);
|
|
12
|
-
bytes[6] = (bytes[6] & 0x0f) | 0x40;
|
|
13
|
-
bytes[8] = (bytes[8] & 0x3f) | 0x80;
|
|
14
|
-
const hex = bytes.toString('hex');
|
|
15
|
-
return `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20)}`;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Literal domain separators for every digest-bearing portable meta-workflow
|
|
19
|
-
* record.
|
|
20
|
-
*
|
|
21
|
-
* This enum is deliberately exhaustive and is the sole runtime source for
|
|
22
|
-
* these strings. A new digest-bearing record must extend both this enum and
|
|
23
|
-
* {@link META_WORKFLOW_SEMANTIC_DIGEST_POLICIES}; reusing a nearby domain
|
|
24
|
-
* would collapse two semantically distinct identities.
|
|
25
|
-
*/
|
|
26
|
-
export var MetaWorkflowSemanticDigestDomain;
|
|
27
|
-
(function (MetaWorkflowSemanticDigestDomain) {
|
|
28
|
-
MetaWorkflowSemanticDigestDomain["PROVIDER_USAGE_PRICING_AUTHORITY"] = "wildo:provider-usage-pricing-authority:v1";
|
|
29
|
-
MetaWorkflowSemanticDigestDomain["WORK_CYCLE_BUDGET_ALLOCATION"] = "wildo:work-cycle-budget-allocation:v1";
|
|
30
|
-
MetaWorkflowSemanticDigestDomain["DRIVER_INVOCATION_RESOURCE_AUTHORITY"] = "wildo:driver-invocation-resource-authority:v1";
|
|
31
|
-
MetaWorkflowSemanticDigestDomain["WORK_CYCLE_BUDGET_RESERVATION"] = "wildo:work-cycle-budget-reservation:v1";
|
|
32
|
-
MetaWorkflowSemanticDigestDomain["WORK_CYCLE_BUDGET_SETTLEMENT"] = "wildo:work-cycle-budget-settlement:v1";
|
|
33
|
-
MetaWorkflowSemanticDigestDomain["BUDGET_RESERVATION_VERIFICATION"] = "wildo:budget-reservation-verification:v1";
|
|
34
|
-
MetaWorkflowSemanticDigestDomain["WORK_CYCLE_BUDGET_CONTINUATION_POLICY"] = "wildo:work-cycle-budget-continuation-policy:v1";
|
|
35
|
-
MetaWorkflowSemanticDigestDomain["WORK_CYCLE_BUDGET_BALANCE"] = "wildo:work-cycle-budget-balance:v1";
|
|
36
|
-
MetaWorkflowSemanticDigestDomain["WORK_CYCLE_BUDGET_STOP"] = "wildo:work-cycle-budget-stop:v1";
|
|
37
|
-
MetaWorkflowSemanticDigestDomain["WORK_CYCLE_BUDGET_CONTINUATION_DECISION"] = "wildo:work-cycle-budget-continuation-decision:v1";
|
|
38
|
-
MetaWorkflowSemanticDigestDomain["WORK_CYCLE_RECOVERY_RELATION"] = "wildo:work-cycle-recovery-relation:v1";
|
|
39
|
-
MetaWorkflowSemanticDigestDomain["WORK_CYCLE_RECOVERY_AUTHORIZATION"] = "wildo:work-cycle-recovery-authorization:v1";
|
|
40
|
-
MetaWorkflowSemanticDigestDomain["MODEL_INVOCATION_CAPACITY"] = "wildo:model-invocation-capacity:v1";
|
|
41
|
-
MetaWorkflowSemanticDigestDomain["STRUCTURED_GENERATION_PLAN"] = "wildo:structured-generation-plan:v1";
|
|
42
|
-
MetaWorkflowSemanticDigestDomain["ACTION_DEFINITION"] = "wildo:meta-workflow-action-definition:v1";
|
|
43
|
-
MetaWorkflowSemanticDigestDomain["STRUCTURED_ARTIFACT_ACTION_DEFINITION"] = "wildo:meta-workflow-structured-artifact-action-definition:v1";
|
|
44
|
-
MetaWorkflowSemanticDigestDomain["MODEL_INVOCATION_RETRY_POLICY"] = "wildo:meta-workflow-model-invocation-retry-policy:v1";
|
|
45
|
-
MetaWorkflowSemanticDigestDomain["ACTION_BINDING"] = "wildo:meta-workflow-action-binding:v1";
|
|
46
|
-
MetaWorkflowSemanticDigestDomain["DRIVER_DESCRIPTOR"] = "wildo:meta-workflow-driver-descriptor:v1";
|
|
47
|
-
MetaWorkflowSemanticDigestDomain["DRIVER_REQUEST"] = "wildo:meta-workflow-driver-request:v1";
|
|
48
|
-
MetaWorkflowSemanticDigestDomain["DRIVER_ADMISSION"] = "wildo:meta-workflow-driver-admission:v1";
|
|
49
|
-
MetaWorkflowSemanticDigestDomain["DRIVER_CHECKPOINT"] = "wildo:meta-workflow-driver-checkpoint:v1";
|
|
50
|
-
MetaWorkflowSemanticDigestDomain["DRIVER_RESULT"] = "wildo:meta-workflow-driver-result:v1";
|
|
51
|
-
MetaWorkflowSemanticDigestDomain["STRUCTURED_ARTIFACT_MODEL_INVOCATION_RECEIPT"] = "wildo:meta-workflow-structured-artifact-model-invocation-receipt:v1";
|
|
52
|
-
MetaWorkflowSemanticDigestDomain["NORMALIZED_ACTION_OUTCOME"] = "wildo:meta-workflow-normalized-action-outcome:v1";
|
|
53
|
-
MetaWorkflowSemanticDigestDomain["SEALED_ARTIFACT_SET"] = "wildo:meta-workflow-sealed-artifact-set:v1";
|
|
54
|
-
MetaWorkflowSemanticDigestDomain["OUTPUT_CONTRACT_VALIDATION_RECEIPT"] = "wildo:meta-workflow-output-contract-validation-receipt:v1";
|
|
55
|
-
MetaWorkflowSemanticDigestDomain["DECISION_POINT_DEFINITION"] = "wildo:meta-workflow-decision-point-definition:v1";
|
|
56
|
-
MetaWorkflowSemanticDigestDomain["EVALUATION_CRITERION_DEFINITION"] = "wildo:meta-workflow-evaluation-criterion-definition:v1";
|
|
57
|
-
MetaWorkflowSemanticDigestDomain["EVALUATION_PROTOCOL_DEFINITION"] = "wildo:meta-workflow-evaluation-protocol-definition:v1";
|
|
58
|
-
MetaWorkflowSemanticDigestDomain["EVALUATION_TREATMENT_DEFINITION"] = "wildo:meta-workflow-evaluation-treatment-definition:v1";
|
|
59
|
-
MetaWorkflowSemanticDigestDomain["EVIDENCE_REQUIREMENT"] = "wildo:meta-workflow-evidence-requirement:v1";
|
|
60
|
-
MetaWorkflowSemanticDigestDomain["EVIDENCE_ASSESSMENT_RECEIPT"] = "wildo:meta-workflow-evidence-assessment-receipt:v1";
|
|
61
|
-
MetaWorkflowSemanticDigestDomain["SEALED_EVIDENCE_SET"] = "wildo:meta-workflow-sealed-evidence-set:v1";
|
|
62
|
-
MetaWorkflowSemanticDigestDomain["EVALUATOR_DESCRIPTOR"] = "wildo:meta-workflow-evaluator-descriptor:v1";
|
|
63
|
-
MetaWorkflowSemanticDigestDomain["EVALUATOR_BINDING_POLICY"] = "wildo:meta-workflow-evaluator-binding-policy:v1";
|
|
64
|
-
MetaWorkflowSemanticDigestDomain["EVALUATOR_BINDING"] = "wildo:meta-workflow-evaluator-binding:v1";
|
|
65
|
-
MetaWorkflowSemanticDigestDomain["EVALUATOR_SELECTION_DECISION"] = "wildo:meta-workflow-evaluator-selection-decision:v1";
|
|
66
|
-
MetaWorkflowSemanticDigestDomain["EVALUATOR_EXECUTION_RESULT"] = "wildo:meta-workflow-evaluator-execution-result:v1";
|
|
67
|
-
MetaWorkflowSemanticDigestDomain["STRUCTURED_SEMANTIC_EVALUATION_CANDIDATE"] = "wildo:meta-workflow-structured-semantic-evaluation-candidate:v1";
|
|
68
|
-
MetaWorkflowSemanticDigestDomain["EVALUATION_RESULT"] = "wildo:meta-workflow-evaluation-result:v1";
|
|
69
|
-
MetaWorkflowSemanticDigestDomain["EVIDENCE_ADMISSION_RECEIPT"] = "wildo:meta-workflow-evidence-admission-receipt:v1";
|
|
70
|
-
MetaWorkflowSemanticDigestDomain["DECISION_RULE"] = "wildo:meta-workflow-decision-rule:v1";
|
|
71
|
-
MetaWorkflowSemanticDigestDomain["DECISION_RULE_RESULT"] = "wildo:meta-workflow-decision-rule-result:v1";
|
|
72
|
-
MetaWorkflowSemanticDigestDomain["AUTHORITY_REQUIREMENT"] = "wildo:meta-workflow-authority-requirement:v1";
|
|
73
|
-
MetaWorkflowSemanticDigestDomain["AUTHORITY_REQUEST"] = "wildo:meta-workflow-authority-request:v1";
|
|
74
|
-
MetaWorkflowSemanticDigestDomain["AUTHORITY_DECISION"] = "wildo:meta-workflow-authority-decision:v1";
|
|
75
|
-
MetaWorkflowSemanticDigestDomain["CONTINUATION_POLICY"] = "wildo:meta-workflow-continuation-policy:v1";
|
|
76
|
-
MetaWorkflowSemanticDigestDomain["CONTINUATION_RECEIPT"] = "wildo:meta-workflow-continuation-receipt:v1";
|
|
77
|
-
MetaWorkflowSemanticDigestDomain["EVALUATION_TREATMENT_BOUND_FACT_PAYLOAD"] = "wildo:meta-workflow-evaluation-treatment-bound-fact-payload:v2";
|
|
78
|
-
MetaWorkflowSemanticDigestDomain["DECISION_POINT_STATE_TRANSITION_FACT"] = "wildo:meta-workflow-decision-point-state-transition-fact:v1";
|
|
79
|
-
MetaWorkflowSemanticDigestDomain["PLAYBOOK_RUN_ADMISSION_DECISION"] = "wildo:meta-workflow-run-admission-decision:v1";
|
|
80
|
-
MetaWorkflowSemanticDigestDomain["PLAYBOOK_RUN_ACKNOWLEDGEMENT"] = "wildo:meta-workflow-run-acknowledgement:v1";
|
|
81
|
-
MetaWorkflowSemanticDigestDomain["PLAYBOOK_WORKING_ADMISSION_DECISION"] = "wildo:meta-workflow-working-admission-decision:v1";
|
|
82
|
-
MetaWorkflowSemanticDigestDomain["PLAYBOOK_WORKING_ADMISSION_ACKNOWLEDGEMENT"] = "wildo:meta-workflow-working-admission-acknowledgement:v1";
|
|
83
|
-
MetaWorkflowSemanticDigestDomain["OUTPUT_CONTRACT_DESCRIPTOR"] = "wildo:meta-workflow-output-contract-descriptor:v1";
|
|
84
|
-
MetaWorkflowSemanticDigestDomain["BINDING_REGISTRY_CONTRACT_DESCRIPTOR"] = "wildo:meta-workflow-binding-registry-contract:v1";
|
|
85
|
-
MetaWorkflowSemanticDigestDomain["TRANSLATED_PLAYBOOK_DEFINITION"] = "wildo:meta-workflow-playbook-definition:v2";
|
|
86
|
-
MetaWorkflowSemanticDigestDomain["CATALOG"] = "wildo:meta-workflow-catalog:v2";
|
|
87
|
-
MetaWorkflowSemanticDigestDomain["RUNNER_CONTRACT"] = "wildo:meta-workflow-runner-contract:v2";
|
|
88
|
-
MetaWorkflowSemanticDigestDomain["RUNTIME_SUPPORT_INVENTORY"] = "wildo:meta-workflow-runtime-support-inventory:v2";
|
|
89
|
-
MetaWorkflowSemanticDigestDomain["RUNTIME_IMPLEMENTATION_ARTIFACT_SET"] = "wildo:meta-workflow-runtime-artifact-set:v1";
|
|
90
|
-
MetaWorkflowSemanticDigestDomain["RUNTIME_IMPLEMENTATION_PROVENANCE"] = "wildo:meta-workflow-runtime-implementation-provenance:v1";
|
|
91
|
-
MetaWorkflowSemanticDigestDomain["APPLICATION_OWNED_OVERRIDE"] = "wildo:meta-workflow-catalog-override:v2";
|
|
92
|
-
MetaWorkflowSemanticDigestDomain["CATALOG_BUNDLE"] = "wildo:meta-workflow-catalog-bundle:v2";
|
|
93
|
-
MetaWorkflowSemanticDigestDomain["SUPPORT_ASSESSMENT"] = "wildo:meta-workflow-support-assessment:v2";
|
|
94
|
-
MetaWorkflowSemanticDigestDomain["CATALOG_ACTIVATION"] = "wildo:meta-workflow-catalog-activation:v2";
|
|
95
|
-
})(MetaWorkflowSemanticDigestDomain || (MetaWorkflowSemanticDigestDomain = {}));
|
|
96
|
-
const NO_OBSERVATIONAL_FIELDS = Object.freeze([]);
|
|
97
|
-
function defineSemanticDigestPolicy(ownDigestField, observationalFields = NO_OBSERVATIONAL_FIELDS) {
|
|
98
|
-
return Object.freeze({
|
|
99
|
-
ownDigestField,
|
|
100
|
-
observationalFields: Object.freeze([...observationalFields]),
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Auditable digest-exclusion policy paired one-for-one with the domain enum.
|
|
2
|
+
* App-neutral canonical JSON (RFC 8785/JCS-compatible) and a raw SHA-256 helper.
|
|
105
3
|
*
|
|
106
|
-
*
|
|
107
|
-
*
|
|
108
|
-
*
|
|
4
|
+
* This module used to carry the semantic-digest apparatus of the meta-workflow record layer — a
|
|
5
|
+
* 60-domain policy table, domain-separated payload digests, a named-contract digest — every one of
|
|
6
|
+
* them a digest that recorded AGREEMENT between two parts of the repository. That apparatus was
|
|
7
|
+
* retired with the rest of the digest machinery (`.claude/rules/one-source-of-truth.md` Rule 0) once
|
|
8
|
+
* nothing produced or compared those digests any more. What survives is the canonical serializer,
|
|
9
|
+
* which the framework-knowledge generation pipeline uses for deterministic output bytes.
|
|
109
10
|
*/
|
|
110
|
-
|
|
111
|
-
[MetaWorkflowSemanticDigestDomain.PROVIDER_USAGE_PRICING_AUTHORITY]: defineSemanticDigestPolicy('pricingDigest'),
|
|
112
|
-
[MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_ALLOCATION]: defineSemanticDigestPolicy('allocationDigest'),
|
|
113
|
-
[MetaWorkflowSemanticDigestDomain.DRIVER_INVOCATION_RESOURCE_AUTHORITY]: defineSemanticDigestPolicy('authorityDigest'),
|
|
114
|
-
[MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_RESERVATION]: defineSemanticDigestPolicy('reservationDigest'),
|
|
115
|
-
[MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_SETTLEMENT]: defineSemanticDigestPolicy('settlementDigest'),
|
|
116
|
-
[MetaWorkflowSemanticDigestDomain.BUDGET_RESERVATION_VERIFICATION]: defineSemanticDigestPolicy('verificationDigest'),
|
|
117
|
-
[MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_CONTINUATION_POLICY]: defineSemanticDigestPolicy('policyDigest'),
|
|
118
|
-
[MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_BALANCE]: defineSemanticDigestPolicy('balanceDigest'),
|
|
119
|
-
[MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_STOP]: defineSemanticDigestPolicy('stopDigest'),
|
|
120
|
-
[MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_CONTINUATION_DECISION]: defineSemanticDigestPolicy('decisionDigest'),
|
|
121
|
-
[MetaWorkflowSemanticDigestDomain.WORK_CYCLE_RECOVERY_RELATION]: defineSemanticDigestPolicy('relationDigest'),
|
|
122
|
-
[MetaWorkflowSemanticDigestDomain.WORK_CYCLE_RECOVERY_AUTHORIZATION]: defineSemanticDigestPolicy('authorizationDigest'),
|
|
123
|
-
[MetaWorkflowSemanticDigestDomain.MODEL_INVOCATION_CAPACITY]: defineSemanticDigestPolicy('capacityAuthorityDigest'),
|
|
124
|
-
[MetaWorkflowSemanticDigestDomain.STRUCTURED_GENERATION_PLAN]: defineSemanticDigestPolicy('planDigest'),
|
|
125
|
-
[MetaWorkflowSemanticDigestDomain.ACTION_DEFINITION]: defineSemanticDigestPolicy('definitionDigest'),
|
|
126
|
-
[MetaWorkflowSemanticDigestDomain.STRUCTURED_ARTIFACT_ACTION_DEFINITION]: defineSemanticDigestPolicy('definitionDigest'),
|
|
127
|
-
[MetaWorkflowSemanticDigestDomain.MODEL_INVOCATION_RETRY_POLICY]: defineSemanticDigestPolicy('policyDigest'),
|
|
128
|
-
[MetaWorkflowSemanticDigestDomain.ACTION_BINDING]: defineSemanticDigestPolicy('bindingDigest'),
|
|
129
|
-
[MetaWorkflowSemanticDigestDomain.DRIVER_DESCRIPTOR]: defineSemanticDigestPolicy('descriptorDigest'),
|
|
130
|
-
[MetaWorkflowSemanticDigestDomain.DRIVER_REQUEST]: defineSemanticDigestPolicy('requestDigest', ['externalCorrelation']),
|
|
131
|
-
[MetaWorkflowSemanticDigestDomain.DRIVER_ADMISSION]: defineSemanticDigestPolicy('admissionDigest', ['observedAt']),
|
|
132
|
-
[MetaWorkflowSemanticDigestDomain.DRIVER_CHECKPOINT]: defineSemanticDigestPolicy('checkpointDigest', ['observedAt']),
|
|
133
|
-
[MetaWorkflowSemanticDigestDomain.DRIVER_RESULT]: defineSemanticDigestPolicy('resultDigest', ['observedAt']),
|
|
134
|
-
[MetaWorkflowSemanticDigestDomain.STRUCTURED_ARTIFACT_MODEL_INVOCATION_RECEIPT]: defineSemanticDigestPolicy('receiptDigest'),
|
|
135
|
-
[MetaWorkflowSemanticDigestDomain.NORMALIZED_ACTION_OUTCOME]: defineSemanticDigestPolicy('outcomeDigest'),
|
|
136
|
-
[MetaWorkflowSemanticDigestDomain.SEALED_ARTIFACT_SET]: defineSemanticDigestPolicy('artifactSetDigest'),
|
|
137
|
-
[MetaWorkflowSemanticDigestDomain.OUTPUT_CONTRACT_VALIDATION_RECEIPT]: defineSemanticDigestPolicy('receiptDigest', ['observedAt']),
|
|
138
|
-
[MetaWorkflowSemanticDigestDomain.DECISION_POINT_DEFINITION]: defineSemanticDigestPolicy('definitionDigest'),
|
|
139
|
-
[MetaWorkflowSemanticDigestDomain.EVALUATION_CRITERION_DEFINITION]: defineSemanticDigestPolicy('criterionDigest'),
|
|
140
|
-
[MetaWorkflowSemanticDigestDomain.EVALUATION_PROTOCOL_DEFINITION]: defineSemanticDigestPolicy('protocolDigest'),
|
|
141
|
-
[MetaWorkflowSemanticDigestDomain.EVALUATION_TREATMENT_DEFINITION]: defineSemanticDigestPolicy('definitionDigest'),
|
|
142
|
-
[MetaWorkflowSemanticDigestDomain.EVIDENCE_REQUIREMENT]: defineSemanticDigestPolicy('requirementDigest'),
|
|
143
|
-
[MetaWorkflowSemanticDigestDomain.EVIDENCE_ASSESSMENT_RECEIPT]: defineSemanticDigestPolicy('receiptDigest', ['observedAt']),
|
|
144
|
-
[MetaWorkflowSemanticDigestDomain.SEALED_EVIDENCE_SET]: defineSemanticDigestPolicy('evidenceSetDigest', ['observedAt']),
|
|
145
|
-
[MetaWorkflowSemanticDigestDomain.EVALUATOR_DESCRIPTOR]: defineSemanticDigestPolicy('descriptorDigest'),
|
|
146
|
-
[MetaWorkflowSemanticDigestDomain.EVALUATOR_BINDING_POLICY]: defineSemanticDigestPolicy('policyDigest'),
|
|
147
|
-
[MetaWorkflowSemanticDigestDomain.EVALUATOR_BINDING]: defineSemanticDigestPolicy('bindingDigest'),
|
|
148
|
-
[MetaWorkflowSemanticDigestDomain.EVALUATOR_SELECTION_DECISION]: defineSemanticDigestPolicy('decisionDigest'),
|
|
149
|
-
[MetaWorkflowSemanticDigestDomain.EVALUATOR_EXECUTION_RESULT]: defineSemanticDigestPolicy('resultDigest'),
|
|
150
|
-
[MetaWorkflowSemanticDigestDomain.STRUCTURED_SEMANTIC_EVALUATION_CANDIDATE]: defineSemanticDigestPolicy('candidateDigest'),
|
|
151
|
-
[MetaWorkflowSemanticDigestDomain.EVALUATION_RESULT]: defineSemanticDigestPolicy('evaluationDigest'),
|
|
152
|
-
[MetaWorkflowSemanticDigestDomain.EVIDENCE_ADMISSION_RECEIPT]: defineSemanticDigestPolicy('receiptDigest', ['observedAt']),
|
|
153
|
-
[MetaWorkflowSemanticDigestDomain.DECISION_RULE]: defineSemanticDigestPolicy('ruleDigest'),
|
|
154
|
-
[MetaWorkflowSemanticDigestDomain.DECISION_RULE_RESULT]: defineSemanticDigestPolicy('resultDigest'),
|
|
155
|
-
[MetaWorkflowSemanticDigestDomain.AUTHORITY_REQUIREMENT]: defineSemanticDigestPolicy('requirementDigest'),
|
|
156
|
-
[MetaWorkflowSemanticDigestDomain.AUTHORITY_REQUEST]: defineSemanticDigestPolicy('requestDigest'),
|
|
157
|
-
[MetaWorkflowSemanticDigestDomain.AUTHORITY_DECISION]: defineSemanticDigestPolicy('decisionDigest'),
|
|
158
|
-
[MetaWorkflowSemanticDigestDomain.CONTINUATION_POLICY]: defineSemanticDigestPolicy('policyDigest'),
|
|
159
|
-
[MetaWorkflowSemanticDigestDomain.CONTINUATION_RECEIPT]: defineSemanticDigestPolicy('receiptDigest'),
|
|
160
|
-
[MetaWorkflowSemanticDigestDomain.EVALUATION_TREATMENT_BOUND_FACT_PAYLOAD]: defineSemanticDigestPolicy('bindingDigest'),
|
|
161
|
-
[MetaWorkflowSemanticDigestDomain.DECISION_POINT_STATE_TRANSITION_FACT]: defineSemanticDigestPolicy('factDigest', ['observedAt']),
|
|
162
|
-
[MetaWorkflowSemanticDigestDomain.PLAYBOOK_RUN_ADMISSION_DECISION]: defineSemanticDigestPolicy('admissionDecisionDigest'),
|
|
163
|
-
[MetaWorkflowSemanticDigestDomain.PLAYBOOK_RUN_ACKNOWLEDGEMENT]: defineSemanticDigestPolicy('acknowledgementDigest'),
|
|
164
|
-
[MetaWorkflowSemanticDigestDomain.PLAYBOOK_WORKING_ADMISSION_DECISION]: defineSemanticDigestPolicy('admissionDecisionDigest'),
|
|
165
|
-
[MetaWorkflowSemanticDigestDomain.PLAYBOOK_WORKING_ADMISSION_ACKNOWLEDGEMENT]: defineSemanticDigestPolicy('acknowledgementDigest'),
|
|
166
|
-
[MetaWorkflowSemanticDigestDomain.OUTPUT_CONTRACT_DESCRIPTOR]: defineSemanticDigestPolicy('descriptorDigest'),
|
|
167
|
-
[MetaWorkflowSemanticDigestDomain.BINDING_REGISTRY_CONTRACT_DESCRIPTOR]: defineSemanticDigestPolicy('descriptorDigest'),
|
|
168
|
-
[MetaWorkflowSemanticDigestDomain.TRANSLATED_PLAYBOOK_DEFINITION]: defineSemanticDigestPolicy('semanticDigest'),
|
|
169
|
-
[MetaWorkflowSemanticDigestDomain.CATALOG]: defineSemanticDigestPolicy('catalogDigest', ['generatedAt']),
|
|
170
|
-
[MetaWorkflowSemanticDigestDomain.RUNNER_CONTRACT]: defineSemanticDigestPolicy('contractDigest'),
|
|
171
|
-
[MetaWorkflowSemanticDigestDomain.RUNTIME_SUPPORT_INVENTORY]: defineSemanticDigestPolicy('supportInventoryDigest', ['generatedAt']),
|
|
172
|
-
[MetaWorkflowSemanticDigestDomain.RUNTIME_IMPLEMENTATION_ARTIFACT_SET]: defineSemanticDigestPolicy('artifactSetDigest'),
|
|
173
|
-
[MetaWorkflowSemanticDigestDomain.RUNTIME_IMPLEMENTATION_PROVENANCE]: defineSemanticDigestPolicy('provenanceDigest'),
|
|
174
|
-
[MetaWorkflowSemanticDigestDomain.APPLICATION_OWNED_OVERRIDE]: defineSemanticDigestPolicy('overrideDigest'),
|
|
175
|
-
[MetaWorkflowSemanticDigestDomain.CATALOG_BUNDLE]: defineSemanticDigestPolicy('bundleDigest', ['generatedAt']),
|
|
176
|
-
[MetaWorkflowSemanticDigestDomain.SUPPORT_ASSESSMENT]: defineSemanticDigestPolicy('assessmentDigest', ['generatedAt']),
|
|
177
|
-
[MetaWorkflowSemanticDigestDomain.CATALOG_ACTIVATION]: defineSemanticDigestPolicy('activationDigest'),
|
|
178
|
-
});
|
|
11
|
+
import { createHash } from 'node:crypto';
|
|
179
12
|
/**
|
|
180
13
|
* A fail-closed canonicalization error with the structural location of the
|
|
181
14
|
* invalid value. Error messages intentionally describe shape/type only and do
|
|
@@ -216,74 +49,6 @@ export function computeMetaWorkflowRawByteDigest(bytes) {
|
|
|
216
49
|
}
|
|
217
50
|
return formatSha256Digest(createHash('sha256').update(bytes).digest('hex'));
|
|
218
51
|
}
|
|
219
|
-
/** Stable identity for a named schema/validator contract and its profile. */
|
|
220
|
-
export function computeMetaWorkflowNamedContractDigest(input) {
|
|
221
|
-
return computeMetaWorkflowRawByteDigest(new TextEncoder().encode(canonicalizeMetaWorkflowJson(input)));
|
|
222
|
-
}
|
|
223
|
-
/**
|
|
224
|
-
* Derive the semantic root object for a digest-bearing meta-workflow record.
|
|
225
|
-
*
|
|
226
|
-
* Only the domain's own digest and explicitly observational root fields are
|
|
227
|
-
* omitted. The remaining graph is copied into strict JSON data so later caller
|
|
228
|
-
* mutation cannot change the returned payload through shared object identity.
|
|
229
|
-
*/
|
|
230
|
-
export function createMetaWorkflowSemanticPayload(domain, record) {
|
|
231
|
-
const policy = resolveSemanticDigestPolicy(domain);
|
|
232
|
-
return createMetaWorkflowSemanticPayloadWithPolicy(record, policy);
|
|
233
|
-
}
|
|
234
|
-
/**
|
|
235
|
-
* Derive a semantic payload from one explicit policy without consulting the
|
|
236
|
-
* permanent meta-workflow digest registry.
|
|
237
|
-
*
|
|
238
|
-
* This low-level seam lets contained migration code keep its short-lived
|
|
239
|
-
* domain in a migration-owned module. Production catalog codecs therefore do
|
|
240
|
-
* not compile against migration-only semantic identities.
|
|
241
|
-
*/
|
|
242
|
-
export function createMetaWorkflowSemanticPayloadWithPolicy(record, policy) {
|
|
243
|
-
if (!isPlainJsonObject(record)) {
|
|
244
|
-
throw new MetaWorkflowCanonicalJsonError('$', 'a semantic digest record must be a plain object');
|
|
245
|
-
}
|
|
246
|
-
const excludedFields = new Set([
|
|
247
|
-
policy.ownDigestField,
|
|
248
|
-
...policy.observationalFields,
|
|
249
|
-
]);
|
|
250
|
-
return normalizePlainJsonObject(record, '$', new WeakSet(), excludedFields);
|
|
251
|
-
}
|
|
252
|
-
/**
|
|
253
|
-
* Compute the plan's semantic identity formula:
|
|
254
|
-
*
|
|
255
|
-
* `sha256(UTF8(domain + NUL + JCS(domain-policy(record))))`
|
|
256
|
-
*
|
|
257
|
-
* The policy application is internal so callers cannot accidentally include a
|
|
258
|
-
* record's existing self-digest or observational generation time.
|
|
259
|
-
*/
|
|
260
|
-
export function computeMetaWorkflowSemanticDigest(domain, payload) {
|
|
261
|
-
return computeMetaWorkflowSemanticDigestWithPolicy(domain, payload, resolveSemanticDigestPolicy(domain));
|
|
262
|
-
}
|
|
263
|
-
/**
|
|
264
|
-
* Compute a domain-separated semantic digest from an explicit exclusion
|
|
265
|
-
* policy. Callers must own the domain and policy together; permanent
|
|
266
|
-
* meta-workflow records should use {@link computeMetaWorkflowSemanticDigest}.
|
|
267
|
-
*/
|
|
268
|
-
export function computeMetaWorkflowSemanticDigestWithPolicy(domain, payload, policy) {
|
|
269
|
-
if (domain.length === 0 || domain.includes('\0')) {
|
|
270
|
-
throw new TypeError('Meta-workflow semantic digest domain must be non-empty and contain no NUL');
|
|
271
|
-
}
|
|
272
|
-
const semanticPayload = createMetaWorkflowSemanticPayloadWithPolicy(payload, policy);
|
|
273
|
-
const canonicalJson = serializeNormalizedJsonValue(semanticPayload);
|
|
274
|
-
const hash = createHash('sha256');
|
|
275
|
-
hash.update(domain, 'utf8');
|
|
276
|
-
hash.update(Uint8Array.of(0));
|
|
277
|
-
hash.update(canonicalJson, 'utf8');
|
|
278
|
-
return formatSha256Digest(hash.digest('hex'));
|
|
279
|
-
}
|
|
280
|
-
function resolveSemanticDigestPolicy(domain) {
|
|
281
|
-
if (typeof domain !== 'string'
|
|
282
|
-
|| !Object.prototype.hasOwnProperty.call(META_WORKFLOW_SEMANTIC_DIGEST_POLICIES, domain)) {
|
|
283
|
-
throw new TypeError('Unknown meta-workflow semantic digest domain');
|
|
284
|
-
}
|
|
285
|
-
return META_WORKFLOW_SEMANTIC_DIGEST_POLICIES[domain];
|
|
286
|
-
}
|
|
287
52
|
function formatSha256Digest(lowercaseHex) {
|
|
288
53
|
return `sha256:${lowercaseHex}`;
|
|
289
54
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta-workflow-canonical-json.backend.utils.js","sourceRoot":"","sources":["../../../../../src/flows-actors/utils/meta-workflow-canonical-json.backend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * App-neutral canonical JSON and SHA-256 primitives for meta-workflow records.\n */\nimport { createHash } from 'node:crypto';\n\n/**\n * The JSON data model accepted by the meta-workflow canonicalization boundary.\n *\n * The runtime functions intentionally accept `unknown` and validate it rather\n * than trusting this compile-time shape. Digest inputs may originate in parsed\n * artifacts or application-owned adapters, so a type assertion must never be\n * enough to admit a non-JSON value into semantic identity.\n */\nexport type JsonValue =\n | null\n | boolean\n | number\n | string\n | readonly JsonValue[]\n | { readonly [key: string]: JsonValue };\n\n/** Canonical bytes for one content-addressed semantic artifact. */\nexport function canonicalArtifactJsonBytes(value: unknown): Uint8Array {\n return Buffer.from(canonicalizeMetaWorkflowJson(value), 'utf8');\n}\n\n/** Deterministic UUID-v4-shaped identity for replay-stable semantic records. */\nexport function deriveMetaWorkflowLowercaseUuidV4(scope: string, value: string): string {\n const bytes = createHash('sha256').update(`${scope}\\0${value}`, 'utf8').digest().subarray(0, 16);\n bytes[6] = (bytes[6]! & 0x0f) | 0x40;\n bytes[8] = (bytes[8]! & 0x3f) | 0x80;\n const hex = bytes.toString('hex');\n return `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20)}`;\n}\n\n/**\n * Literal domain separators for every digest-bearing portable meta-workflow\n * record.\n *\n * This enum is deliberately exhaustive and is the sole runtime source for\n * these strings. A new digest-bearing record must extend both this enum and\n * {@link META_WORKFLOW_SEMANTIC_DIGEST_POLICIES}; reusing a nearby domain\n * would collapse two semantically distinct identities.\n */\nexport enum MetaWorkflowSemanticDigestDomain {\n PROVIDER_USAGE_PRICING_AUTHORITY = 'wildo:provider-usage-pricing-authority:v1',\n WORK_CYCLE_BUDGET_ALLOCATION = 'wildo:work-cycle-budget-allocation:v1',\n DRIVER_INVOCATION_RESOURCE_AUTHORITY = 'wildo:driver-invocation-resource-authority:v1',\n WORK_CYCLE_BUDGET_RESERVATION = 'wildo:work-cycle-budget-reservation:v1',\n WORK_CYCLE_BUDGET_SETTLEMENT = 'wildo:work-cycle-budget-settlement:v1',\n BUDGET_RESERVATION_VERIFICATION = 'wildo:budget-reservation-verification:v1',\n WORK_CYCLE_BUDGET_CONTINUATION_POLICY = 'wildo:work-cycle-budget-continuation-policy:v1',\n WORK_CYCLE_BUDGET_BALANCE = 'wildo:work-cycle-budget-balance:v1',\n WORK_CYCLE_BUDGET_STOP = 'wildo:work-cycle-budget-stop:v1',\n WORK_CYCLE_BUDGET_CONTINUATION_DECISION = 'wildo:work-cycle-budget-continuation-decision:v1',\n WORK_CYCLE_RECOVERY_RELATION = 'wildo:work-cycle-recovery-relation:v1',\n WORK_CYCLE_RECOVERY_AUTHORIZATION = 'wildo:work-cycle-recovery-authorization:v1',\n MODEL_INVOCATION_CAPACITY = 'wildo:model-invocation-capacity:v1',\n STRUCTURED_GENERATION_PLAN = 'wildo:structured-generation-plan:v1',\n ACTION_DEFINITION = 'wildo:meta-workflow-action-definition:v1',\n STRUCTURED_ARTIFACT_ACTION_DEFINITION = 'wildo:meta-workflow-structured-artifact-action-definition:v1',\n MODEL_INVOCATION_RETRY_POLICY = 'wildo:meta-workflow-model-invocation-retry-policy:v1',\n ACTION_BINDING = 'wildo:meta-workflow-action-binding:v1',\n DRIVER_DESCRIPTOR = 'wildo:meta-workflow-driver-descriptor:v1',\n DRIVER_REQUEST = 'wildo:meta-workflow-driver-request:v1',\n DRIVER_ADMISSION = 'wildo:meta-workflow-driver-admission:v1',\n DRIVER_CHECKPOINT = 'wildo:meta-workflow-driver-checkpoint:v1',\n DRIVER_RESULT = 'wildo:meta-workflow-driver-result:v1',\n STRUCTURED_ARTIFACT_MODEL_INVOCATION_RECEIPT = 'wildo:meta-workflow-structured-artifact-model-invocation-receipt:v1',\n NORMALIZED_ACTION_OUTCOME = 'wildo:meta-workflow-normalized-action-outcome:v1',\n SEALED_ARTIFACT_SET = 'wildo:meta-workflow-sealed-artifact-set:v1',\n OUTPUT_CONTRACT_VALIDATION_RECEIPT = 'wildo:meta-workflow-output-contract-validation-receipt:v1',\n DECISION_POINT_DEFINITION = 'wildo:meta-workflow-decision-point-definition:v1',\n EVALUATION_CRITERION_DEFINITION = 'wildo:meta-workflow-evaluation-criterion-definition:v1',\n EVALUATION_PROTOCOL_DEFINITION = 'wildo:meta-workflow-evaluation-protocol-definition:v1',\n EVALUATION_TREATMENT_DEFINITION = 'wildo:meta-workflow-evaluation-treatment-definition:v1',\n EVIDENCE_REQUIREMENT = 'wildo:meta-workflow-evidence-requirement:v1',\n EVIDENCE_ASSESSMENT_RECEIPT = 'wildo:meta-workflow-evidence-assessment-receipt:v1',\n SEALED_EVIDENCE_SET = 'wildo:meta-workflow-sealed-evidence-set:v1',\n EVALUATOR_DESCRIPTOR = 'wildo:meta-workflow-evaluator-descriptor:v1',\n EVALUATOR_BINDING_POLICY = 'wildo:meta-workflow-evaluator-binding-policy:v1',\n EVALUATOR_BINDING = 'wildo:meta-workflow-evaluator-binding:v1',\n EVALUATOR_SELECTION_DECISION = 'wildo:meta-workflow-evaluator-selection-decision:v1',\n EVALUATOR_EXECUTION_RESULT = 'wildo:meta-workflow-evaluator-execution-result:v1',\n STRUCTURED_SEMANTIC_EVALUATION_CANDIDATE = 'wildo:meta-workflow-structured-semantic-evaluation-candidate:v1',\n EVALUATION_RESULT = 'wildo:meta-workflow-evaluation-result:v1',\n EVIDENCE_ADMISSION_RECEIPT = 'wildo:meta-workflow-evidence-admission-receipt:v1',\n DECISION_RULE = 'wildo:meta-workflow-decision-rule:v1',\n DECISION_RULE_RESULT = 'wildo:meta-workflow-decision-rule-result:v1',\n AUTHORITY_REQUIREMENT = 'wildo:meta-workflow-authority-requirement:v1',\n AUTHORITY_REQUEST = 'wildo:meta-workflow-authority-request:v1',\n AUTHORITY_DECISION = 'wildo:meta-workflow-authority-decision:v1',\n CONTINUATION_POLICY = 'wildo:meta-workflow-continuation-policy:v1',\n CONTINUATION_RECEIPT = 'wildo:meta-workflow-continuation-receipt:v1',\n EVALUATION_TREATMENT_BOUND_FACT_PAYLOAD = 'wildo:meta-workflow-evaluation-treatment-bound-fact-payload:v2',\n DECISION_POINT_STATE_TRANSITION_FACT = 'wildo:meta-workflow-decision-point-state-transition-fact:v1',\n PLAYBOOK_RUN_ADMISSION_DECISION = 'wildo:meta-workflow-run-admission-decision:v1',\n PLAYBOOK_RUN_ACKNOWLEDGEMENT = 'wildo:meta-workflow-run-acknowledgement:v1',\n PLAYBOOK_WORKING_ADMISSION_DECISION = 'wildo:meta-workflow-working-admission-decision:v1',\n PLAYBOOK_WORKING_ADMISSION_ACKNOWLEDGEMENT = 'wildo:meta-workflow-working-admission-acknowledgement:v1',\n OUTPUT_CONTRACT_DESCRIPTOR = 'wildo:meta-workflow-output-contract-descriptor:v1',\n BINDING_REGISTRY_CONTRACT_DESCRIPTOR = 'wildo:meta-workflow-binding-registry-contract:v1',\n TRANSLATED_PLAYBOOK_DEFINITION = 'wildo:meta-workflow-playbook-definition:v2',\n CATALOG = 'wildo:meta-workflow-catalog:v2',\n RUNNER_CONTRACT = 'wildo:meta-workflow-runner-contract:v2',\n RUNTIME_SUPPORT_INVENTORY = 'wildo:meta-workflow-runtime-support-inventory:v2',\n RUNTIME_IMPLEMENTATION_ARTIFACT_SET = 'wildo:meta-workflow-runtime-artifact-set:v1',\n RUNTIME_IMPLEMENTATION_PROVENANCE = 'wildo:meta-workflow-runtime-implementation-provenance:v1',\n APPLICATION_OWNED_OVERRIDE = 'wildo:meta-workflow-catalog-override:v2',\n CATALOG_BUNDLE = 'wildo:meta-workflow-catalog-bundle:v2',\n SUPPORT_ASSESSMENT = 'wildo:meta-workflow-support-assessment:v2',\n CATALOG_ACTIVATION = 'wildo:meta-workflow-catalog-activation:v2',\n}\n\n/**\n * The only root fields excluded when deriving one domain's semantic payload.\n *\n * Exclusions are domain-specific on purpose. A blanket \"timestamp\" or\n * \"*Digest\" filter would silently erase fields that are semantic in another\n * record, such as a source content digest or an authority response time.\n */\nexport interface MetaWorkflowSemanticDigestPolicy {\n readonly ownDigestField: string;\n readonly observationalFields: readonly string[];\n}\n\nconst NO_OBSERVATIONAL_FIELDS: readonly string[] = Object.freeze([]);\n\nfunction defineSemanticDigestPolicy(\n ownDigestField: string,\n observationalFields: readonly string[] = NO_OBSERVATIONAL_FIELDS,\n): MetaWorkflowSemanticDigestPolicy {\n return Object.freeze({\n ownDigestField,\n observationalFields: Object.freeze([...observationalFields]),\n });\n}\n\n/**\n * Auditable digest-exclusion policy paired one-for-one with the domain enum.\n *\n * `generatedAt` and `observedAt` are excluded only on records whose contract\n * declares them observational. All other timestamps, nested digests,\n * provenance, ordered entries, and policy inputs remain semantic.\n */\nexport const META_WORKFLOW_SEMANTIC_DIGEST_POLICIES = Object.freeze({\n [MetaWorkflowSemanticDigestDomain.PROVIDER_USAGE_PRICING_AUTHORITY]:\n defineSemanticDigestPolicy('pricingDigest'),\n [MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_ALLOCATION]:\n defineSemanticDigestPolicy('allocationDigest'),\n [MetaWorkflowSemanticDigestDomain.DRIVER_INVOCATION_RESOURCE_AUTHORITY]:\n defineSemanticDigestPolicy('authorityDigest'),\n [MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_RESERVATION]:\n defineSemanticDigestPolicy('reservationDigest'),\n [MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_SETTLEMENT]:\n defineSemanticDigestPolicy('settlementDigest'),\n [MetaWorkflowSemanticDigestDomain.BUDGET_RESERVATION_VERIFICATION]:\n defineSemanticDigestPolicy('verificationDigest'),\n [MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_CONTINUATION_POLICY]:\n defineSemanticDigestPolicy('policyDigest'),\n [MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_BALANCE]:\n defineSemanticDigestPolicy('balanceDigest'),\n [MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_STOP]:\n defineSemanticDigestPolicy('stopDigest'),\n [MetaWorkflowSemanticDigestDomain.WORK_CYCLE_BUDGET_CONTINUATION_DECISION]:\n defineSemanticDigestPolicy('decisionDigest'),\n [MetaWorkflowSemanticDigestDomain.WORK_CYCLE_RECOVERY_RELATION]:\n defineSemanticDigestPolicy('relationDigest'),\n [MetaWorkflowSemanticDigestDomain.WORK_CYCLE_RECOVERY_AUTHORIZATION]:\n defineSemanticDigestPolicy('authorizationDigest'),\n [MetaWorkflowSemanticDigestDomain.MODEL_INVOCATION_CAPACITY]:\n defineSemanticDigestPolicy('capacityAuthorityDigest'),\n [MetaWorkflowSemanticDigestDomain.STRUCTURED_GENERATION_PLAN]:\n defineSemanticDigestPolicy('planDigest'),\n [MetaWorkflowSemanticDigestDomain.ACTION_DEFINITION]:\n defineSemanticDigestPolicy('definitionDigest'),\n [MetaWorkflowSemanticDigestDomain.STRUCTURED_ARTIFACT_ACTION_DEFINITION]:\n defineSemanticDigestPolicy('definitionDigest'),\n [MetaWorkflowSemanticDigestDomain.MODEL_INVOCATION_RETRY_POLICY]:\n defineSemanticDigestPolicy('policyDigest'),\n [MetaWorkflowSemanticDigestDomain.ACTION_BINDING]:\n defineSemanticDigestPolicy('bindingDigest'),\n [MetaWorkflowSemanticDigestDomain.DRIVER_DESCRIPTOR]:\n defineSemanticDigestPolicy('descriptorDigest'),\n [MetaWorkflowSemanticDigestDomain.DRIVER_REQUEST]:\n defineSemanticDigestPolicy('requestDigest', ['externalCorrelation']),\n [MetaWorkflowSemanticDigestDomain.DRIVER_ADMISSION]:\n defineSemanticDigestPolicy('admissionDigest', ['observedAt']),\n [MetaWorkflowSemanticDigestDomain.DRIVER_CHECKPOINT]:\n defineSemanticDigestPolicy('checkpointDigest', ['observedAt']),\n [MetaWorkflowSemanticDigestDomain.DRIVER_RESULT]:\n defineSemanticDigestPolicy('resultDigest', ['observedAt']),\n [MetaWorkflowSemanticDigestDomain.STRUCTURED_ARTIFACT_MODEL_INVOCATION_RECEIPT]:\n defineSemanticDigestPolicy('receiptDigest'),\n [MetaWorkflowSemanticDigestDomain.NORMALIZED_ACTION_OUTCOME]:\n defineSemanticDigestPolicy('outcomeDigest'),\n [MetaWorkflowSemanticDigestDomain.SEALED_ARTIFACT_SET]:\n defineSemanticDigestPolicy('artifactSetDigest'),\n [MetaWorkflowSemanticDigestDomain.OUTPUT_CONTRACT_VALIDATION_RECEIPT]:\n defineSemanticDigestPolicy('receiptDigest', ['observedAt']),\n [MetaWorkflowSemanticDigestDomain.DECISION_POINT_DEFINITION]:\n defineSemanticDigestPolicy('definitionDigest'),\n [MetaWorkflowSemanticDigestDomain.EVALUATION_CRITERION_DEFINITION]:\n defineSemanticDigestPolicy('criterionDigest'),\n [MetaWorkflowSemanticDigestDomain.EVALUATION_PROTOCOL_DEFINITION]:\n defineSemanticDigestPolicy('protocolDigest'),\n [MetaWorkflowSemanticDigestDomain.EVALUATION_TREATMENT_DEFINITION]:\n defineSemanticDigestPolicy('definitionDigest'),\n [MetaWorkflowSemanticDigestDomain.EVIDENCE_REQUIREMENT]:\n defineSemanticDigestPolicy('requirementDigest'),\n [MetaWorkflowSemanticDigestDomain.EVIDENCE_ASSESSMENT_RECEIPT]:\n defineSemanticDigestPolicy('receiptDigest', ['observedAt']),\n [MetaWorkflowSemanticDigestDomain.SEALED_EVIDENCE_SET]:\n defineSemanticDigestPolicy('evidenceSetDigest', ['observedAt']),\n [MetaWorkflowSemanticDigestDomain.EVALUATOR_DESCRIPTOR]:\n defineSemanticDigestPolicy('descriptorDigest'),\n [MetaWorkflowSemanticDigestDomain.EVALUATOR_BINDING_POLICY]:\n defineSemanticDigestPolicy('policyDigest'),\n [MetaWorkflowSemanticDigestDomain.EVALUATOR_BINDING]:\n defineSemanticDigestPolicy('bindingDigest'),\n [MetaWorkflowSemanticDigestDomain.EVALUATOR_SELECTION_DECISION]:\n defineSemanticDigestPolicy('decisionDigest'),\n [MetaWorkflowSemanticDigestDomain.EVALUATOR_EXECUTION_RESULT]:\n defineSemanticDigestPolicy('resultDigest'),\n [MetaWorkflowSemanticDigestDomain.STRUCTURED_SEMANTIC_EVALUATION_CANDIDATE]:\n defineSemanticDigestPolicy('candidateDigest'),\n [MetaWorkflowSemanticDigestDomain.EVALUATION_RESULT]:\n defineSemanticDigestPolicy('evaluationDigest'),\n [MetaWorkflowSemanticDigestDomain.EVIDENCE_ADMISSION_RECEIPT]:\n defineSemanticDigestPolicy('receiptDigest', ['observedAt']),\n [MetaWorkflowSemanticDigestDomain.DECISION_RULE]:\n defineSemanticDigestPolicy('ruleDigest'),\n [MetaWorkflowSemanticDigestDomain.DECISION_RULE_RESULT]:\n defineSemanticDigestPolicy('resultDigest'),\n [MetaWorkflowSemanticDigestDomain.AUTHORITY_REQUIREMENT]:\n defineSemanticDigestPolicy('requirementDigest'),\n [MetaWorkflowSemanticDigestDomain.AUTHORITY_REQUEST]:\n defineSemanticDigestPolicy('requestDigest'),\n [MetaWorkflowSemanticDigestDomain.AUTHORITY_DECISION]:\n defineSemanticDigestPolicy('decisionDigest'),\n [MetaWorkflowSemanticDigestDomain.CONTINUATION_POLICY]:\n defineSemanticDigestPolicy('policyDigest'),\n [MetaWorkflowSemanticDigestDomain.CONTINUATION_RECEIPT]:\n defineSemanticDigestPolicy('receiptDigest'),\n [MetaWorkflowSemanticDigestDomain.EVALUATION_TREATMENT_BOUND_FACT_PAYLOAD]:\n defineSemanticDigestPolicy('bindingDigest'),\n [MetaWorkflowSemanticDigestDomain.DECISION_POINT_STATE_TRANSITION_FACT]:\n defineSemanticDigestPolicy('factDigest', ['observedAt']),\n [MetaWorkflowSemanticDigestDomain.PLAYBOOK_RUN_ADMISSION_DECISION]:\n defineSemanticDigestPolicy('admissionDecisionDigest'),\n [MetaWorkflowSemanticDigestDomain.PLAYBOOK_RUN_ACKNOWLEDGEMENT]:\n defineSemanticDigestPolicy('acknowledgementDigest'),\n [MetaWorkflowSemanticDigestDomain.PLAYBOOK_WORKING_ADMISSION_DECISION]:\n defineSemanticDigestPolicy('admissionDecisionDigest'),\n [MetaWorkflowSemanticDigestDomain.PLAYBOOK_WORKING_ADMISSION_ACKNOWLEDGEMENT]:\n defineSemanticDigestPolicy('acknowledgementDigest'),\n [MetaWorkflowSemanticDigestDomain.OUTPUT_CONTRACT_DESCRIPTOR]:\n defineSemanticDigestPolicy('descriptorDigest'),\n [MetaWorkflowSemanticDigestDomain.BINDING_REGISTRY_CONTRACT_DESCRIPTOR]:\n defineSemanticDigestPolicy('descriptorDigest'),\n [MetaWorkflowSemanticDigestDomain.TRANSLATED_PLAYBOOK_DEFINITION]:\n defineSemanticDigestPolicy('semanticDigest'),\n [MetaWorkflowSemanticDigestDomain.CATALOG]:\n defineSemanticDigestPolicy('catalogDigest', ['generatedAt']),\n [MetaWorkflowSemanticDigestDomain.RUNNER_CONTRACT]:\n defineSemanticDigestPolicy('contractDigest'),\n [MetaWorkflowSemanticDigestDomain.RUNTIME_SUPPORT_INVENTORY]:\n defineSemanticDigestPolicy('supportInventoryDigest', ['generatedAt']),\n [MetaWorkflowSemanticDigestDomain.RUNTIME_IMPLEMENTATION_ARTIFACT_SET]:\n defineSemanticDigestPolicy('artifactSetDigest'),\n [MetaWorkflowSemanticDigestDomain.RUNTIME_IMPLEMENTATION_PROVENANCE]:\n defineSemanticDigestPolicy('provenanceDigest'),\n [MetaWorkflowSemanticDigestDomain.APPLICATION_OWNED_OVERRIDE]:\n defineSemanticDigestPolicy('overrideDigest'),\n [MetaWorkflowSemanticDigestDomain.CATALOG_BUNDLE]:\n defineSemanticDigestPolicy('bundleDigest', ['generatedAt']),\n [MetaWorkflowSemanticDigestDomain.SUPPORT_ASSESSMENT]:\n defineSemanticDigestPolicy('assessmentDigest', ['generatedAt']),\n [MetaWorkflowSemanticDigestDomain.CATALOG_ACTIVATION]:\n defineSemanticDigestPolicy('activationDigest'),\n} satisfies Record<MetaWorkflowSemanticDigestDomain, MetaWorkflowSemanticDigestPolicy>);\n\n/**\n * A fail-closed canonicalization error with the structural location of the\n * invalid value. Error messages intentionally describe shape/type only and do\n * not interpolate the rejected value, which may contain application data.\n */\nexport class MetaWorkflowCanonicalJsonError extends TypeError {\n public readonly path: string;\n\n public constructor(path: string, reason: string) {\n super(`Meta-workflow canonical JSON rejected ${path}: ${reason}`);\n this.name = 'MetaWorkflowCanonicalJsonError';\n this.path = path;\n }\n}\n\n/**\n * Produce RFC 8785/JCS-compatible JSON text from strict JSON data.\n *\n * Object keys are compared as raw UTF-16 code units, arrays retain their\n * authored order, numbers use ECMAScript's finite-number JSON form, strings\n * are preserved without Unicode normalization, and no whitespace is emitted.\n * Values that JavaScript's ordinary `JSON.stringify` would silently coerce or\n * omit are rejected instead, because such coercion would collapse distinct\n * semantic inputs onto one digest.\n */\nexport function canonicalizeMetaWorkflowJson(value: unknown): string {\n const normalized = normalizeJsonValue(value, '$', new WeakSet<object>());\n return serializeNormalizedJsonValue(normalized);\n}\n\n/**\n * Hash exact caller-supplied bytes with SHA-256.\n *\n * No decoding, newline normalization, JSON parsing, or canonicalization occurs\n * here. `Buffer` is accepted through its `Uint8Array` inheritance, and a view's\n * byte offset/length are respected by Node's hash implementation.\n */\nexport function computeMetaWorkflowRawByteDigest(bytes: Uint8Array): string {\n if (!(bytes instanceof Uint8Array)) {\n throw new TypeError('Meta-workflow raw-byte digest requires a Uint8Array');\n }\n return formatSha256Digest(createHash('sha256').update(bytes).digest('hex'));\n}\n\n/** Stable identity for a named schema/validator contract and its profile. */\nexport function computeMetaWorkflowNamedContractDigest(input: {\n contractRef: string;\n contractVersion: number;\n profileRef: string;\n}): string {\n return computeMetaWorkflowRawByteDigest(\n new TextEncoder().encode(canonicalizeMetaWorkflowJson(input)),\n );\n}\n\n/**\n * Derive the semantic root object for a digest-bearing meta-workflow record.\n *\n * Only the domain's own digest and explicitly observational root fields are\n * omitted. The remaining graph is copied into strict JSON data so later caller\n * mutation cannot change the returned payload through shared object identity.\n */\nexport function createMetaWorkflowSemanticPayload(\n domain: MetaWorkflowSemanticDigestDomain,\n record: unknown,\n): JsonValue {\n const policy = resolveSemanticDigestPolicy(domain);\n return createMetaWorkflowSemanticPayloadWithPolicy(record, policy);\n}\n\n/**\n * Derive a semantic payload from one explicit policy without consulting the\n * permanent meta-workflow digest registry.\n *\n * This low-level seam lets contained migration code keep its short-lived\n * domain in a migration-owned module. Production catalog codecs therefore do\n * not compile against migration-only semantic identities.\n */\nexport function createMetaWorkflowSemanticPayloadWithPolicy(\n record: unknown,\n policy: MetaWorkflowSemanticDigestPolicy,\n): JsonValue {\n if (!isPlainJsonObject(record)) {\n throw new MetaWorkflowCanonicalJsonError(\n '$',\n 'a semantic digest record must be a plain object',\n );\n }\n\n const excludedFields = new Set<string>([\n policy.ownDigestField,\n ...policy.observationalFields,\n ]);\n return normalizePlainJsonObject(\n record,\n '$',\n new WeakSet<object>(),\n excludedFields,\n );\n}\n\n/**\n * Compute the plan's semantic identity formula:\n *\n * `sha256(UTF8(domain + NUL + JCS(domain-policy(record))))`\n *\n * The policy application is internal so callers cannot accidentally include a\n * record's existing self-digest or observational generation time.\n */\nexport function computeMetaWorkflowSemanticDigest(\n domain: MetaWorkflowSemanticDigestDomain,\n payload: unknown,\n): string {\n return computeMetaWorkflowSemanticDigestWithPolicy(\n domain,\n payload,\n resolveSemanticDigestPolicy(domain),\n );\n}\n\n/**\n * Compute a domain-separated semantic digest from an explicit exclusion\n * policy. Callers must own the domain and policy together; permanent\n * meta-workflow records should use {@link computeMetaWorkflowSemanticDigest}.\n */\nexport function computeMetaWorkflowSemanticDigestWithPolicy(\n domain: string,\n payload: unknown,\n policy: MetaWorkflowSemanticDigestPolicy,\n): string {\n if (domain.length === 0 || domain.includes('\\0')) {\n throw new TypeError(\n 'Meta-workflow semantic digest domain must be non-empty and contain no NUL',\n );\n }\n const semanticPayload = createMetaWorkflowSemanticPayloadWithPolicy(\n payload,\n policy,\n );\n const canonicalJson = serializeNormalizedJsonValue(semanticPayload);\n const hash = createHash('sha256');\n hash.update(domain, 'utf8');\n hash.update(Uint8Array.of(0));\n hash.update(canonicalJson, 'utf8');\n return formatSha256Digest(hash.digest('hex'));\n}\n\nfunction resolveSemanticDigestPolicy(\n domain: MetaWorkflowSemanticDigestDomain,\n): MetaWorkflowSemanticDigestPolicy {\n if (\n typeof domain !== 'string'\n || !Object.prototype.hasOwnProperty.call(\n META_WORKFLOW_SEMANTIC_DIGEST_POLICIES,\n domain,\n )\n ) {\n throw new TypeError('Unknown meta-workflow semantic digest domain');\n }\n return META_WORKFLOW_SEMANTIC_DIGEST_POLICIES[domain];\n}\n\nfunction formatSha256Digest(lowercaseHex: string): string {\n return `sha256:${lowercaseHex}`;\n}\n\nfunction normalizeJsonValue(\n value: unknown,\n path: string,\n ancestors: WeakSet<object>,\n): JsonValue {\n if (value === null) {\n return null;\n }\n\n switch (typeof value) {\n case 'boolean':\n return value;\n case 'number':\n if (!Number.isFinite(value)) {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'numbers must be finite IEEE-754 values',\n );\n }\n return value;\n case 'string':\n assertPairedSurrogates(value, path);\n return value;\n case 'undefined':\n case 'function':\n case 'symbol':\n case 'bigint':\n throw new MetaWorkflowCanonicalJsonError(\n path,\n `${typeof value} is not JSON data`,\n );\n case 'object':\n if (Array.isArray(value)) {\n return normalizeJsonArray(value, path, ancestors);\n }\n if (!isPlainJsonObject(value)) {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'objects must have Object.prototype or null prototype and no toJSON behavior',\n );\n }\n return normalizePlainJsonObject(value, path, ancestors);\n default:\n throw new MetaWorkflowCanonicalJsonError(path, 'unsupported JavaScript value');\n }\n}\n\nfunction normalizeJsonArray(\n value: unknown[],\n path: string,\n ancestors: WeakSet<object>,\n): readonly JsonValue[] {\n if (Object.getPrototypeOf(value) !== Array.prototype) {\n throw new MetaWorkflowCanonicalJsonError(path, 'non-plain arrays are not JSON data');\n }\n enterContainer(value, path, ancestors);\n\n try {\n const indexDescriptors = new Map<number, PropertyDescriptor>();\n for (const key of Reflect.ownKeys(value)) {\n if (typeof key === 'symbol') {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'symbol-keyed array properties are not JSON data',\n );\n }\n if (key === 'length') {\n continue;\n }\n\n const index = parseCanonicalArrayIndex(key);\n if (index === null || index >= value.length) {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n `array property ${JSON.stringify(key)} is not an element`,\n );\n }\n const descriptor = Object.getOwnPropertyDescriptor(value, key);\n if (descriptor === undefined || !('value' in descriptor) || !descriptor.enumerable) {\n throw new MetaWorkflowCanonicalJsonError(\n `${path}[${index}]`,\n 'array elements must be enumerable data properties',\n );\n }\n indexDescriptors.set(index, descriptor);\n }\n\n if (indexDescriptors.size !== value.length) {\n throw new MetaWorkflowCanonicalJsonError(path, 'sparse arrays are not permitted');\n }\n\n const normalized: JsonValue[] = [];\n for (let index = 0; index < value.length; index += 1) {\n const descriptor = indexDescriptors.get(index);\n if (descriptor === undefined) {\n throw new MetaWorkflowCanonicalJsonError(path, 'sparse arrays are not permitted');\n }\n normalized.push(\n normalizeJsonValue(descriptor.value, `${path}[${index}]`, ancestors),\n );\n }\n return normalized;\n } finally {\n ancestors.delete(value);\n }\n}\n\nfunction normalizePlainJsonObject(\n value: object,\n path: string,\n ancestors: WeakSet<object>,\n excludedFields: ReadonlySet<string> = new Set<string>(),\n): { readonly [key: string]: JsonValue } {\n if (!isPlainJsonObject(value)) {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'objects must have Object.prototype or null prototype and no toJSON behavior',\n );\n }\n enterContainer(value, path, ancestors);\n\n try {\n const descriptors = Object.getOwnPropertyDescriptors(value);\n for (const key of Reflect.ownKeys(value)) {\n if (typeof key === 'symbol') {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'symbol-keyed object properties are not JSON data',\n );\n }\n const descriptor = descriptors[key];\n if (descriptor === undefined || !('value' in descriptor) || !descriptor.enumerable) {\n throw new MetaWorkflowCanonicalJsonError(\n appendObjectPath(path, key),\n 'object members must be enumerable data properties',\n );\n }\n }\n\n const normalized: { [key: string]: JsonValue } = Object.create(null);\n const keys = Object.keys(descriptors).sort(compareUtf16CodeUnits);\n for (const key of keys) {\n assertPairedSurrogates(key, `${path} (object key)`);\n if (excludedFields.has(key)) {\n continue;\n }\n const descriptor = descriptors[key];\n if (descriptor === undefined || !('value' in descriptor)) {\n throw new MetaWorkflowCanonicalJsonError(\n appendObjectPath(path, key),\n 'object members must be data properties',\n );\n }\n normalized[key] = normalizeJsonValue(\n descriptor.value,\n appendObjectPath(path, key),\n ancestors,\n );\n }\n return normalized;\n } finally {\n ancestors.delete(value);\n }\n}\n\nfunction serializeNormalizedJsonValue(value: JsonValue): string {\n if (value === null || typeof value === 'boolean' || typeof value === 'number') {\n const serialized = JSON.stringify(value);\n if (serialized === undefined) {\n throw new MetaWorkflowCanonicalJsonError('$', 'failed to serialize JSON primitive');\n }\n return serialized;\n }\n if (typeof value === 'string') {\n return JSON.stringify(value);\n }\n if (Array.isArray(value)) {\n return `[${value.map(serializeNormalizedJsonValue).join(',')}]`;\n }\n\n const objectValue = value as { readonly [key: string]: JsonValue };\n const entries = Object.keys(objectValue)\n .sort(compareUtf16CodeUnits)\n .map(\n (key) =>\n `${JSON.stringify(key)}:${serializeNormalizedJsonValue(objectValue[key])}`,\n );\n return `{${entries.join(',')}}`;\n}\n\nfunction isPlainJsonObject(value: unknown): value is Record<string, unknown> {\n if (value === null || typeof value !== 'object' || Array.isArray(value)) {\n return false;\n }\n const prototype = Object.getPrototypeOf(value);\n return prototype === Object.prototype || prototype === null;\n}\n\nfunction enterContainer(\n value: object,\n path: string,\n ancestors: WeakSet<object>,\n): void {\n if (ancestors.has(value)) {\n throw new MetaWorkflowCanonicalJsonError(path, 'cyclic references are not permitted');\n }\n ancestors.add(value);\n}\n\nfunction parseCanonicalArrayIndex(key: string): number | null {\n if (key === '') {\n return null;\n }\n const index = Number(key);\n if (\n !Number.isInteger(index)\n || index < 0\n || index >= 0xffff_ffff\n || String(index) !== key\n ) {\n return null;\n }\n return index;\n}\n\nfunction compareUtf16CodeUnits(left: string, right: string): number {\n if (left < right) {\n return -1;\n }\n if (left > right) {\n return 1;\n }\n return 0;\n}\n\nfunction assertPairedSurrogates(value: string, path: string): void {\n for (let index = 0; index < value.length; index += 1) {\n const codeUnit = value.charCodeAt(index);\n if (codeUnit >= 0xd800 && codeUnit <= 0xdbff) {\n const nextCodeUnit = value.charCodeAt(index + 1);\n if (\n !Number.isFinite(nextCodeUnit)\n || nextCodeUnit < 0xdc00\n || nextCodeUnit > 0xdfff\n ) {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'strings must not contain unpaired UTF-16 surrogates',\n );\n }\n index += 1;\n continue;\n }\n if (codeUnit >= 0xdc00 && codeUnit <= 0xdfff) {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'strings must not contain unpaired UTF-16 surrogates',\n );\n }\n }\n}\n\nfunction appendObjectPath(path: string, key: string): string {\n return `${path}[${JSON.stringify(key)}]`;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"meta-workflow-canonical-json.backend.utils.js","sourceRoot":"","sources":["../../../../../src/flows-actors/utils/meta-workflow-canonical-json.backend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * App-neutral canonical JSON (RFC 8785/JCS-compatible) and a raw SHA-256 helper.\n *\n * This module used to carry the semantic-digest apparatus of the meta-workflow record layer — a\n * 60-domain policy table, domain-separated payload digests, a named-contract digest — every one of\n * them a digest that recorded AGREEMENT between two parts of the repository. That apparatus was\n * retired with the rest of the digest machinery (`.claude/rules/one-source-of-truth.md` Rule 0) once\n * nothing produced or compared those digests any more. What survives is the canonical serializer,\n * which the framework-knowledge generation pipeline uses for deterministic output bytes.\n */\nimport { createHash } from 'node:crypto';\n\n/**\n * The JSON data model accepted by the meta-workflow canonicalization boundary.\n *\n * The runtime functions intentionally accept `unknown` and validate it rather\n * than trusting this compile-time shape. Digest inputs may originate in parsed\n * artifacts or application-owned adapters, so a type assertion must never be\n * enough to admit a non-JSON value into semantic identity.\n */\nexport type JsonValue =\n | null\n | boolean\n | number\n | string\n | readonly JsonValue[]\n | { readonly [key: string]: JsonValue };\n\n/**\n * A fail-closed canonicalization error with the structural location of the\n * invalid value. Error messages intentionally describe shape/type only and do\n * not interpolate the rejected value, which may contain application data.\n */\nexport class MetaWorkflowCanonicalJsonError extends TypeError {\n public readonly path: string;\n\n public constructor(path: string, reason: string) {\n super(`Meta-workflow canonical JSON rejected ${path}: ${reason}`);\n this.name = 'MetaWorkflowCanonicalJsonError';\n this.path = path;\n }\n}\n\n/**\n * Produce RFC 8785/JCS-compatible JSON text from strict JSON data.\n *\n * Object keys are compared as raw UTF-16 code units, arrays retain their\n * authored order, numbers use ECMAScript's finite-number JSON form, strings\n * are preserved without Unicode normalization, and no whitespace is emitted.\n * Values that JavaScript's ordinary `JSON.stringify` would silently coerce or\n * omit are rejected instead, because such coercion would collapse distinct\n * semantic inputs onto one digest.\n */\nexport function canonicalizeMetaWorkflowJson(value: unknown): string {\n const normalized = normalizeJsonValue(value, '$', new WeakSet<object>());\n return serializeNormalizedJsonValue(normalized);\n}\n\n/**\n * Hash exact caller-supplied bytes with SHA-256.\n *\n * No decoding, newline normalization, JSON parsing, or canonicalization occurs\n * here. `Buffer` is accepted through its `Uint8Array` inheritance, and a view's\n * byte offset/length are respected by Node's hash implementation.\n */\nexport function computeMetaWorkflowRawByteDigest(bytes: Uint8Array): string {\n if (!(bytes instanceof Uint8Array)) {\n throw new TypeError('Meta-workflow raw-byte digest requires a Uint8Array');\n }\n return formatSha256Digest(createHash('sha256').update(bytes).digest('hex'));\n}\n\nfunction formatSha256Digest(lowercaseHex: string): string {\n return `sha256:${lowercaseHex}`;\n}\n\nfunction normalizeJsonValue(\n value: unknown,\n path: string,\n ancestors: WeakSet<object>,\n): JsonValue {\n if (value === null) {\n return null;\n }\n\n switch (typeof value) {\n case 'boolean':\n return value;\n case 'number':\n if (!Number.isFinite(value)) {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'numbers must be finite IEEE-754 values',\n );\n }\n return value;\n case 'string':\n assertPairedSurrogates(value, path);\n return value;\n case 'undefined':\n case 'function':\n case 'symbol':\n case 'bigint':\n throw new MetaWorkflowCanonicalJsonError(\n path,\n `${typeof value} is not JSON data`,\n );\n case 'object':\n if (Array.isArray(value)) {\n return normalizeJsonArray(value, path, ancestors);\n }\n if (!isPlainJsonObject(value)) {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'objects must have Object.prototype or null prototype and no toJSON behavior',\n );\n }\n return normalizePlainJsonObject(value, path, ancestors);\n default:\n throw new MetaWorkflowCanonicalJsonError(path, 'unsupported JavaScript value');\n }\n}\n\nfunction normalizeJsonArray(\n value: unknown[],\n path: string,\n ancestors: WeakSet<object>,\n): readonly JsonValue[] {\n if (Object.getPrototypeOf(value) !== Array.prototype) {\n throw new MetaWorkflowCanonicalJsonError(path, 'non-plain arrays are not JSON data');\n }\n enterContainer(value, path, ancestors);\n\n try {\n const indexDescriptors = new Map<number, PropertyDescriptor>();\n for (const key of Reflect.ownKeys(value)) {\n if (typeof key === 'symbol') {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'symbol-keyed array properties are not JSON data',\n );\n }\n if (key === 'length') {\n continue;\n }\n\n const index = parseCanonicalArrayIndex(key);\n if (index === null || index >= value.length) {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n `array property ${JSON.stringify(key)} is not an element`,\n );\n }\n const descriptor = Object.getOwnPropertyDescriptor(value, key);\n if (descriptor === undefined || !('value' in descriptor) || !descriptor.enumerable) {\n throw new MetaWorkflowCanonicalJsonError(\n `${path}[${index}]`,\n 'array elements must be enumerable data properties',\n );\n }\n indexDescriptors.set(index, descriptor);\n }\n\n if (indexDescriptors.size !== value.length) {\n throw new MetaWorkflowCanonicalJsonError(path, 'sparse arrays are not permitted');\n }\n\n const normalized: JsonValue[] = [];\n for (let index = 0; index < value.length; index += 1) {\n const descriptor = indexDescriptors.get(index);\n if (descriptor === undefined) {\n throw new MetaWorkflowCanonicalJsonError(path, 'sparse arrays are not permitted');\n }\n normalized.push(\n normalizeJsonValue(descriptor.value, `${path}[${index}]`, ancestors),\n );\n }\n return normalized;\n } finally {\n ancestors.delete(value);\n }\n}\n\nfunction normalizePlainJsonObject(\n value: object,\n path: string,\n ancestors: WeakSet<object>,\n excludedFields: ReadonlySet<string> = new Set<string>(),\n): { readonly [key: string]: JsonValue } {\n if (!isPlainJsonObject(value)) {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'objects must have Object.prototype or null prototype and no toJSON behavior',\n );\n }\n enterContainer(value, path, ancestors);\n\n try {\n const descriptors = Object.getOwnPropertyDescriptors(value);\n for (const key of Reflect.ownKeys(value)) {\n if (typeof key === 'symbol') {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'symbol-keyed object properties are not JSON data',\n );\n }\n const descriptor = descriptors[key];\n if (descriptor === undefined || !('value' in descriptor) || !descriptor.enumerable) {\n throw new MetaWorkflowCanonicalJsonError(\n appendObjectPath(path, key),\n 'object members must be enumerable data properties',\n );\n }\n }\n\n const normalized: { [key: string]: JsonValue } = Object.create(null);\n const keys = Object.keys(descriptors).sort(compareUtf16CodeUnits);\n for (const key of keys) {\n assertPairedSurrogates(key, `${path} (object key)`);\n if (excludedFields.has(key)) {\n continue;\n }\n const descriptor = descriptors[key];\n if (descriptor === undefined || !('value' in descriptor)) {\n throw new MetaWorkflowCanonicalJsonError(\n appendObjectPath(path, key),\n 'object members must be data properties',\n );\n }\n normalized[key] = normalizeJsonValue(\n descriptor.value,\n appendObjectPath(path, key),\n ancestors,\n );\n }\n return normalized;\n } finally {\n ancestors.delete(value);\n }\n}\n\nfunction serializeNormalizedJsonValue(value: JsonValue): string {\n if (value === null || typeof value === 'boolean' || typeof value === 'number') {\n const serialized = JSON.stringify(value);\n if (serialized === undefined) {\n throw new MetaWorkflowCanonicalJsonError('$', 'failed to serialize JSON primitive');\n }\n return serialized;\n }\n if (typeof value === 'string') {\n return JSON.stringify(value);\n }\n if (Array.isArray(value)) {\n return `[${value.map(serializeNormalizedJsonValue).join(',')}]`;\n }\n\n const objectValue = value as { readonly [key: string]: JsonValue };\n const entries = Object.keys(objectValue)\n .sort(compareUtf16CodeUnits)\n .map(\n (key) =>\n `${JSON.stringify(key)}:${serializeNormalizedJsonValue(objectValue[key])}`,\n );\n return `{${entries.join(',')}}`;\n}\n\nfunction isPlainJsonObject(value: unknown): value is Record<string, unknown> {\n if (value === null || typeof value !== 'object' || Array.isArray(value)) {\n return false;\n }\n const prototype = Object.getPrototypeOf(value);\n return prototype === Object.prototype || prototype === null;\n}\n\nfunction enterContainer(\n value: object,\n path: string,\n ancestors: WeakSet<object>,\n): void {\n if (ancestors.has(value)) {\n throw new MetaWorkflowCanonicalJsonError(path, 'cyclic references are not permitted');\n }\n ancestors.add(value);\n}\n\nfunction parseCanonicalArrayIndex(key: string): number | null {\n if (key === '') {\n return null;\n }\n const index = Number(key);\n if (\n !Number.isInteger(index)\n || index < 0\n || index >= 0xffff_ffff\n || String(index) !== key\n ) {\n return null;\n }\n return index;\n}\n\nfunction compareUtf16CodeUnits(left: string, right: string): number {\n if (left < right) {\n return -1;\n }\n if (left > right) {\n return 1;\n }\n return 0;\n}\n\nfunction assertPairedSurrogates(value: string, path: string): void {\n for (let index = 0; index < value.length; index += 1) {\n const codeUnit = value.charCodeAt(index);\n if (codeUnit >= 0xd800 && codeUnit <= 0xdbff) {\n const nextCodeUnit = value.charCodeAt(index + 1);\n if (\n !Number.isFinite(nextCodeUnit)\n || nextCodeUnit < 0xdc00\n || nextCodeUnit > 0xdfff\n ) {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'strings must not contain unpaired UTF-16 surrogates',\n );\n }\n index += 1;\n continue;\n }\n if (codeUnit >= 0xdc00 && codeUnit <= 0xdfff) {\n throw new MetaWorkflowCanonicalJsonError(\n path,\n 'strings must not contain unpaired UTF-16 surrogates',\n );\n }\n }\n}\n\nfunction appendObjectPath(path: string, key: string): string {\n return `${path}[${JSON.stringify(key)}]`;\n}\n"]}
|
package/dist/esm/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta-workflow-structured-generation-plan.backend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,wCAAwC,EAGzC,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"meta-workflow-structured-generation-plan.backend.utils.d.ts","sourceRoot":"","sources":["../../../../../src/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,wCAAwC,EAGzC,MAAM,sCAAsC,CAAC;AAG9C,eAAO,MAAM,yCAAyC,KAAK,CAAC;AAE5D,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,wCAAwC,CAAC;IAC5D,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,SAAS,EAAE,CAAC;CAC/C;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,EAAE,wBAAwB,EAAE,MAAM,GAAG,6BAA6B,CAelI;AAED,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,GAAG,MAAM,CAe3E"}
|
package/dist/esm/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta-workflow-structured-generation-plan.backend.utils.js","sourceRoot":"","sources":["../../../../../src/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport {\n MetaWorkflowStructuredGenerationPlanKind,\n MetaWorkflowStructuredGenerationPlanV1Schema,\n type MetaWorkflowStructuredGenerationPlanV1,\n} from '@wildo-ai/saas-models/meta-workflows';\n\nimport { computeMetaWorkflowSemanticDigest, MetaWorkflowSemanticDigestDomain } from './meta-workflow-canonical-json.backend.utils';\n\nexport const DEFAULT_MAX_STRUCTURED_DATA_FIELD_ALLOWED = 99;\n\nexport interface StructuredGenerationShapePlan {\n readonly leafFieldCount: number;\n readonly maximumLeafFieldsPerCall: number;\n readonly planKind: MetaWorkflowStructuredGenerationPlanKind;\n readonly schemaChunks: readonly z.ZodSchema[];\n}\n\nexport function planStructuredGenerationShape(schema: z.ZodSchema, maximumLeafFieldsPerCall: number): StructuredGenerationShapePlan {\n if (!Number.isSafeInteger(maximumLeafFieldsPerCall) || maximumLeafFieldsPerCall <= 0) throw new Error('maximumLeafFieldsPerCall must be a positive safe integer');\n const leafFieldCount = countStructuredSchemaLeafFields(schema);\n const schemaChunks = chunkStructuredSchema(schema, maximumLeafFieldsPerCall);\n const planKind = leafFieldCount <= maximumLeafFieldsPerCall\n ? MetaWorkflowStructuredGenerationPlanKind.SINGLE_CALL\n : schemaChunks.length > 1\n ? MetaWorkflowStructuredGenerationPlanKind.CHUNKED\n : MetaWorkflowStructuredGenerationPlanKind.UNCHUNKABLE_OVER_LIMIT;\n return {\n leafFieldCount,\n maximumLeafFieldsPerCall,\n planKind,\n schemaChunks,\n };\n}\n\nexport function countStructuredSchemaLeafFields(schema: z.ZodSchema): number {\n if (!schema || typeof schema !== 'object' || !('_def' in schema)) return 1;\n const def = (schema as z.ZodSchema & { _def: Record<string, unknown> })._def as Record<string, any>;\n const typeName = def.typeName || def.type;\n if (['ZodOptional', 'optional', 'ZodNullable', 'nullable', 'ZodDefault', 'default'].includes(typeName)) return countStructuredSchemaLeafFields(def.innerType || def.wrapped);\n if (['ZodEffects', 'effects', 'transform', 'refine'].includes(typeName)) return countStructuredSchemaLeafFields(def.schema || def.innerType);\n if (typeName === 'ZodObject' || typeName === 'object') {\n const shape = typeof def.shape === 'function' ? def.shape() : def.shape;\n return shape ? Object.values(shape).reduce<number>((count, child) => count + countStructuredSchemaLeafFields(child as z.ZodSchema), 0) : 1;\n }\n if (typeName === 'ZodArray' || typeName === 'array') return countStructuredSchemaLeafFields(def.element || def.type);\n if (['ZodUnion', 'union', 'ZodDiscriminatedUnion', 'discriminatedUnion'].includes(typeName)) {\n return Math.max(1, ...(def.options || []).map((option: z.ZodSchema) => countStructuredSchemaLeafFields(option)));\n }\n return 1;\n}\n\nfunction flattenStructuredSchema(schema: z.ZodSchema, basePath: string[] = []): Array<{ path: string[]; schema: z.ZodSchema }> {\n if (!schema || typeof schema !== 'object' || !('_def' in schema)) return [{ path: basePath, schema }];\n const def = (schema as z.ZodSchema & { _def: Record<string, unknown> })._def as Record<string, any>;\n const typeName = def.typeName || def.type;\n if (['ZodOptional', 'optional', 'ZodNullable', 'nullable', 'ZodDefault', 'default', 'ZodEffects', 'effects', 'transform', 'refine'].includes(typeName)) return [{ path: basePath, schema }];\n if (typeName === 'ZodObject' || typeName === 'object') {\n const shape = typeof def.shape === 'function' ? def.shape() : def.shape;\n if (!shape) return [{ path: basePath, schema }];\n return Object.keys(shape).flatMap((key) => flattenStructuredSchema(shape[key], [...basePath, key]));\n }\n return [{ path: basePath, schema }];\n}\n\nenum StructuredSchemaRootWrapperKind {\n OPTIONAL = 'OPTIONAL',\n NULLABLE = 'NULLABLE',\n}\n\n/**\n * Remove only root wrappers whose semantics can be preserved independently on every object chunk.\n * Default/effect wrappers remain indivisible because duplicating their transformation or default\n * across partial objects would change the caller-authored schema semantics.\n */\nfunction unwrapChunkableStructuredSchemaRoot(schema: z.ZodSchema): { schema: z.ZodSchema; wrappers: readonly StructuredSchemaRootWrapperKind[] } {\n const wrappers: StructuredSchemaRootWrapperKind[] = [];\n let current = schema;\n while (current instanceof z.ZodOptional || current instanceof z.ZodNullable) {\n if (current instanceof z.ZodOptional) wrappers.push(StructuredSchemaRootWrapperKind.OPTIONAL);\n else wrappers.push(StructuredSchemaRootWrapperKind.NULLABLE);\n current = current.unwrap() as z.ZodSchema;\n }\n return { schema: current, wrappers };\n}\n\nfunction reapplyChunkableStructuredSchemaRootWrappers(schema: z.ZodSchema, wrappers: readonly StructuredSchemaRootWrapperKind[]): z.ZodSchema {\n return [...wrappers]\n .reverse()\n .reduce<z.ZodSchema>((wrapped, wrapper) => (wrapper === StructuredSchemaRootWrapperKind.OPTIONAL ? wrapped.optional() : wrapped.nullable()), schema);\n}\n\nfunction buildNestedStructuredSchema(paths: Array<{ path: string[]; schema: z.ZodSchema }>): z.ZodSchema {\n const nested: Record<string, unknown> = {};\n for (const { path, schema } of paths) {\n let current = nested as Record<string, any>;\n for (const part of path.slice(0, -1)) current = current[part] ??= {};\n current[path[path.length - 1]!] = schema;\n }\n const convert = (value: Record<string, any>): z.ZodSchema => z.object(Object.fromEntries(Object.entries(value).map(([key, child]) => [key, child && typeof child === 'object' && '_def' in child ? child : convert(child)])));\n return convert(nested);\n}\n\nfunction chunkStructuredSchema(schema: z.ZodSchema, maximumLeafFieldsPerCall: number): readonly z.ZodSchema[] {\n if (countStructuredSchemaLeafFields(schema) <= maximumLeafFieldsPerCall) return [schema];\n const unwrappedRoot = unwrapChunkableStructuredSchemaRoot(schema);\n const flattened = flattenStructuredSchema(unwrappedRoot.schema);\n // A non-object root (including a default/effect wrapper) has no safe partial-object\n // reconstruction. Return no calls so both the sealed planner and executor refuse before spend.\n if (flattened.some(({ path }) => path.length === 0)) return [];\n // Pack by LEAF COUNT, which is the unit the ceiling is expressed in.\n //\n // This previously sliced `flattened` by a chunk SIZE derived from the ceiling -- but `flattened` holds\n // one entry per indivisible PATH, and a path is not a leaf: an array-of-objects is a single entry\n // carrying its element's whole leaf count. So an entry count was being compared against a leaf budget,\n // and for any schema whose paths carry more than one leaf the arithmetic ran the wrong way: with 16\n // paths and a 60-leaf ceiling the slice width was 57, every path landed in ONE chunk of 178 leaves, the\n // post-condition below rejected it, and the planner reported UNCHUNKABLE_OVER_LIMIT.\n //\n // That report was a false negative, and an expensive one: UNCHUNKABLE_OVER_LIMIT means \"this schema's\n // root semantics cannot survive being split\", which is a refusal no ceiling can resolve. The market\n // snapshot -- 16 independent top-level collections, the most splittable shape there is -- was refused\n // at every ceiling below its own leaf count, so lowering the ceiling could only ever turn a working\n // single call into a hard refusal. Greedy packing is sufficient here because every entry is already\n // indivisible; there is nothing to gain from a better bin-packing than \"fill until the next one\n // doesn't fit\", and a deterministic order keeps the plan digest stable.\n //\n // The 0.95 cushion is KEPT and simply moved onto the right unit. It was never a fudge: a provider counts\n // total properties, including the intermediate objects a nested chunk rebuilds, while this ceiling counts\n // LEAVES -- so packing flush to the ceiling can overshoot the provider's own limit. Applying it to leaves\n // preserves that headroom for the first time; applied to an entry count it protected nothing.\n const chunkLeafBudget = Math.max(1, Math.floor(maximumLeafFieldsPerCall * 0.95));\n const chunks: z.ZodSchema[] = [];\n let currentEntries: Array<{ path: string[]; schema: z.ZodSchema }> = [];\n let currentLeafFields = 0;\n const flushCurrentChunk = (): void => {\n if (currentEntries.length === 0) return;\n chunks.push(\n reapplyChunkableStructuredSchemaRootWrappers(\n buildNestedStructuredSchema(currentEntries),\n unwrappedRoot.wrappers,\n ),\n );\n currentEntries = [];\n currentLeafFields = 0;\n };\n for (const entry of flattened) {\n const entryLeafFields = countStructuredSchemaLeafFields(entry.schema);\n // One indivisible path that alone exceeds the ceiling. No packing resolves it, so refuse the plan\n // rather than emit a chunk the provider would reject -- this is the genuine UNCHUNKABLE case.\n if (entryLeafFields > maximumLeafFieldsPerCall) return [];\n // Packed against the cushioned budget, but a single entry that clears the true ceiling while exceeding\n // the cushion still gets its own chunk -- the ceiling is the real limit, and refusing there would\n // reject a schema the provider can answer.\n if (currentEntries.length > 0 && currentLeafFields + entryLeafFields > chunkLeafBudget) flushCurrentChunk();\n currentEntries.push(entry);\n currentLeafFields += entryLeafFields;\n }\n flushCurrentChunk();\n // Post-condition. The packing loop above cannot exceed the ceiling, so this now guards the\n // RECONSTRUCTION rather than the arithmetic: if rebuilding a chunk's nested shape ever changed its\n // leaf count, the plan would under-report provider fan-out. Refuse rather than under-report.\n if (chunks.some((chunk) => countStructuredSchemaLeafFields(chunk) > maximumLeafFieldsPerCall)) return [];\n return chunks;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"meta-workflow-structured-generation-plan.backend.utils.js","sourceRoot":"","sources":["../../../../../src/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport {\n MetaWorkflowStructuredGenerationPlanKind,\n MetaWorkflowStructuredGenerationPlanV1Schema,\n type MetaWorkflowStructuredGenerationPlanV1,\n} from '@wildo-ai/saas-models/meta-workflows';\n\n\nexport const DEFAULT_MAX_STRUCTURED_DATA_FIELD_ALLOWED = 99;\n\nexport interface StructuredGenerationShapePlan {\n readonly leafFieldCount: number;\n readonly maximumLeafFieldsPerCall: number;\n readonly planKind: MetaWorkflowStructuredGenerationPlanKind;\n readonly schemaChunks: readonly z.ZodSchema[];\n}\n\nexport function planStructuredGenerationShape(schema: z.ZodSchema, maximumLeafFieldsPerCall: number): StructuredGenerationShapePlan {\n if (!Number.isSafeInteger(maximumLeafFieldsPerCall) || maximumLeafFieldsPerCall <= 0) throw new Error('maximumLeafFieldsPerCall must be a positive safe integer');\n const leafFieldCount = countStructuredSchemaLeafFields(schema);\n const schemaChunks = chunkStructuredSchema(schema, maximumLeafFieldsPerCall);\n const planKind = leafFieldCount <= maximumLeafFieldsPerCall\n ? MetaWorkflowStructuredGenerationPlanKind.SINGLE_CALL\n : schemaChunks.length > 1\n ? MetaWorkflowStructuredGenerationPlanKind.CHUNKED\n : MetaWorkflowStructuredGenerationPlanKind.UNCHUNKABLE_OVER_LIMIT;\n return {\n leafFieldCount,\n maximumLeafFieldsPerCall,\n planKind,\n schemaChunks,\n };\n}\n\nexport function countStructuredSchemaLeafFields(schema: z.ZodSchema): number {\n if (!schema || typeof schema !== 'object' || !('_def' in schema)) return 1;\n const def = (schema as z.ZodSchema & { _def: Record<string, unknown> })._def as Record<string, any>;\n const typeName = def.typeName || def.type;\n if (['ZodOptional', 'optional', 'ZodNullable', 'nullable', 'ZodDefault', 'default'].includes(typeName)) return countStructuredSchemaLeafFields(def.innerType || def.wrapped);\n if (['ZodEffects', 'effects', 'transform', 'refine'].includes(typeName)) return countStructuredSchemaLeafFields(def.schema || def.innerType);\n if (typeName === 'ZodObject' || typeName === 'object') {\n const shape = typeof def.shape === 'function' ? def.shape() : def.shape;\n return shape ? Object.values(shape).reduce<number>((count, child) => count + countStructuredSchemaLeafFields(child as z.ZodSchema), 0) : 1;\n }\n if (typeName === 'ZodArray' || typeName === 'array') return countStructuredSchemaLeafFields(def.element || def.type);\n if (['ZodUnion', 'union', 'ZodDiscriminatedUnion', 'discriminatedUnion'].includes(typeName)) {\n return Math.max(1, ...(def.options || []).map((option: z.ZodSchema) => countStructuredSchemaLeafFields(option)));\n }\n return 1;\n}\n\nfunction flattenStructuredSchema(schema: z.ZodSchema, basePath: string[] = []): Array<{ path: string[]; schema: z.ZodSchema }> {\n if (!schema || typeof schema !== 'object' || !('_def' in schema)) return [{ path: basePath, schema }];\n const def = (schema as z.ZodSchema & { _def: Record<string, unknown> })._def as Record<string, any>;\n const typeName = def.typeName || def.type;\n if (['ZodOptional', 'optional', 'ZodNullable', 'nullable', 'ZodDefault', 'default', 'ZodEffects', 'effects', 'transform', 'refine'].includes(typeName)) return [{ path: basePath, schema }];\n if (typeName === 'ZodObject' || typeName === 'object') {\n const shape = typeof def.shape === 'function' ? def.shape() : def.shape;\n if (!shape) return [{ path: basePath, schema }];\n return Object.keys(shape).flatMap((key) => flattenStructuredSchema(shape[key], [...basePath, key]));\n }\n return [{ path: basePath, schema }];\n}\n\nenum StructuredSchemaRootWrapperKind {\n OPTIONAL = 'OPTIONAL',\n NULLABLE = 'NULLABLE',\n}\n\n/**\n * Remove only root wrappers whose semantics can be preserved independently on every object chunk.\n * Default/effect wrappers remain indivisible because duplicating their transformation or default\n * across partial objects would change the caller-authored schema semantics.\n */\nfunction unwrapChunkableStructuredSchemaRoot(schema: z.ZodSchema): { schema: z.ZodSchema; wrappers: readonly StructuredSchemaRootWrapperKind[] } {\n const wrappers: StructuredSchemaRootWrapperKind[] = [];\n let current = schema;\n while (current instanceof z.ZodOptional || current instanceof z.ZodNullable) {\n if (current instanceof z.ZodOptional) wrappers.push(StructuredSchemaRootWrapperKind.OPTIONAL);\n else wrappers.push(StructuredSchemaRootWrapperKind.NULLABLE);\n current = current.unwrap() as z.ZodSchema;\n }\n return { schema: current, wrappers };\n}\n\nfunction reapplyChunkableStructuredSchemaRootWrappers(schema: z.ZodSchema, wrappers: readonly StructuredSchemaRootWrapperKind[]): z.ZodSchema {\n return [...wrappers]\n .reverse()\n .reduce<z.ZodSchema>((wrapped, wrapper) => (wrapper === StructuredSchemaRootWrapperKind.OPTIONAL ? wrapped.optional() : wrapped.nullable()), schema);\n}\n\nfunction buildNestedStructuredSchema(paths: Array<{ path: string[]; schema: z.ZodSchema }>): z.ZodSchema {\n const nested: Record<string, unknown> = {};\n for (const { path, schema } of paths) {\n let current = nested as Record<string, any>;\n for (const part of path.slice(0, -1)) current = current[part] ??= {};\n current[path[path.length - 1]!] = schema;\n }\n const convert = (value: Record<string, any>): z.ZodSchema => z.object(Object.fromEntries(Object.entries(value).map(([key, child]) => [key, child && typeof child === 'object' && '_def' in child ? child : convert(child)])));\n return convert(nested);\n}\n\nfunction chunkStructuredSchema(schema: z.ZodSchema, maximumLeafFieldsPerCall: number): readonly z.ZodSchema[] {\n if (countStructuredSchemaLeafFields(schema) <= maximumLeafFieldsPerCall) return [schema];\n const unwrappedRoot = unwrapChunkableStructuredSchemaRoot(schema);\n const flattened = flattenStructuredSchema(unwrappedRoot.schema);\n // A non-object root (including a default/effect wrapper) has no safe partial-object\n // reconstruction. Return no calls so both the sealed planner and executor refuse before spend.\n if (flattened.some(({ path }) => path.length === 0)) return [];\n // Pack by LEAF COUNT, which is the unit the ceiling is expressed in.\n //\n // This previously sliced `flattened` by a chunk SIZE derived from the ceiling -- but `flattened` holds\n // one entry per indivisible PATH, and a path is not a leaf: an array-of-objects is a single entry\n // carrying its element's whole leaf count. So an entry count was being compared against a leaf budget,\n // and for any schema whose paths carry more than one leaf the arithmetic ran the wrong way: with 16\n // paths and a 60-leaf ceiling the slice width was 57, every path landed in ONE chunk of 178 leaves, the\n // post-condition below rejected it, and the planner reported UNCHUNKABLE_OVER_LIMIT.\n //\n // That report was a false negative, and an expensive one: UNCHUNKABLE_OVER_LIMIT means \"this schema's\n // root semantics cannot survive being split\", which is a refusal no ceiling can resolve. The market\n // snapshot -- 16 independent top-level collections, the most splittable shape there is -- was refused\n // at every ceiling below its own leaf count, so lowering the ceiling could only ever turn a working\n // single call into a hard refusal. Greedy packing is sufficient here because every entry is already\n // indivisible; there is nothing to gain from a better bin-packing than \"fill until the next one\n // doesn't fit\", and a deterministic order keeps the plan digest stable.\n //\n // The 0.95 cushion is KEPT and simply moved onto the right unit. It was never a fudge: a provider counts\n // total properties, including the intermediate objects a nested chunk rebuilds, while this ceiling counts\n // LEAVES -- so packing flush to the ceiling can overshoot the provider's own limit. Applying it to leaves\n // preserves that headroom for the first time; applied to an entry count it protected nothing.\n const chunkLeafBudget = Math.max(1, Math.floor(maximumLeafFieldsPerCall * 0.95));\n const chunks: z.ZodSchema[] = [];\n let currentEntries: Array<{ path: string[]; schema: z.ZodSchema }> = [];\n let currentLeafFields = 0;\n const flushCurrentChunk = (): void => {\n if (currentEntries.length === 0) return;\n chunks.push(\n reapplyChunkableStructuredSchemaRootWrappers(\n buildNestedStructuredSchema(currentEntries),\n unwrappedRoot.wrappers,\n ),\n );\n currentEntries = [];\n currentLeafFields = 0;\n };\n for (const entry of flattened) {\n const entryLeafFields = countStructuredSchemaLeafFields(entry.schema);\n // One indivisible path that alone exceeds the ceiling. No packing resolves it, so refuse the plan\n // rather than emit a chunk the provider would reject -- this is the genuine UNCHUNKABLE case.\n if (entryLeafFields > maximumLeafFieldsPerCall) return [];\n // Packed against the cushioned budget, but a single entry that clears the true ceiling while exceeding\n // the cushion still gets its own chunk -- the ceiling is the real limit, and refusing there would\n // reject a schema the provider can answer.\n if (currentEntries.length > 0 && currentLeafFields + entryLeafFields > chunkLeafBudget) flushCurrentChunk();\n currentEntries.push(entry);\n currentLeafFields += entryLeafFields;\n }\n flushCurrentChunk();\n // Post-condition. The packing loop above cannot exceed the ceiling, so this now guards the\n // RECONSTRUCTION rather than the arithmetic: if rebuilding a chunk's nested shape ever changed its\n // leaf count, the plan would under-report provider fan-out. Refuse rather than under-report.\n if (chunks.some((chunk) => countStructuredSchemaLeafFields(chunk) > maximumLeafFieldsPerCall)) return [];\n return chunks;\n}\n"]}
|
|
@@ -7,9 +7,16 @@ import type { LifecycleEvaluatorBackendService } from './lifecycle-evaluator.bac
|
|
|
7
7
|
import type { MilestoneConditionRegistryBackendService } from './milestone-condition-registry.backend.service';
|
|
8
8
|
import type { FeatureResolutionBackendService } from '../../features/services/feature-resolution.backend.service';
|
|
9
9
|
import type { ResourcesRegistryBackendService } from '../../resources/services/resources-registry.backend.service';
|
|
10
|
+
import type { ProgressionStateStoreBackendService } from './progression-state-store.backend.service';
|
|
10
11
|
/**
|
|
11
12
|
* Milestone Evaluator Backend Service
|
|
12
13
|
*
|
|
14
|
+
* Scope resolution, the load-or-create and the scope filter moved to
|
|
15
|
+
* `ProgressionStateStoreBackendService` on 2026-09-08 (#414), when value moments became a SECOND
|
|
16
|
+
* evaluator over the same row. Nothing about them changed — they are shared rather than copied,
|
|
17
|
+
* because two implementations of a load-or-create whose duplicate-key catch is a deliberate
|
|
18
|
+
* concurrency decision is exactly how the two drift.
|
|
19
|
+
*
|
|
13
20
|
* Pipeline integration entry point for milestone evaluation.
|
|
14
21
|
* Called fire-and-forget after guidance trigger evaluation in the operation pipeline.
|
|
15
22
|
*
|
|
@@ -26,10 +33,11 @@ export declare class MilestoneEvaluatorBackendService {
|
|
|
26
33
|
private readonly repositoriesRegistry;
|
|
27
34
|
private readonly resourcesRegistry;
|
|
28
35
|
private readonly conditionRegistry;
|
|
36
|
+
private readonly progressionStateStore;
|
|
29
37
|
private readonly featureResolution;
|
|
30
38
|
private readonly lifecycleEvaluator?;
|
|
31
39
|
private logDebug;
|
|
32
|
-
constructor(logger: LoggerService, milestoneRegistry: MilestoneDefinitionRegistryBackendService, webSocketService: WebSocketService, repositoriesRegistry: RepositoriesRegistryHandlerBackendService, resourcesRegistry: ResourcesRegistryBackendService, conditionRegistry: MilestoneConditionRegistryBackendService, featureResolution: FeatureResolutionBackendService, lifecycleEvaluator?: LifecycleEvaluatorBackendService);
|
|
40
|
+
constructor(logger: LoggerService, milestoneRegistry: MilestoneDefinitionRegistryBackendService, webSocketService: WebSocketService, repositoriesRegistry: RepositoriesRegistryHandlerBackendService, resourcesRegistry: ResourcesRegistryBackendService, conditionRegistry: MilestoneConditionRegistryBackendService, progressionStateStore: ProgressionStateStoreBackendService, featureResolution: FeatureResolutionBackendService, lifecycleEvaluator?: LifecycleEvaluatorBackendService);
|
|
33
41
|
/**
|
|
34
42
|
* Pipeline integration entry point.
|
|
35
43
|
* Called fire-and-forget after guidance trigger evaluation.
|
|
@@ -46,21 +54,8 @@ export declare class MilestoneEvaluatorBackendService {
|
|
|
46
54
|
organizationId?: string;
|
|
47
55
|
}): Promise<void>;
|
|
48
56
|
private evaluateScopeGroup;
|
|
49
|
-
/**
|
|
50
|
-
* Resolve scope to resource type + scope entity ID.
|
|
51
|
-
*
|
|
52
|
-
* Either id may be absent: an execution with no user principal has no USER
|
|
53
|
-
* scope, and one outside any organization has no ORGANIZATION scope. The
|
|
54
|
-
* caller treats an absent `scopeId` as "this scope does not apply", which is
|
|
55
|
-
* why every downstream helper takes the RESOLVED id instead of the pair —
|
|
56
|
-
* routing by scope and then re-deriving which id belongs to it is what let an
|
|
57
|
-
* inapplicable scope reach the store in the first place.
|
|
58
|
-
*/
|
|
59
|
-
private resolveScopeTarget;
|
|
60
57
|
private evaluateCondition;
|
|
61
58
|
private areDependenciesMet;
|
|
62
|
-
private loadOrCreateProgressionState;
|
|
63
|
-
private createDefaultProgressionState;
|
|
64
59
|
/**
|
|
65
60
|
* Push a PROGRESSION_UPDATED WS event carrying the scope's post-increment
|
|
66
61
|
* `operationCounts` + `totalPoints`. Same scope-aware channel routing as
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"milestone-evaluator.backend.service.d.ts","sourceRoot":"","sources":["../../../../../src/guidance/services/milestone-evaluator.backend.service.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAuB1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAC;AAClG,OAAO,KAAK,EAAE,yCAAyC,EAAE,MAAM,iDAAiD,CAAC;AACjH,OAAO,KAAK,EAAE,gBAAgB,EAAoB,MAAM,uDAAuD,CAAC;AAChH,OAAO,KAAK,EAAE,yCAAyC,EAAE,MAAM,qGAAqG,CAAC;AACrK,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AAC9F,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,gDAAgD,CAAC;AAC/G,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,yEAAyE,CAAC;AAC/H,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,0EAA0E,CAAC;
|
|
1
|
+
{"version":3,"file":"milestone-evaluator.backend.service.d.ts","sourceRoot":"","sources":["../../../../../src/guidance/services/milestone-evaluator.backend.service.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAuB1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAC;AAClG,OAAO,KAAK,EAAE,yCAAyC,EAAE,MAAM,iDAAiD,CAAC;AACjH,OAAO,KAAK,EAAE,gBAAgB,EAAoB,MAAM,uDAAuD,CAAC;AAChH,OAAO,KAAK,EAAE,yCAAyC,EAAE,MAAM,qGAAqG,CAAC;AACrK,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AAC9F,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,gDAAgD,CAAC;AAC/G,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,yEAAyE,CAAC;AAC/H,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,0EAA0E,CAAC;AAGhI,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,2CAA2C,CAAC;AAErG;;;;;;;;;;;;;;;;;GAiBG;AACH,qBACa,gCAAgC;IAKN,OAAO,CAAC,QAAQ,CAAC,MAAM;IACF,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAC7C,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACf,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAC/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IACvC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACnC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IAXjG,OAAO,CAAC,QAAQ,CAA+D;gBAGzB,MAAM,EAAE,aAAa,EACA,iBAAiB,EAAE,yCAAyC,EACvE,gBAAgB,EAAE,gBAAgB,EAChB,oBAAoB,EAAE,yCAAyC,EAC1E,iBAAiB,EAAE,+BAA+B,EAC/C,iBAAiB,EAAE,wCAAwC,EAChE,qBAAqB,EAAE,mCAAmC,EACvD,iBAAiB,EAAE,+BAA+B,EAC5C,kBAAkB,CAAC,EAAE,gCAAgC;IAMnI;;;OAGG;IACU,oBAAoB,CAAC,MAAM,EAAE;QACxC,YAAY,EAAE,MAAM,CAAC;QACrB,mBAAmB,EAAE,MAAM,CAAC;QAC5B;;;;WAIG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GAAG,OAAO,CAAC,IAAI,CAAC;YAkDH,kBAAkB;IAsIhC,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,kBAAkB;IAS1B;;;;;;OAMG;YACW,sBAAsB;YAmCtB,cAAc;IAgE5B;;OAEG;YACW,aAAa;IA8E3B,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,4BAA4B;IAgBpC,OAAO,CAAC,+BAA+B;IAOvC;;OAEG;YACW,oBAAoB;CAoCnC"}
|