@wildo-ai/saas-backend-lib 1.1.2 → 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.
Files changed (853) hide show
  1. package/dist/esm/applications/services/worker-remote-client-factory.backend.service.d.ts.map +1 -1
  2. package/dist/esm/applications/services/worker-remote-client-factory.backend.service.js +19 -1
  3. package/dist/esm/applications/services/worker-remote-client-factory.backend.service.js.map +1 -1
  4. package/dist/esm/base-classes/models/manual-controllers.backend.definition.d.ts.map +1 -1
  5. package/dist/esm/base-classes/models/manual-controllers.backend.definition.js +4 -0
  6. package/dist/esm/base-classes/models/manual-controllers.backend.definition.js.map +1 -1
  7. package/dist/esm/base-classes/services/batches/child-lifecycle-teardown.batch.backend.service.d.ts +35 -0
  8. package/dist/esm/base-classes/services/batches/child-lifecycle-teardown.batch.backend.service.d.ts.map +1 -0
  9. package/dist/esm/base-classes/services/batches/child-lifecycle-teardown.batch.backend.service.js +111 -0
  10. package/dist/esm/base-classes/services/batches/child-lifecycle-teardown.batch.backend.service.js.map +1 -0
  11. package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.d.ts +50 -0
  12. package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.d.ts.map +1 -0
  13. package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.js +199 -0
  14. package/dist/esm/base-classes/services/batches/credential-expiry-sweep.batch.backend.service.js.map +1 -0
  15. package/dist/esm/base-classes/services/batches/engine-custom-batch-manifests.d.ts +111 -0
  16. package/dist/esm/base-classes/services/batches/engine-custom-batch-manifests.d.ts.map +1 -1
  17. package/dist/esm/base-classes/services/batches/engine-custom-batch-manifests.js +140 -0
  18. package/dist/esm/base-classes/services/batches/engine-custom-batch-manifests.js.map +1 -1
  19. package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.d.ts.map +1 -1
  20. package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.js +27 -6
  21. package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.js.map +1 -1
  22. package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.d.ts +124 -13
  23. package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.d.ts.map +1 -1
  24. package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.js +207 -21
  25. package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.js.map +1 -1
  26. package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.d.ts +60 -8
  27. package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.d.ts.map +1 -1
  28. package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.js +174 -26
  29. package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.js.map +1 -1
  30. package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.d.ts +47 -4
  31. package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.d.ts.map +1 -1
  32. package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.js +96 -29
  33. package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.js.map +1 -1
  34. package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.d.ts +55 -0
  35. package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.d.ts.map +1 -0
  36. package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.js +114 -0
  37. package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.js.map +1 -0
  38. package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.d.ts +89 -14
  39. package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.d.ts.map +1 -1
  40. package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.js +84 -11
  41. package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.js.map +1 -1
  42. package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.d.ts.map +1 -1
  43. package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.js +9 -1
  44. package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.js.map +1 -1
  45. package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.d.ts +49 -0
  46. package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.d.ts.map +1 -1
  47. package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.js +171 -18
  48. package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.js.map +1 -1
  49. package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.d.ts.map +1 -1
  50. package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.js +23 -3
  51. package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.js.map +1 -1
  52. package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.d.ts.map +1 -1
  53. package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.js +20 -0
  54. package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.js.map +1 -1
  55. package/dist/esm/base-classes/services/services/resource-operation-custom-implementation-base.backend.service.d.ts +22 -0
  56. package/dist/esm/base-classes/services/services/resource-operation-custom-implementation-base.backend.service.d.ts.map +1 -1
  57. package/dist/esm/base-classes/services/services/resource-operation-custom-implementation-base.backend.service.js.map +1 -1
  58. package/dist/esm/base-classes/services/services/resource-status-transition.custom-impl.backend.service.d.ts.map +1 -1
  59. package/dist/esm/base-classes/services/services/resource-status-transition.custom-impl.backend.service.js +4 -1
  60. package/dist/esm/base-classes/services/services/resource-status-transition.custom-impl.backend.service.js.map +1 -1
  61. package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.d.ts +11 -0
  62. package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.d.ts.map +1 -1
  63. package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.js +39 -5
  64. package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.js.map +1 -1
  65. package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.d.ts +181 -2
  66. package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.d.ts.map +1 -1
  67. package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.js +529 -41
  68. package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.js.map +1 -1
  69. package/dist/esm/base-classes/services/services/system-access.backend.service.d.ts +36 -3
  70. package/dist/esm/base-classes/services/services/system-access.backend.service.d.ts.map +1 -1
  71. package/dist/esm/base-classes/services/services/system-access.backend.service.js +70 -8
  72. package/dist/esm/base-classes/services/services/system-access.backend.service.js.map +1 -1
  73. package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.d.ts +28 -0
  74. package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.d.ts.map +1 -0
  75. package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.js +90 -0
  76. package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.js.map +1 -0
  77. package/dist/esm/billing/batches/usage-flush.batch.backend.service.d.ts +44 -0
  78. package/dist/esm/billing/batches/usage-flush.batch.backend.service.d.ts.map +1 -0
  79. package/dist/esm/billing/batches/usage-flush.batch.backend.service.js +99 -0
  80. package/dist/esm/billing/batches/usage-flush.batch.backend.service.js.map +1 -0
  81. package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.d.ts +91 -0
  82. package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.d.ts.map +1 -0
  83. package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.js +152 -0
  84. package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.js.map +1 -0
  85. package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.d.ts +186 -0
  86. package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.d.ts.map +1 -0
  87. package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.js +474 -0
  88. package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.js.map +1 -0
  89. package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.d.ts +100 -0
  90. package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.d.ts.map +1 -1
  91. package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.js +209 -6
  92. package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.js.map +1 -1
  93. package/dist/esm/billing/services/back-office/usage-metering.backend.service.d.ts +200 -4
  94. package/dist/esm/billing/services/back-office/usage-metering.backend.service.d.ts.map +1 -1
  95. package/dist/esm/billing/services/back-office/usage-metering.backend.service.js +593 -64
  96. package/dist/esm/billing/services/back-office/usage-metering.backend.service.js.map +1 -1
  97. package/dist/esm/billing/services/billing-adapter-registry.backend.d.ts +36 -0
  98. package/dist/esm/billing/services/billing-adapter-registry.backend.d.ts.map +1 -0
  99. package/dist/esm/billing/services/billing-adapter-registry.backend.js +83 -0
  100. package/dist/esm/billing/services/billing-adapter-registry.backend.js.map +1 -0
  101. package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.d.ts +9 -0
  102. package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.d.ts.map +1 -1
  103. package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.js +11 -1
  104. package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.js.map +1 -1
  105. package/dist/esm/billing/services/custom-impl/billing-account.mutations.custom-impl.backend.service.d.ts.map +1 -1
  106. package/dist/esm/billing/services/custom-impl/billing-account.mutations.custom-impl.backend.service.js +48 -7
  107. package/dist/esm/billing/services/custom-impl/billing-account.mutations.custom-impl.backend.service.js.map +1 -1
  108. package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.d.ts +38 -1
  109. package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.d.ts.map +1 -1
  110. package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.js +67 -2
  111. package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.js.map +1 -1
  112. package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.d.ts +30 -1
  113. package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.d.ts.map +1 -1
  114. package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.js +43 -1
  115. package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.js.map +1 -1
  116. package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.d.ts +11 -3
  117. package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.d.ts.map +1 -1
  118. package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.js +30 -16
  119. package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.js.map +1 -1
  120. package/dist/esm/billing/services/custom-impl/subscription.mutations.custom-impl.backend.service.d.ts.map +1 -1
  121. package/dist/esm/billing/services/custom-impl/subscription.mutations.custom-impl.backend.service.js +104 -25
  122. package/dist/esm/billing/services/custom-impl/subscription.mutations.custom-impl.backend.service.js.map +1 -1
  123. package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.d.ts +18 -1
  124. package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.d.ts.map +1 -1
  125. package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.js +106 -2
  126. package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.js.map +1 -1
  127. package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.d.ts +52 -0
  128. package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.d.ts.map +1 -0
  129. package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.js +74 -0
  130. package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.js.map +1 -0
  131. package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.d.ts +104 -11
  132. package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.d.ts.map +1 -1
  133. package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.js +260 -26
  134. package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.js.map +1 -1
  135. package/dist/esm/billing/testing/mock-billing-provider.d.ts +30 -1
  136. package/dist/esm/billing/testing/mock-billing-provider.d.ts.map +1 -1
  137. package/dist/esm/billing/testing/mock-billing-provider.js +25 -0
  138. package/dist/esm/billing/testing/mock-billing-provider.js.map +1 -1
  139. package/dist/esm/compliance/audit-trails/batches/audit-logs-archive.batch.backend.service.js +11 -4
  140. package/dist/esm/compliance/audit-trails/batches/audit-logs-archive.batch.backend.service.js.map +1 -1
  141. package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.d.ts +225 -13
  142. package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.d.ts.map +1 -1
  143. package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.js +340 -62
  144. package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.js.map +1 -1
  145. package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.d.ts +244 -7
  146. package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.d.ts.map +1 -1
  147. package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.js +386 -5
  148. package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.js.map +1 -1
  149. package/dist/esm/compliance/audit-trails/services/composite-audit-log-sink.backend.d.ts.map +1 -1
  150. package/dist/esm/compliance/audit-trails/services/composite-audit-log-sink.backend.js +7 -1
  151. package/dist/esm/compliance/audit-trails/services/composite-audit-log-sink.backend.js.map +1 -1
  152. package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.d.ts +6 -2
  153. package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.d.ts.map +1 -1
  154. package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.js +31 -9
  155. package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.js.map +1 -1
  156. package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.d.ts +42 -0
  157. package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.d.ts.map +1 -1
  158. package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.js +57 -1
  159. package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.js.map +1 -1
  160. package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.d.ts +110 -0
  161. package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.d.ts.map +1 -0
  162. package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.js +192 -0
  163. package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.js.map +1 -0
  164. package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.d.ts.map +1 -1
  165. package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.js +31 -0
  166. package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.js.map +1 -1
  167. package/dist/esm/config/bootstrap/application-runtime-profile.backend.d.ts +5 -0
  168. package/dist/esm/config/bootstrap/application-runtime-profile.backend.d.ts.map +1 -1
  169. package/dist/esm/config/bootstrap/application-runtime-profile.backend.js +6 -0
  170. package/dist/esm/config/bootstrap/application-runtime-profile.backend.js.map +1 -1
  171. package/dist/esm/config/models/app-config.backend.schemas.d.ts +142 -46
  172. package/dist/esm/config/models/app-config.backend.schemas.d.ts.map +1 -1
  173. package/dist/esm/config/models/app-config.backend.schemas.js +121 -12
  174. package/dist/esm/config/models/app-config.backend.schemas.js.map +1 -1
  175. package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.d.ts +38 -15
  176. package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.d.ts.map +1 -1
  177. package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.js +17 -2
  178. package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.js.map +1 -1
  179. package/dist/esm/config/services/app-configuration-loader.backend.service.d.ts +0 -1
  180. package/dist/esm/config/services/app-configuration-loader.backend.service.d.ts.map +1 -1
  181. package/dist/esm/config/services/app-configuration-loader.backend.service.js +68 -76
  182. package/dist/esm/config/services/app-configuration-loader.backend.service.js.map +1 -1
  183. package/dist/esm/config/services/app-configuration.backend.service.d.ts.map +1 -1
  184. package/dist/esm/config/services/app-configuration.backend.service.js +23 -1
  185. package/dist/esm/config/services/app-configuration.backend.service.js.map +1 -1
  186. package/dist/esm/config/services/app-configuration.backend.utils.d.ts +33 -0
  187. package/dist/esm/config/services/app-configuration.backend.utils.d.ts.map +1 -1
  188. package/dist/esm/config/services/app-configuration.backend.utils.js +39 -1
  189. package/dist/esm/config/services/app-configuration.backend.utils.js.map +1 -1
  190. package/dist/esm/config/services/application-startup-config-validator.backend.service.d.ts +25 -0
  191. package/dist/esm/config/services/application-startup-config-validator.backend.service.d.ts.map +1 -1
  192. package/dist/esm/config/services/application-startup-config-validator.backend.service.js +41 -1
  193. package/dist/esm/config/services/application-startup-config-validator.backend.service.js.map +1 -1
  194. package/dist/esm/databases/services/postgresql-schema-plan-diff.backend.d.ts.map +1 -1
  195. package/dist/esm/databases/services/postgresql-schema-plan-diff.backend.js +48 -0
  196. package/dist/esm/databases/services/postgresql-schema-plan-diff.backend.js.map +1 -1
  197. package/dist/esm/errors/services/error-builder.backend.service.d.ts +13 -1
  198. package/dist/esm/errors/services/error-builder.backend.service.d.ts.map +1 -1
  199. package/dist/esm/errors/services/error-builder.backend.service.js +13 -1
  200. package/dist/esm/errors/services/error-builder.backend.service.js.map +1 -1
  201. package/dist/esm/errors/services/error-handler.backend.service.d.ts +70 -7
  202. package/dist/esm/errors/services/error-handler.backend.service.d.ts.map +1 -1
  203. package/dist/esm/errors/services/error-handler.backend.service.js +129 -8
  204. package/dist/esm/errors/services/error-handler.backend.service.js.map +1 -1
  205. package/dist/esm/errors/services/rate-limit.backend.service.d.ts +66 -0
  206. package/dist/esm/errors/services/rate-limit.backend.service.d.ts.map +1 -1
  207. package/dist/esm/errors/services/rate-limit.backend.service.js +102 -25
  208. package/dist/esm/errors/services/rate-limit.backend.service.js.map +1 -1
  209. package/dist/esm/errors/utils/error-log-level-classification.backend.utils.d.ts +5 -0
  210. package/dist/esm/errors/utils/error-log-level-classification.backend.utils.d.ts.map +1 -1
  211. package/dist/esm/errors/utils/error-log-level-classification.backend.utils.js +25 -0
  212. package/dist/esm/errors/utils/error-log-level-classification.backend.utils.js.map +1 -1
  213. package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.d.ts +33 -0
  214. package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.d.ts.map +1 -1
  215. package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.js +40 -0
  216. package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.js.map +1 -1
  217. package/dist/esm/external-data/external-data-pipeline-run.backend.service.d.ts +59 -2
  218. package/dist/esm/external-data/external-data-pipeline-run.backend.service.d.ts.map +1 -1
  219. package/dist/esm/external-data/external-data-pipeline-run.backend.service.js +52 -17
  220. package/dist/esm/external-data/external-data-pipeline-run.backend.service.js.map +1 -1
  221. package/dist/esm/external-providers/models/provider-selection-resolution-evidence.backend.definitions.d.ts +4 -2
  222. package/dist/esm/external-providers/models/provider-selection-resolution-evidence.backend.definitions.d.ts.map +1 -1
  223. package/dist/esm/external-providers/models/provider-selection-resolution-evidence.backend.definitions.js.map +1 -1
  224. package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.d.ts +256 -0
  225. package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.d.ts.map +1 -0
  226. package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.js +333 -0
  227. package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.js.map +1 -0
  228. package/dist/esm/external-providers/operations/provider-operation-request.backend.d.ts +56 -0
  229. package/dist/esm/external-providers/operations/provider-operation-request.backend.d.ts.map +1 -0
  230. package/dist/esm/external-providers/operations/provider-operation-request.backend.js +211 -0
  231. package/dist/esm/external-providers/operations/provider-operation-request.backend.js.map +1 -0
  232. package/dist/esm/external-providers/operations/provider-request-signing.backend.d.ts +45 -0
  233. package/dist/esm/external-providers/operations/provider-request-signing.backend.d.ts.map +1 -0
  234. package/dist/esm/external-providers/operations/provider-request-signing.backend.js +216 -0
  235. package/dist/esm/external-providers/operations/provider-request-signing.backend.js.map +1 -0
  236. package/dist/esm/external-providers/operations/provider-rest-call-client.backend.d.ts +56 -0
  237. package/dist/esm/external-providers/operations/provider-rest-call-client.backend.d.ts.map +1 -0
  238. package/dist/esm/external-providers/operations/provider-rest-call-client.backend.js +78 -0
  239. package/dist/esm/external-providers/operations/provider-rest-call-client.backend.js.map +1 -0
  240. package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.d.ts +1 -1
  241. package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.d.ts.map +1 -1
  242. package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.js +2 -2
  243. package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.js.map +1 -1
  244. package/dist/esm/external-providers/services/backend-provider-loader.backend.service.d.ts +89 -0
  245. package/dist/esm/external-providers/services/backend-provider-loader.backend.service.d.ts.map +1 -0
  246. package/dist/esm/external-providers/services/backend-provider-loader.backend.service.js +164 -0
  247. package/dist/esm/external-providers/services/backend-provider-loader.backend.service.js.map +1 -0
  248. package/dist/esm/external-providers/services/backend-provider-registry.backend.service.d.ts +26 -27
  249. package/dist/esm/external-providers/services/backend-provider-registry.backend.service.d.ts.map +1 -1
  250. package/dist/esm/external-providers/services/backend-provider-registry.backend.service.js +50 -64
  251. package/dist/esm/external-providers/services/backend-provider-registry.backend.service.js.map +1 -1
  252. package/dist/esm/external-providers/services/document-extraction.backend.service.d.ts.map +1 -1
  253. package/dist/esm/external-providers/services/document-extraction.backend.service.js +3 -3
  254. package/dist/esm/external-providers/services/document-extraction.backend.service.js.map +1 -1
  255. package/dist/esm/external-providers/services/embeddings.backend.service.d.ts.map +1 -1
  256. package/dist/esm/external-providers/services/embeddings.backend.service.js +4 -4
  257. package/dist/esm/external-providers/services/embeddings.backend.service.js.map +1 -1
  258. package/dist/esm/external-providers/services/external-providers-registry.backend.service.d.ts +292 -7
  259. package/dist/esm/external-providers/services/external-providers-registry.backend.service.d.ts.map +1 -1
  260. package/dist/esm/external-providers/services/external-providers-registry.backend.service.js +533 -45
  261. package/dist/esm/external-providers/services/external-providers-registry.backend.service.js.map +1 -1
  262. package/dist/esm/external-providers/services/frontend-bootstrap.backend.service.d.ts.map +1 -1
  263. package/dist/esm/external-providers/services/frontend-bootstrap.backend.service.js +25 -2
  264. package/dist/esm/external-providers/services/frontend-bootstrap.backend.service.js.map +1 -1
  265. package/dist/esm/files/controllers/file.controller.d.ts.map +1 -1
  266. package/dist/esm/files/controllers/file.controller.js +21 -13
  267. package/dist/esm/files/controllers/file.controller.js.map +1 -1
  268. package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.d.ts.map +1 -1
  269. package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.js +39 -15
  270. package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.js.map +1 -1
  271. package/dist/esm/files/services/file-scanning.backend.service.d.ts +94 -9
  272. package/dist/esm/files/services/file-scanning.backend.service.d.ts.map +1 -1
  273. package/dist/esm/files/services/file-scanning.backend.service.js +197 -17
  274. package/dist/esm/files/services/file-scanning.backend.service.js.map +1 -1
  275. package/dist/esm/files/services/file-text-extraction.backend.service.d.ts +60 -1
  276. package/dist/esm/files/services/file-text-extraction.backend.service.d.ts.map +1 -1
  277. package/dist/esm/files/services/file-text-extraction.backend.service.js +167 -8
  278. package/dist/esm/files/services/file-text-extraction.backend.service.js.map +1 -1
  279. package/dist/esm/files/services/file-upload-grant.backend.service.d.ts +53 -2
  280. package/dist/esm/files/services/file-upload-grant.backend.service.d.ts.map +1 -1
  281. package/dist/esm/files/services/file-upload-grant.backend.service.js +127 -3
  282. package/dist/esm/files/services/file-upload-grant.backend.service.js.map +1 -1
  283. package/dist/esm/files/services/files.backend.service.d.ts +68 -0
  284. package/dist/esm/files/services/files.backend.service.d.ts.map +1 -1
  285. package/dist/esm/files/services/files.backend.service.js +175 -5
  286. package/dist/esm/files/services/files.backend.service.js.map +1 -1
  287. package/dist/esm/files/storage/application-storage-key.backend.utils.d.ts +109 -0
  288. package/dist/esm/files/storage/application-storage-key.backend.utils.d.ts.map +1 -0
  289. package/dist/esm/files/storage/application-storage-key.backend.utils.js +123 -0
  290. package/dist/esm/files/storage/application-storage-key.backend.utils.js.map +1 -0
  291. package/dist/esm/files/storage/file-storage-provider.types.d.ts +16 -10
  292. package/dist/esm/files/storage/file-storage-provider.types.d.ts.map +1 -1
  293. package/dist/esm/files/storage/file-storage-provider.types.js.map +1 -1
  294. package/dist/esm/files/storage/local-directory-storage-provider.backend.service.d.ts +67 -8
  295. package/dist/esm/files/storage/local-directory-storage-provider.backend.service.d.ts.map +1 -1
  296. package/dist/esm/files/storage/local-directory-storage-provider.backend.service.js +101 -28
  297. package/dist/esm/files/storage/local-directory-storage-provider.backend.service.js.map +1 -1
  298. package/dist/esm/files/storage/wildo-managed-storage-provider.backend.service.d.ts.map +1 -1
  299. package/dist/esm/files/storage/wildo-managed-storage-provider.backend.service.js +8 -55
  300. package/dist/esm/files/storage/wildo-managed-storage-provider.backend.service.js.map +1 -1
  301. package/dist/esm/files/utils/file-field-schema-path.backend.utils.d.ts.map +1 -1
  302. package/dist/esm/files/utils/file-field-schema-path.backend.utils.js +20 -0
  303. package/dist/esm/files/utils/file-field-schema-path.backend.utils.js.map +1 -1
  304. package/dist/esm/files/utils/office-document-text-extraction.backend.utils.d.ts +86 -0
  305. package/dist/esm/files/utils/office-document-text-extraction.backend.utils.d.ts.map +1 -0
  306. package/dist/esm/files/utils/office-document-text-extraction.backend.utils.js +288 -0
  307. package/dist/esm/files/utils/office-document-text-extraction.backend.utils.js.map +1 -0
  308. package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.d.ts +15 -0
  309. package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.d.ts.map +1 -1
  310. package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.js +76 -5
  311. package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.js.map +1 -1
  312. package/dist/esm/flows-actors/a2a/controllers/a2a.controller.d.ts.map +1 -1
  313. package/dist/esm/flows-actors/a2a/controllers/a2a.controller.js +6 -1
  314. package/dist/esm/flows-actors/a2a/controllers/a2a.controller.js.map +1 -1
  315. package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.d.ts +60 -0
  316. package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.d.ts.map +1 -1
  317. package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.js +63 -0
  318. package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.js.map +1 -1
  319. package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.d.ts +74 -0
  320. package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.d.ts.map +1 -1
  321. package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.js +196 -40
  322. package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.js.map +1 -1
  323. package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.d.ts +7 -1
  324. package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.d.ts.map +1 -1
  325. package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.js +53 -1
  326. package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.js.map +1 -1
  327. package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.d.ts +18 -0
  328. package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.d.ts.map +1 -1
  329. package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.js +18 -0
  330. package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.js.map +1 -1
  331. package/dist/esm/flows-actors/a2a/services/a2a.backend.service.d.ts +12 -7
  332. package/dist/esm/flows-actors/a2a/services/a2a.backend.service.d.ts.map +1 -1
  333. package/dist/esm/flows-actors/a2a/services/a2a.backend.service.js.map +1 -1
  334. package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.d.ts +0 -13
  335. package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.d.ts.map +1 -1
  336. package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.js +14 -22
  337. package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.js.map +1 -1
  338. package/dist/esm/flows-actors/models/core-facets.backend.definitions.d.ts +8 -3
  339. package/dist/esm/flows-actors/models/core-facets.backend.definitions.d.ts.map +1 -1
  340. package/dist/esm/flows-actors/models/core-facets.backend.definitions.js +25 -15
  341. package/dist/esm/flows-actors/models/core-facets.backend.definitions.js.map +1 -1
  342. package/dist/esm/flows-actors/models/flows-actors.backend.schemas.d.ts +13 -1
  343. package/dist/esm/flows-actors/models/flows-actors.backend.schemas.d.ts.map +1 -1
  344. package/dist/esm/flows-actors/models/flows-actors.backend.schemas.js.map +1 -1
  345. package/dist/esm/flows-actors/models/function-tools.backend.definitions.d.ts +88 -8
  346. package/dist/esm/flows-actors/models/function-tools.backend.definitions.d.ts.map +1 -1
  347. package/dist/esm/flows-actors/models/function-tools.backend.definitions.js +333 -31
  348. package/dist/esm/flows-actors/models/function-tools.backend.definitions.js.map +1 -1
  349. package/dist/esm/flows-actors/models/market-generation.actors-system.backend.definitions.d.ts.map +1 -1
  350. package/dist/esm/flows-actors/models/market-generation.actors-system.backend.definitions.js +4 -2
  351. package/dist/esm/flows-actors/models/market-generation.actors-system.backend.definitions.js.map +1 -1
  352. package/dist/esm/flows-actors/models/mcp-client.backend.definitions.d.ts +113 -0
  353. package/dist/esm/flows-actors/models/mcp-client.backend.definitions.d.ts.map +1 -0
  354. package/dist/esm/flows-actors/models/mcp-client.backend.definitions.js +62 -0
  355. package/dist/esm/flows-actors/models/mcp-client.backend.definitions.js.map +1 -0
  356. package/dist/esm/flows-actors/services/actors-system.backend.service.d.ts.map +1 -1
  357. package/dist/esm/flows-actors/services/actors-system.backend.service.js +0 -2
  358. package/dist/esm/flows-actors/services/actors-system.backend.service.js.map +1 -1
  359. package/dist/esm/flows-actors/services/agents.backend.service.d.ts +28 -1
  360. package/dist/esm/flows-actors/services/agents.backend.service.d.ts.map +1 -1
  361. package/dist/esm/flows-actors/services/agents.backend.service.js +204 -18
  362. package/dist/esm/flows-actors/services/agents.backend.service.js.map +1 -1
  363. package/dist/esm/flows-actors/services/conversational-execution.backend.service.d.ts +5 -1
  364. package/dist/esm/flows-actors/services/conversational-execution.backend.service.d.ts.map +1 -1
  365. package/dist/esm/flows-actors/services/conversational-execution.backend.service.js +79 -16
  366. package/dist/esm/flows-actors/services/conversational-execution.backend.service.js.map +1 -1
  367. package/dist/esm/flows-actors/services/flows-actors-registry.service.d.ts +34 -5
  368. package/dist/esm/flows-actors/services/flows-actors-registry.service.d.ts.map +1 -1
  369. package/dist/esm/flows-actors/services/flows-actors-registry.service.js +154 -20
  370. package/dist/esm/flows-actors/services/flows-actors-registry.service.js.map +1 -1
  371. package/dist/esm/flows-actors/services/flows.backend.services.d.ts.map +1 -1
  372. package/dist/esm/flows-actors/services/flows.backend.services.js +27 -23
  373. package/dist/esm/flows-actors/services/flows.backend.services.js.map +1 -1
  374. package/dist/esm/flows-actors/services/llm-observability-agent-call-trace-sink.backend.d.ts.map +1 -1
  375. package/dist/esm/flows-actors/services/llm-observability-agent-call-trace-sink.backend.js +7 -1
  376. package/dist/esm/flows-actors/services/llm-observability-agent-call-trace-sink.backend.js.map +1 -1
  377. package/dist/esm/flows-actors/services/mcp-client.backend.service.d.ts +90 -0
  378. package/dist/esm/flows-actors/services/mcp-client.backend.service.d.ts.map +1 -0
  379. package/dist/esm/flows-actors/services/mcp-client.backend.service.js +368 -0
  380. package/dist/esm/flows-actors/services/mcp-client.backend.service.js.map +1 -0
  381. package/dist/esm/flows-actors/services/prompt-compiler.backend.service.d.ts +9 -5
  382. package/dist/esm/flows-actors/services/prompt-compiler.backend.service.d.ts.map +1 -1
  383. package/dist/esm/flows-actors/services/prompt-compiler.backend.service.js +12 -17
  384. package/dist/esm/flows-actors/services/prompt-compiler.backend.service.js.map +1 -1
  385. package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.d.ts.map +1 -1
  386. package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.js +8 -4
  387. package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.js.map +1 -1
  388. package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.d.ts +0 -207
  389. package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.d.ts.map +1 -1
  390. package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.js +8 -243
  391. package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.js.map +1 -1
  392. package/dist/esm/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.d.ts.map +1 -1
  393. package/dist/esm/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.js.map +1 -1
  394. package/dist/esm/guidance/services/milestone-evaluator.backend.service.d.ts +9 -14
  395. package/dist/esm/guidance/services/milestone-evaluator.backend.service.d.ts.map +1 -1
  396. package/dist/esm/guidance/services/milestone-evaluator.backend.service.js +18 -89
  397. package/dist/esm/guidance/services/milestone-evaluator.backend.service.js.map +1 -1
  398. package/dist/esm/guidance/services/progression-state-store.backend.service.d.ts +86 -0
  399. package/dist/esm/guidance/services/progression-state-store.backend.service.d.ts.map +1 -0
  400. package/dist/esm/guidance/services/progression-state-store.backend.service.js +155 -0
  401. package/dist/esm/guidance/services/progression-state-store.backend.service.js.map +1 -0
  402. package/dist/esm/i18n/controllers/i18n-controller.backend.service.d.ts +10 -0
  403. package/dist/esm/i18n/controllers/i18n-controller.backend.service.d.ts.map +1 -1
  404. package/dist/esm/i18n/controllers/i18n-controller.backend.service.js +55 -5
  405. package/dist/esm/i18n/controllers/i18n-controller.backend.service.js.map +1 -1
  406. package/dist/esm/index.d.ts +11 -4
  407. package/dist/esm/index.d.ts.map +1 -1
  408. package/dist/esm/index.js +31 -4
  409. package/dist/esm/index.js.map +1 -1
  410. package/dist/esm/inject/models/container.d.ts.map +1 -1
  411. package/dist/esm/inject/models/container.js +78 -10
  412. package/dist/esm/inject/models/container.js.map +1 -1
  413. package/dist/esm/inject/models/service-types.d.ts +17 -3
  414. package/dist/esm/inject/models/service-types.d.ts.map +1 -1
  415. package/dist/esm/inject/models/service-types.js +19 -3
  416. package/dist/esm/inject/models/service-types.js.map +1 -1
  417. package/dist/esm/mcp/controllers/mcp.controller.d.ts.map +1 -1
  418. package/dist/esm/mcp/controllers/mcp.controller.js +20 -0
  419. package/dist/esm/mcp/controllers/mcp.controller.js.map +1 -1
  420. package/dist/esm/mcp/services/mcp-server.backend.service.d.ts +56 -1
  421. package/dist/esm/mcp/services/mcp-server.backend.service.d.ts.map +1 -1
  422. package/dist/esm/mcp/services/mcp-server.backend.service.js +107 -11
  423. package/dist/esm/mcp/services/mcp-server.backend.service.js.map +1 -1
  424. package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.d.ts.map +1 -1
  425. package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.js +22 -0
  426. package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.js.map +1 -1
  427. package/dist/esm/monitoring/analytics/controllers/analytics.backend.controller.d.ts.map +1 -1
  428. package/dist/esm/monitoring/analytics/controllers/analytics.backend.controller.js +49 -4
  429. package/dist/esm/monitoring/analytics/controllers/analytics.backend.controller.js.map +1 -1
  430. package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.d.ts +66 -0
  431. package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.d.ts.map +1 -0
  432. package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.js +199 -0
  433. package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.js.map +1 -0
  434. package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.d.ts +149 -13
  435. package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.d.ts.map +1 -1
  436. package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.js +411 -19
  437. package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.js.map +1 -1
  438. package/dist/esm/monitoring/analytics/services/value-moment-handler-registry.backend.service.d.ts +11 -2
  439. package/dist/esm/monitoring/analytics/services/value-moment-handler-registry.backend.service.d.ts.map +1 -1
  440. package/dist/esm/monitoring/analytics/services/value-moment-handler-registry.backend.service.js.map +1 -1
  441. package/dist/esm/monitoring/logger/models/logger.backend.schemas.d.ts +28 -9
  442. package/dist/esm/monitoring/logger/models/logger.backend.schemas.d.ts.map +1 -1
  443. package/dist/esm/monitoring/logger/models/logger.backend.schemas.js +30 -10
  444. package/dist/esm/monitoring/logger/models/logger.backend.schemas.js.map +1 -1
  445. package/dist/esm/monitoring/logger/services/logger.service.d.ts +12 -0
  446. package/dist/esm/monitoring/logger/services/logger.service.d.ts.map +1 -1
  447. package/dist/esm/monitoring/logger/services/logger.service.js +52 -11
  448. package/dist/esm/monitoring/logger/services/logger.service.js.map +1 -1
  449. package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.d.ts +62 -0
  450. package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.d.ts.map +1 -0
  451. package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.js +78 -0
  452. package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.js.map +1 -0
  453. package/dist/esm/monitoring/observability/audit-observation-emission.backend.d.ts +309 -0
  454. package/dist/esm/monitoring/observability/audit-observation-emission.backend.d.ts.map +1 -0
  455. package/dist/esm/monitoring/observability/audit-observation-emission.backend.js +385 -0
  456. package/dist/esm/monitoring/observability/audit-observation-emission.backend.js.map +1 -0
  457. package/dist/esm/monitoring/observability/models/observability.backend.schemas.d.ts +1 -0
  458. package/dist/esm/monitoring/observability/models/observability.backend.schemas.d.ts.map +1 -1
  459. package/dist/esm/monitoring/observability/models/observability.backend.schemas.js.map +1 -1
  460. package/dist/esm/monitoring/observability/services/metrics.service.d.ts +21 -0
  461. package/dist/esm/monitoring/observability/services/metrics.service.d.ts.map +1 -1
  462. package/dist/esm/monitoring/observability/services/metrics.service.js +38 -0
  463. package/dist/esm/monitoring/observability/services/metrics.service.js.map +1 -1
  464. package/dist/esm/notifications/email/models/email-context-provider.interface.d.ts +0 -80
  465. package/dist/esm/notifications/email/models/email-context-provider.interface.d.ts.map +0 -1
  466. package/dist/esm/notifications/email/models/email-context-provider.interface.js +0 -25
  467. package/dist/esm/notifications/email/models/email-context-provider.interface.js.map +0 -1
  468. package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.d.ts +0 -49
  469. package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.d.ts.map +0 -1
  470. package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.js +0 -141
  471. package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.js.map +0 -1
  472. package/dist/esm/notifications/email/services/email-template-compiler.backend.service.d.ts +0 -37
  473. package/dist/esm/notifications/email/services/email-template-compiler.backend.service.d.ts.map +0 -1
  474. package/dist/esm/notifications/email/services/email-template-compiler.backend.service.js +0 -121
  475. package/dist/esm/notifications/email/services/email-template-compiler.backend.service.js.map +0 -1
  476. package/dist/esm/notifications/email/services/email-template-registry.backend.service.d.ts +66 -1
  477. package/dist/esm/notifications/email/services/email-template-registry.backend.service.d.ts.map +1 -1
  478. package/dist/esm/notifications/email/services/email-template-registry.backend.service.js +105 -10
  479. package/dist/esm/notifications/email/services/email-template-registry.backend.service.js.map +1 -1
  480. package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.d.ts +0 -58
  481. package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.d.ts.map +0 -1
  482. package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.js +0 -223
  483. package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.js.map +0 -1
  484. package/dist/esm/notifications/email/services/email-template-validator.backend.service.d.ts.map +1 -1
  485. package/dist/esm/notifications/email/services/email-template-validator.backend.service.js +10 -1
  486. package/dist/esm/notifications/email/services/email-template-validator.backend.service.js.map +1 -1
  487. package/dist/esm/notifications/email/services/email.backend.service.d.ts +60 -4
  488. package/dist/esm/notifications/email/services/email.backend.service.d.ts.map +1 -1
  489. package/dist/esm/notifications/email/services/email.backend.service.js +145 -43
  490. package/dist/esm/notifications/email/services/email.backend.service.js.map +1 -1
  491. package/dist/esm/notifications/email/utils/color-conversion.utils.d.ts +0 -1
  492. package/dist/esm/notifications/email/utils/color-conversion.utils.d.ts.map +1 -1
  493. package/dist/esm/notifications/email/utils/color-conversion.utils.js.map +1 -1
  494. package/dist/esm/notifications/services/notification-badge.backend.service.d.ts +142 -21
  495. package/dist/esm/notifications/services/notification-badge.backend.service.d.ts.map +1 -1
  496. package/dist/esm/notifications/services/notification-badge.backend.service.js +283 -58
  497. package/dist/esm/notifications/services/notification-badge.backend.service.js.map +1 -1
  498. package/dist/esm/notifications/services/notifications-dispatcher.backend.service.d.ts +99 -13
  499. package/dist/esm/notifications/services/notifications-dispatcher.backend.service.d.ts.map +1 -1
  500. package/dist/esm/notifications/services/notifications-dispatcher.backend.service.js +422 -66
  501. package/dist/esm/notifications/services/notifications-dispatcher.backend.service.js.map +1 -1
  502. package/dist/esm/notifications/sms/services/sms.backend.service.d.ts +2 -2
  503. package/dist/esm/notifications/sms/services/sms.backend.service.d.ts.map +1 -1
  504. package/dist/esm/notifications/sms/services/sms.backend.service.js +5 -5
  505. package/dist/esm/notifications/sms/services/sms.backend.service.js.map +1 -1
  506. package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.d.ts +117 -5
  507. package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.d.ts.map +1 -1
  508. package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.js +164 -6
  509. package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.js.map +1 -1
  510. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.d.ts +0 -6
  511. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.d.ts.map +1 -1
  512. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.js +46 -1
  513. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.js.map +1 -1
  514. package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.d.ts.map +1 -1
  515. package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.js +16 -6
  516. package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.js.map +1 -1
  517. package/dist/esm/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service.d.ts.map +1 -1
  518. package/dist/esm/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service.js +12 -12
  519. package/dist/esm/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service.js.map +1 -1
  520. package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.d.ts +16 -0
  521. package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.d.ts.map +1 -1
  522. package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.js +18 -0
  523. package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.js.map +1 -1
  524. package/dist/esm/organizations/batches/organization-purge.batch.backend.service.d.ts +2 -2
  525. package/dist/esm/organizations/batches/organization-purge.batch.backend.service.js +2 -2
  526. package/dist/esm/organizations/batches/organization-purge.batch.backend.service.js.map +1 -1
  527. package/dist/esm/organizations/services/organization-custom-implementation.backend.service.d.ts.map +1 -1
  528. package/dist/esm/organizations/services/organization-custom-implementation.backend.service.js +63 -2
  529. package/dist/esm/organizations/services/organization-custom-implementation.backend.service.js.map +1 -1
  530. package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.d.ts +66 -0
  531. package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.d.ts.map +1 -0
  532. package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.js +257 -0
  533. package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.js.map +1 -0
  534. package/dist/esm/queue/adapters/queue-adapter.backend.binding.d.ts +12 -0
  535. package/dist/esm/queue/adapters/queue-adapter.backend.binding.d.ts.map +1 -0
  536. package/dist/esm/queue/adapters/queue-adapter.backend.binding.js +47 -0
  537. package/dist/esm/queue/adapters/queue-adapter.backend.binding.js.map +1 -0
  538. package/dist/esm/queue/adapters/queue-adapter.backend.interface.d.ts +87 -0
  539. package/dist/esm/queue/adapters/queue-adapter.backend.interface.d.ts.map +1 -0
  540. package/dist/esm/queue/adapters/queue-adapter.backend.interface.js +1 -0
  541. package/dist/esm/queue/adapters/queue-adapter.backend.interface.js.map +1 -0
  542. package/dist/esm/queue/adapters/queue-adapter.backend.options.d.ts +31 -0
  543. package/dist/esm/queue/adapters/queue-adapter.backend.options.d.ts.map +1 -0
  544. package/dist/esm/queue/adapters/queue-adapter.backend.options.js +13 -0
  545. package/dist/esm/queue/adapters/queue-adapter.backend.options.js.map +1 -0
  546. package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.d.ts +19 -25
  547. package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.d.ts.map +1 -1
  548. package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.js +33 -0
  549. package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.js.map +1 -1
  550. package/dist/esm/queue/domain-queue-consumer.backend.service.d.ts +2 -2
  551. package/dist/esm/queue/domain-queue-consumer.backend.service.d.ts.map +1 -1
  552. package/dist/esm/queue/domain-queue-consumer.backend.service.js +1 -4
  553. package/dist/esm/queue/domain-queue-consumer.backend.service.js.map +1 -1
  554. package/dist/esm/queue/job-consumer.backend.service.d.ts +2 -2
  555. package/dist/esm/queue/job-consumer.backend.service.d.ts.map +1 -1
  556. package/dist/esm/queue/job-consumer.backend.service.js +1 -4
  557. package/dist/esm/queue/job-consumer.backend.service.js.map +1 -1
  558. package/dist/esm/queue/job-executor.backend.service.d.ts +2 -2
  559. package/dist/esm/queue/job-executor.backend.service.d.ts.map +1 -1
  560. package/dist/esm/queue/job-executor.backend.service.js +1 -4
  561. package/dist/esm/queue/job-executor.backend.service.js.map +1 -1
  562. package/dist/esm/queue/queue-monitoring.backend.service.d.ts +8 -4
  563. package/dist/esm/queue/queue-monitoring.backend.service.d.ts.map +1 -1
  564. package/dist/esm/queue/queue-monitoring.backend.service.js +25 -17
  565. package/dist/esm/queue/queue-monitoring.backend.service.js.map +1 -1
  566. package/dist/esm/queue/queue-worker-initializer.backend.service.d.ts +16 -1
  567. package/dist/esm/queue/queue-worker-initializer.backend.service.d.ts.map +1 -1
  568. package/dist/esm/queue/queue-worker-initializer.backend.service.js +16 -1
  569. package/dist/esm/queue/queue-worker-initializer.backend.service.js.map +1 -1
  570. package/dist/esm/queue/queue.backend.service.d.ts +3 -3
  571. package/dist/esm/queue/queue.backend.service.d.ts.map +1 -1
  572. package/dist/esm/queue/queue.backend.service.js +26 -4
  573. package/dist/esm/queue/queue.backend.service.js.map +1 -1
  574. package/dist/esm/queue/worker-shutdown-manager.backend.service.d.ts +2 -2
  575. package/dist/esm/queue/worker-shutdown-manager.backend.service.d.ts.map +1 -1
  576. package/dist/esm/queue/worker-shutdown-manager.backend.service.js +18 -3
  577. package/dist/esm/queue/worker-shutdown-manager.backend.service.js.map +1 -1
  578. package/dist/esm/rag/utils/rag-chunking.backend.utils.d.ts +50 -25
  579. package/dist/esm/rag/utils/rag-chunking.backend.utils.d.ts.map +1 -1
  580. package/dist/esm/rag/utils/rag-chunking.backend.utils.js +147 -39
  581. package/dist/esm/rag/utils/rag-chunking.backend.utils.js.map +1 -1
  582. package/dist/esm/rag/utils/rag-context-assembly.backend.utils.d.ts +12 -3
  583. package/dist/esm/rag/utils/rag-context-assembly.backend.utils.d.ts.map +1 -1
  584. package/dist/esm/rag/utils/rag-context-assembly.backend.utils.js +12 -3
  585. package/dist/esm/rag/utils/rag-context-assembly.backend.utils.js.map +1 -1
  586. package/dist/esm/requests/service/websocket.service.d.ts +9 -0
  587. package/dist/esm/requests/service/websocket.service.d.ts.map +1 -1
  588. package/dist/esm/requests/service/websocket.service.js +32 -8
  589. package/dist/esm/requests/service/websocket.service.js.map +1 -1
  590. package/dist/esm/resources/models/custom-service-implementations.backend.definition.d.ts.map +1 -1
  591. package/dist/esm/resources/models/custom-service-implementations.backend.definition.js +14 -2
  592. package/dist/esm/resources/models/custom-service-implementations.backend.definition.js.map +1 -1
  593. package/dist/esm/resources/models/resources-operations.backend.definitions.d.ts.map +1 -1
  594. package/dist/esm/resources/models/resources-operations.backend.definitions.js +2 -0
  595. package/dist/esm/resources/models/resources-operations.backend.definitions.js.map +1 -1
  596. package/dist/esm/resources/models/resources-relationships.backend.definitions.d.ts.map +1 -1
  597. package/dist/esm/resources/models/resources-relationships.backend.definitions.js +14 -0
  598. package/dist/esm/resources/models/resources-relationships.backend.definitions.js.map +1 -1
  599. package/dist/esm/resources/models/resources-types.backend.schemas.d.ts +2 -1
  600. package/dist/esm/resources/models/resources-types.backend.schemas.d.ts.map +1 -1
  601. package/dist/esm/resources/models/resources-types.backend.schemas.js +8 -0
  602. package/dist/esm/resources/models/resources-types.backend.schemas.js.map +1 -1
  603. package/dist/esm/resources/services/resources-registry.backend.service.d.ts +60 -5
  604. package/dist/esm/resources/services/resources-registry.backend.service.d.ts.map +1 -1
  605. package/dist/esm/resources/services/resources-registry.backend.service.js +90 -6
  606. package/dist/esm/resources/services/resources-registry.backend.service.js.map +1 -1
  607. package/dist/esm/runtime/controllers/health-controller.backend.service.d.ts +36 -3
  608. package/dist/esm/runtime/controllers/health-controller.backend.service.d.ts.map +1 -1
  609. package/dist/esm/runtime/controllers/health-controller.backend.service.js +32 -10
  610. package/dist/esm/runtime/controllers/health-controller.backend.service.js.map +1 -1
  611. package/dist/esm/runtime/domain-module.backend.definitions.d.ts +24 -0
  612. package/dist/esm/runtime/domain-module.backend.definitions.d.ts.map +1 -1
  613. package/dist/esm/runtime/domain-module.backend.definitions.js +24 -0
  614. package/dist/esm/runtime/domain-module.backend.definitions.js.map +1 -1
  615. package/dist/esm/runtime/services/health-readiness-contributor.backend.interface.d.ts +51 -0
  616. package/dist/esm/runtime/services/health-readiness-contributor.backend.interface.d.ts.map +1 -1
  617. package/dist/esm/runtime/services/health-readiness-contributor.backend.interface.js.map +1 -1
  618. package/dist/esm/runtime/services/http-server.backend.service.d.ts +26 -0
  619. package/dist/esm/runtime/services/http-server.backend.service.d.ts.map +1 -1
  620. package/dist/esm/runtime/services/http-server.backend.service.js +181 -1
  621. package/dist/esm/runtime/services/http-server.backend.service.js.map +1 -1
  622. package/dist/esm/runtime/services/start-application.backend.service.d.ts +19 -1
  623. package/dist/esm/runtime/services/start-application.backend.service.d.ts.map +1 -1
  624. package/dist/esm/runtime/services/start-application.backend.service.js +261 -77
  625. package/dist/esm/runtime/services/start-application.backend.service.js.map +1 -1
  626. package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.d.ts +15 -0
  627. package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.d.ts.map +1 -1
  628. package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.js +28 -0
  629. package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.js.map +1 -1
  630. package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.d.ts +5 -1
  631. package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.d.ts.map +1 -1
  632. package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.js +24 -4
  633. package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.js.map +1 -1
  634. package/dist/esm/security/authentications/controllers/authentication-controller.backend.service.d.ts.map +1 -1
  635. package/dist/esm/security/authentications/controllers/authentication-controller.backend.service.js +29 -4
  636. package/dist/esm/security/authentications/controllers/authentication-controller.backend.service.js.map +1 -1
  637. package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.d.ts +114 -0
  638. package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.d.ts.map +1 -1
  639. package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.js +354 -3
  640. package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.js.map +1 -1
  641. package/dist/esm/security/authentications/models/cimd.backend.schemas.d.ts +1 -0
  642. package/dist/esm/security/authentications/models/cimd.backend.schemas.d.ts.map +1 -1
  643. package/dist/esm/security/authentications/models/cimd.backend.schemas.js +22 -0
  644. package/dist/esm/security/authentications/models/cimd.backend.schemas.js.map +1 -1
  645. package/dist/esm/security/authentications/models/oauth2-connection.backend.schemas.d.ts +15 -0
  646. package/dist/esm/security/authentications/models/oauth2-connection.backend.schemas.d.ts.map +1 -1
  647. package/dist/esm/security/authentications/models/oauth2-connection.backend.schemas.js.map +1 -1
  648. package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.d.ts +0 -2
  649. package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.d.ts.map +1 -1
  650. package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.js +23 -14
  651. package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.js.map +1 -1
  652. package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.d.ts +0 -1
  653. package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.d.ts.map +1 -1
  654. package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.js +15 -12
  655. package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.js.map +1 -1
  656. package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.d.ts +113 -3
  657. package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.d.ts.map +1 -1
  658. package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.js +207 -30
  659. package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.js.map +1 -1
  660. package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.d.ts +95 -2
  661. package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.d.ts.map +1 -1
  662. package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.js +153 -9
  663. package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.js.map +1 -1
  664. package/dist/esm/security/authentications/services/anonymous-session.backend.service.d.ts +190 -0
  665. package/dist/esm/security/authentications/services/anonymous-session.backend.service.d.ts.map +1 -1
  666. package/dist/esm/security/authentications/services/anonymous-session.backend.service.js +377 -53
  667. package/dist/esm/security/authentications/services/anonymous-session.backend.service.js.map +1 -1
  668. package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.d.ts.map +1 -1
  669. package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.js +68 -1
  670. package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.js.map +1 -1
  671. package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.d.ts +41 -0
  672. package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.d.ts.map +1 -1
  673. package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.js +202 -23
  674. package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.js.map +1 -1
  675. package/dist/esm/security/authentications/services/auth-methods/oauth2-authentication.backend.service.d.ts.map +1 -1
  676. package/dist/esm/security/authentications/services/auth-methods/oauth2-authentication.backend.service.js +42 -1
  677. package/dist/esm/security/authentications/services/auth-methods/oauth2-authentication.backend.service.js.map +1 -1
  678. package/dist/esm/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service.d.ts.map +1 -1
  679. package/dist/esm/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service.js +34 -4
  680. package/dist/esm/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service.js.map +1 -1
  681. package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.d.ts +29 -5
  682. package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.d.ts.map +1 -1
  683. package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.js +77 -5
  684. package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.js.map +1 -1
  685. package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.d.ts +17 -1
  686. package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.d.ts.map +1 -1
  687. package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.js +49 -17
  688. package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.js.map +1 -1
  689. package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.d.ts +43 -1
  690. package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.d.ts.map +1 -1
  691. package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.js +277 -97
  692. package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.js.map +1 -1
  693. package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.d.ts +28 -5
  694. package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.d.ts.map +1 -1
  695. package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.js +72 -12
  696. package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.js.map +1 -1
  697. package/dist/esm/security/authentications/services/custom-impls/auth-custom-implementations.backend.d.ts.map +1 -1
  698. package/dist/esm/security/authentications/services/custom-impls/auth-custom-implementations.backend.js +3 -0
  699. package/dist/esm/security/authentications/services/custom-impls/auth-custom-implementations.backend.js.map +1 -1
  700. package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.d.ts +28 -0
  701. package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.d.ts.map +1 -0
  702. package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.js +283 -0
  703. package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.js.map +1 -0
  704. package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.d.ts +4 -3
  705. package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.d.ts.map +1 -1
  706. package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.js +4 -3
  707. package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.js.map +1 -1
  708. package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.d.ts +35 -0
  709. package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.d.ts.map +1 -1
  710. package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.js +111 -21
  711. package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.js.map +1 -1
  712. package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.d.ts +14 -1
  713. package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.d.ts.map +1 -1
  714. package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.js +49 -8
  715. package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.js.map +1 -1
  716. package/dist/esm/security/authentications/services/utils/auth-policy-resolution.backend.utils.d.ts.map +1 -1
  717. package/dist/esm/security/authentications/services/utils/auth-policy-resolution.backend.utils.js +4 -0
  718. package/dist/esm/security/authentications/services/utils/auth-policy-resolution.backend.utils.js.map +1 -1
  719. package/dist/esm/security/authentications/services/utils/auth-user-lookup.backend.service.d.ts.map +1 -1
  720. package/dist/esm/security/authentications/services/utils/auth-user-lookup.backend.service.js +6 -0
  721. package/dist/esm/security/authentications/services/utils/auth-user-lookup.backend.service.js.map +1 -1
  722. package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.d.ts +37 -1
  723. package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.d.ts.map +1 -1
  724. package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.js +51 -0
  725. package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.js.map +1 -1
  726. package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.d.ts +41 -0
  727. package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.d.ts.map +1 -1
  728. package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.js +45 -0
  729. package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.js.map +1 -1
  730. package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.d.ts +116 -0
  731. package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.d.ts.map +1 -0
  732. package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.js +162 -0
  733. package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.js.map +1 -0
  734. package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.d.ts +20 -20
  735. package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.d.ts.map +1 -1
  736. package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.js +27 -28
  737. package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.js.map +1 -1
  738. package/dist/esm/security/authorizations/platform-access-grant-custom-implementation.backend.service.d.ts.map +1 -1
  739. package/dist/esm/security/authorizations/platform-access-grant-custom-implementation.backend.service.js +77 -3
  740. package/dist/esm/security/authorizations/platform-access-grant-custom-implementation.backend.service.js.map +1 -1
  741. package/dist/esm/security/authorizations/role-ceiling.backend.utils.d.ts +4 -0
  742. package/dist/esm/security/authorizations/role-ceiling.backend.utils.d.ts.map +1 -1
  743. package/dist/esm/security/authorizations/role-ceiling.backend.utils.js +4 -0
  744. package/dist/esm/security/authorizations/role-ceiling.backend.utils.js.map +1 -1
  745. package/dist/esm/security/authorizations/role-conferral.backend.utils.d.ts +93 -0
  746. package/dist/esm/security/authorizations/role-conferral.backend.utils.d.ts.map +1 -0
  747. package/dist/esm/security/authorizations/role-conferral.backend.utils.js +95 -0
  748. package/dist/esm/security/authorizations/role-conferral.backend.utils.js.map +1 -0
  749. package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.d.ts +124 -1
  750. package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.d.ts.map +1 -1
  751. package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.js +142 -5
  752. package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.js.map +1 -1
  753. package/dist/esm/security/authorizations/services/authorizations.backend.service.d.ts +74 -8
  754. package/dist/esm/security/authorizations/services/authorizations.backend.service.d.ts.map +1 -1
  755. package/dist/esm/security/authorizations/services/authorizations.backend.service.js +175 -19
  756. package/dist/esm/security/authorizations/services/authorizations.backend.service.js.map +1 -1
  757. package/dist/esm/security/authorizations/super-admin-floor.backend.utils.d.ts +6 -14
  758. package/dist/esm/security/authorizations/super-admin-floor.backend.utils.d.ts.map +1 -1
  759. package/dist/esm/security/authorizations/super-admin-floor.backend.utils.js +13 -22
  760. package/dist/esm/security/authorizations/super-admin-floor.backend.utils.js.map +1 -1
  761. package/dist/esm/security/connected-accounts/connection-target-authorization.backend.d.ts +60 -0
  762. package/dist/esm/security/connected-accounts/connection-target-authorization.backend.d.ts.map +1 -0
  763. package/dist/esm/security/connected-accounts/connection-target-authorization.backend.js +79 -0
  764. package/dist/esm/security/connected-accounts/connection-target-authorization.backend.js.map +1 -0
  765. package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.d.ts +161 -0
  766. package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.d.ts.map +1 -0
  767. package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.js +512 -0
  768. package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.js.map +1 -0
  769. package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.d.ts +59 -0
  770. package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.d.ts.map +1 -0
  771. package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.js +22 -0
  772. package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.js.map +1 -0
  773. package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.d.ts +44 -0
  774. package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.d.ts.map +1 -0
  775. package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.js +20 -0
  776. package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.js.map +1 -0
  777. package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.d.ts +191 -0
  778. package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.d.ts.map +1 -0
  779. package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.js +385 -0
  780. package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.js.map +1 -0
  781. package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.d.ts +41 -0
  782. package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.d.ts.map +1 -0
  783. package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.js +358 -0
  784. package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.js.map +1 -0
  785. package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.d.ts +160 -0
  786. package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.d.ts.map +1 -0
  787. package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.js +266 -0
  788. package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.js.map +1 -0
  789. package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.d.ts +111 -0
  790. package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.d.ts.map +1 -0
  791. package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.js +107 -0
  792. package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.js.map +1 -0
  793. package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.d.ts +54 -0
  794. package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.d.ts.map +1 -0
  795. package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.js +153 -0
  796. package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.js.map +1 -0
  797. package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.d.ts +195 -0
  798. package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.d.ts.map +1 -0
  799. package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.js +387 -0
  800. package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.js.map +1 -0
  801. package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.d.ts +45 -0
  802. package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.d.ts.map +1 -0
  803. package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.js +291 -0
  804. package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.js.map +1 -0
  805. package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.d.ts +62 -0
  806. package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.d.ts.map +1 -0
  807. package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.js +29 -0
  808. package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.js.map +1 -0
  809. package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.d.ts +127 -0
  810. package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.d.ts.map +1 -0
  811. package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.js +277 -0
  812. package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.js.map +1 -0
  813. package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.d.ts +66 -0
  814. package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.d.ts.map +1 -0
  815. package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.js +75 -0
  816. package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.js.map +1 -0
  817. package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.d.ts +21 -3
  818. package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.d.ts.map +1 -1
  819. package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.js +26 -16
  820. package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.js.map +1 -1
  821. package/dist/esm/security/credential-rotation-grace.backend.utils.d.ts +9 -4
  822. package/dist/esm/security/credential-rotation-grace.backend.utils.d.ts.map +1 -1
  823. package/dist/esm/security/credential-rotation-grace.backend.utils.js +9 -4
  824. package/dist/esm/security/credential-rotation-grace.backend.utils.js.map +1 -1
  825. package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.d.ts +26 -0
  826. package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.d.ts.map +1 -1
  827. package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.js +43 -0
  828. package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.js.map +1 -1
  829. package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.d.ts +8 -1
  830. package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.d.ts.map +1 -1
  831. package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.js +49 -0
  832. package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.js.map +1 -1
  833. package/dist/esm/security/scim/controllers/scim.backend.controller.d.ts.map +1 -1
  834. package/dist/esm/security/scim/controllers/scim.backend.controller.js +17 -5
  835. package/dist/esm/security/scim/controllers/scim.backend.controller.js.map +1 -1
  836. package/dist/esm/security/scim/models/scim-protocol.backend.schemas.d.ts +67 -29
  837. package/dist/esm/security/scim/models/scim-protocol.backend.schemas.d.ts.map +1 -1
  838. package/dist/esm/security/scim/models/scim-protocol.backend.schemas.js +47 -25
  839. package/dist/esm/security/scim/models/scim-protocol.backend.schemas.js.map +1 -1
  840. package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.d.ts +10 -2
  841. package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.d.ts.map +1 -1
  842. package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.js +10 -2
  843. package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.js.map +1 -1
  844. package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.d.ts +143 -0
  845. package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.d.ts.map +1 -0
  846. package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.js +258 -0
  847. package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.js.map +1 -0
  848. package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.d.ts +39 -0
  849. package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.d.ts.map +1 -0
  850. package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.js +159 -0
  851. package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.js.map +1 -0
  852. package/dist/tsconfig.build.tsbuildinfo +1 -1
  853. package/package.json +11 -9
@@ -1 +1 @@
1
- {"version":3,"file":"custom-service-implementations.backend.definition.d.ts","sourceRoot":"","sources":["../../../../../src/resources/models/custom-service-implementations.backend.definition.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0CAA0C,EAAE,MAAM,4GAA4G,CAAC;AA0DxK,eAAO,MAAM,2CAA2C,EAAG,0CAA0C,EAuGpG,CAAA"}
1
+ {"version":3,"file":"custom-service-implementations.backend.definition.d.ts","sourceRoot":"","sources":["../../../../../src/resources/models/custom-service-implementations.backend.definition.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0CAA0C,EAAE,MAAM,4GAA4G,CAAC;AA+DxK,eAAO,MAAM,2CAA2C,EAAG,0CAA0C,EAgHpG,CAAA"}
@@ -6,6 +6,8 @@ import { authCustomImplementations } from '../../security/authentications/servic
6
6
  import { createAuditLogsExportFactories } from '../../compliance/audit-trails/audit-logs.custom-impl.backend.service.js';
7
7
  import { createOrganizationCreateFactories, createOrganizationLifecycleFactories } from '../../organizations/services/organization-custom-implementation.backend.service.js';
8
8
  import { createOrganizationDeletionAuditFactories } from '../../organizations/services/organization-deletion-audit.custom-impl.backend.service.js';
9
+ import { createOrganizationProviderCredentialFactories } from '../../security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.js';
10
+ import { createUserProviderCredentialFactories } from '../../security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.js';
9
11
  import { createEngineResourceStatusTransitionFactories } from '../../base-classes/services/services/resource-status-transition.definitions.backend.js';
10
12
  import { createOrganizationMemberCreateFactories } from '../../organizations/services/organization-member-custom-implementation.backend.service.js';
11
13
  import { createPlatformAccessGrantFactories } from '../../security/authorizations/platform-access-grant-custom-implementation.backend.service.js';
@@ -14,10 +16,11 @@ import { createOrganizationUnitMemberCreateFactories, createOrganizationUnitMemb
14
16
  import { createInboundContactCreateFactories } from '../../users/services/inbound-contact-custom-implementation.backend.service.js';
15
17
  import { createUserCoreRoleCeilingFactories, createUserRoleSetOperationFactories, } from '../../users/services/user-role-administration.custom-impl.backend.service.js';
16
18
  import { createUserForcePasswordResetFactories } from '../../users/services/user-force-password-reset.custom-impl.backend.service.js';
19
+ import { createUserReadRetainedFactories } from '../../users/services/user-read-retained.custom-impl.backend.service.js';
17
20
  import { createUserDeletionAuditFactories } from '../../users/services/user-deletion-audit.custom-impl.backend.service.js';
18
21
  import { createUserSuperAdminFloorFactories } from '../../users/services/user-super-admin-floor.custom-impl.backend.service.js';
19
- import { createApiKeyCreateFactories, createApiKeyRotateFactories, createApiKeyRegenerateFactories, createApiKeyExtendExpiryFactories, createApiKeyUsageStatsFactories, createApiKeyDeactivateFactories, createApiKeyReactivateFactories, } from '../../security/api-keys/api-keys.custom-impl.backend.service.js';
20
- import { createOAuthClientCreateFactories, createOAuthClientRotateFactories, createOAuthClientRegenerateFactories, } from '../../security/oauth-clients/oauth-clients.custom-impl.backend.service.js';
22
+ import { createApiKeyCreateFactories, createApiKeyRotateFactories, createApiKeyRegenerateFactories, createApiKeyExtendExpiryFactories, createApiKeyUsageStatsFactories, createApiKeyDeactivateFactories, createApiKeyExpireFactories, createApiKeyReactivateFactories, } from '../../security/api-keys/api-keys.custom-impl.backend.service.js';
23
+ import { createOAuthClientCreateFactories, createOAuthClientRotateFactories, createOAuthClientExpireFactories, createOAuthClientRegenerateFactories, } from '../../security/oauth-clients/oauth-clients.custom-impl.backend.service.js';
21
24
  import { createScopeFeaturesCacheInvalidationFactories } from '../../features/services/scope-features-cache-invalidation.custom-impl.backend.service.js';
22
25
  import { createSiemExportConfigCacheInvalidationFactories } from '../../compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.js';
23
26
  import { createOrganizationFeaturesAdminWritePathFactories } from '../../features/services/organization-features-admin-write-path.custom-impl.backend.service.js';
@@ -43,6 +46,10 @@ export const CoreBackend_ServiceImplementationsFactories = [
43
46
  // the privileged cross-tenant route unaudited. Post-commit by construction; reads the pre-deletion
44
47
  // snapshot because `name` / `slug` are unrecoverable once the row is gone.
45
48
  ...createOrganizationDeletionAuditFactories(),
49
+ // Seals every organization provider credential on write, and audits the grant lifecycle. Without
50
+ // this registration the resource stores plaintext secrets behind a route that still answers 200.
51
+ ...createOrganizationProviderCredentialFactories(),
52
+ ...createUserProviderCredentialFactories(),
46
53
  ...createOrganizationMemberCreateFactories(),
47
54
  // PLATFORM_ACCESS_GRANTS — the four lifecycle transitions. Every field that carries the
48
55
  // time-bound/justified/tenant-scoped guarantee (`operatorUserId`, `status`, `expiresAt`,
@@ -91,6 +98,8 @@ export const CoreBackend_ServiceImplementationsFactories = [
91
98
  // and the declared `{ resetToken, resetUrl }` response could never be produced (that handback
92
99
  // is now gone — it was an account-takeover primitive).
93
100
  ...createUserForcePasswordResetFactories(),
101
+ // #490 — the operator surface for the audited see-through read of a RETAINED user row.
102
+ ...createUserReadRetainedFactories(),
94
103
  // USERS DELETE — emits USER_DELETED. The event type and its SIEM classification existed from the
95
104
  // start but NOTHING produced them, so identity destruction left no evidence at all. Post-commit
96
105
  // by construction; reads the pre-deletion snapshot because `email` / `appRoles` are unrecoverable
@@ -108,10 +117,13 @@ export const CoreBackend_ServiceImplementationsFactories = [
108
117
  ...createApiKeyUsageStatsFactories(),
109
118
  ...createApiKeyDeactivateFactories(),
110
119
  ...createApiKeyReactivateFactories(),
120
+ // ACTIVE → EXPIRED, dispatched only by the credential-expiry sweep (#413).
121
+ ...createApiKeyExpireFactories(),
111
122
  // OAuth Clients (registered client-credentials front — mirrors API Keys mint pipeline)
112
123
  ...createOAuthClientCreateFactories(),
113
124
  ...createOAuthClientRotateFactories(),
114
125
  ...createOAuthClientRegenerateFactories(),
126
+ ...createOAuthClientExpireFactories(),
115
127
  ...createOrganizationFeaturesAdminWritePathFactories(),
116
128
  ...createApplicationFeaturesAdminWritePathFactories(),
117
129
  ...createScopeFeaturesCacheInvalidationFactories(),
@@ -1 +1 @@
1
- {"version":3,"file":"custom-service-implementations.backend.definition.js","sourceRoot":"","sources":["../../../../../src/resources/models/custom-service-implementations.backend.definition.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport type { ResourceConfiguration_Operation } from '@wildo-ai/saas-models';\nimport type { ResourceOperationCustomImplementationBase } from '~wildo-backend-lib/base-classes/services/services/resource-operation-custom-implementation-base.backend.service';\nimport { ResourceCustomServiceImplementationFactory } from '~wildo-backend-lib/base-classes/services/services/resource-operation-custom-implementation.factory.backend';\nimport { userSelfCustomImplementations } from '~wildo-backend-lib/users/services/user-self-custom-implementations.backend';\nimport { billingCustomImplementations } from '~wildo-backend-lib/billing/services/custom-impl/billing-custom-implementations.backend';\nimport { lifecycleCustomImplementations } from '~wildo-backend-lib/guidance/services/lifecycle-custom-implementations.backend';\nimport { scopedStateReadCustomImplementations } from '~wildo-backend-lib/guidance/services/scoped-state-read-custom-implementations.backend';\nimport { authCustomImplementations } from '~wildo-backend-lib/security/authentications/services/custom-impls/auth-custom-implementations.backend';\nimport { createAuditLogsExportFactories } from '~wildo-backend-lib/compliance/audit-trails/audit-logs.custom-impl.backend.service';\nimport { createOrganizationCreateFactories, createOrganizationLifecycleFactories } from '~wildo-backend-lib/organizations/services/organization-custom-implementation.backend.service';\nimport { createOrganizationDeletionAuditFactories } from '~wildo-backend-lib/organizations/services/organization-deletion-audit.custom-impl.backend.service';\nimport { createEngineResourceStatusTransitionFactories } from '~wildo-backend-lib/base-classes/services/services/resource-status-transition.definitions.backend';\nimport { createOrganizationMemberCreateFactories } from '~wildo-backend-lib/organizations/services/organization-member-custom-implementation.backend.service';\nimport { createPlatformAccessGrantFactories } from '~wildo-backend-lib/security/authorizations/platform-access-grant-custom-implementation.backend.service';\nimport {\n createOrganizationUnitCreatePathFactories,\n createOrganizationUnitDeleteDependentsGuardFactories,\n createOrganizationUnitMoveFactories,\n createOrganizationUnitStatusTransitionFactories,\n createOrganizationUnitUpdateFactories,\n} from '~wildo-backend-lib/organizations/services/organization-unit-custom-implementation.backend.service';\nimport {\n createOrganizationUnitMemberCreateFactories,\n createOrganizationUnitMemberDeleteFactories,\n createOrganizationUnitMemberUpdateFactories,\n} from '~wildo-backend-lib/organizations/services/organization-unit-member-custom-implementation.backend.service';\nimport { createInboundContactCreateFactories } from '~wildo-backend-lib/users/services/inbound-contact-custom-implementation.backend.service';\nimport {\n createUserCoreRoleCeilingFactories,\n createUserRoleSetOperationFactories,\n} from '~wildo-backend-lib/users/services/user-role-administration.custom-impl.backend.service';\nimport { createUserForcePasswordResetFactories } from '~wildo-backend-lib/users/services/user-force-password-reset.custom-impl.backend.service';\nimport { createUserDeletionAuditFactories } from '~wildo-backend-lib/users/services/user-deletion-audit.custom-impl.backend.service';\nimport { createUserSuperAdminFloorFactories } from '~wildo-backend-lib/users/services/user-super-admin-floor.custom-impl.backend.service';\nimport {\n createApiKeyCreateFactories,\n createApiKeyRotateFactories,\n createApiKeyRegenerateFactories,\n createApiKeyExtendExpiryFactories,\n createApiKeyUsageStatsFactories,\n createApiKeyDeactivateFactories,\n createApiKeyReactivateFactories,\n} from '~wildo-backend-lib/security/api-keys/api-keys.custom-impl.backend.service';\nimport {\n createOAuthClientCreateFactories,\n createOAuthClientRotateFactories,\n createOAuthClientRegenerateFactories,\n} from '~wildo-backend-lib/security/oauth-clients/oauth-clients.custom-impl.backend.service';\nimport { createScopeFeaturesCacheInvalidationFactories } from '~wildo-backend-lib/features/services/scope-features-cache-invalidation.custom-impl.backend.service';\nimport { createSiemExportConfigCacheInvalidationFactories } from '~wildo-backend-lib/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service';\nimport { createOrganizationFeaturesAdminWritePathFactories } from '~wildo-backend-lib/features/services/organization-features-admin-write-path.custom-impl.backend.service';\nimport { createApplicationFeaturesAdminWritePathFactories } from '~wildo-backend-lib/features/services/application-features-admin-write-path.custom-impl.backend.service';\nimport { createWebhookConfigReadPublicKeyFactories } from '~wildo-backend-lib/notifications/webhooks/outbound/services/webhook-config-public-key.custom-impl.backend.service';\nimport {\n createM2MWebhookDeliveryLogRetryFactories,\n createM2MWebhookDeliveryLogPurgeOldFactories,\n} from '~wildo-backend-lib/notifications/webhooks/outbound/services/m2m-webhook-delivery-log.custom-impl.backend.service';\nimport { createWebhookConfigTestEndpointFactories } from '~wildo-backend-lib/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service';\n\n\nexport const CoreBackend_ServiceImplementationsFactories : ResourceCustomServiceImplementationFactory[] = [\n ...userSelfCustomImplementations,\n ...billingCustomImplementations,\n ...scopedStateReadCustomImplementations,\n ...lifecycleCustomImplementations,\n ...authCustomImplementations,\n ...createOrganizationCreateFactories(),\n // Tenant lifecycle transitions (WS-A): `request_deletion` on both declared variants + `restore`.\n // These own `Organization.status`, which generic UPDATE may not write.\n ...createOrganizationLifecycleFactories(),\n // ORGANIZATIONS DELETE — emits ORGANIZATION_DELETED. The event type, its typed event-data schema\n // and its SIEM classification all existed from the start but NOTHING produced them, so destroying\n // a whole tenant left no evidence at all (the exact sibling of the USER_DELETED gap below).\n // Registered on BOTH declared doors — the org-admin default AND the super-admin `admin` variant —\n // because custom impls resolve by an exact operation-path key; one registration would have left\n // the privileged cross-tenant route unaudited. Post-commit by construction; reads the pre-deletion\n // snapshot because `name` / `slug` are unrecoverable once the row is gone.\n ...createOrganizationDeletionAuditFactories(),\n ...createOrganizationMemberCreateFactories(),\n // PLATFORM_ACCESS_GRANTS — the four lifecycle transitions. Every field that carries the\n // time-bound/justified/tenant-scoped guarantee (`operatorUserId`, `status`, `expiresAt`,\n // `approvedByUserId`) is server-authored here; the resource exposes no generic CREATE/UPDATE door,\n // so these prefixes are the only way a grant can come into existence or change state.\n ...createPlatformAccessGrantFactories(),\n // ORGANIZATION_UNITS DELETE prefix — refuses to strand a subtree behind a deleted interior\n // node (the unit tree self-edge declares no delete cascade).\n ...createOrganizationUnitDeleteDependentsGuardFactories(),\n // ORGANIZATION_UNITS tree mechanics. CREATE materializes the hierarchy `path` on the inserting\n // write (it was previously never written by anything); MOVE re-parents and re-homes the whole\n // subtree; ARCHIVE/RESTORE own the node-only status transitions. Before these, all three custom\n // operations were declared with no implementation and succeeded while changing nothing.\n ...createOrganizationUnitCreatePathFactories(),\n ...createOrganizationUnitUpdateFactories(),\n ...createOrganizationUnitMoveFactories(),\n ...createOrganizationUnitStatusTransitionFactories(),\n // ORGANIZATION_UNIT_MEMBERS — a unit assignment is a role grant (its `role` is read into\n // `initiatorRoles` as a unit-narrowed entry), so both write paths carry the role-ceiling gate\n // explicitly (custom impls resolve by exact operation path; neither inherits the other's gate).\n // CREATE additionally proves the target unit is in the caller's tenant. All three paths emit the\n // matching audit event: grant and re-grade via ORGANIZATION_UNIT_MEMBER_ROLE_CHANGED, revocation\n // via ORGANIZATION_UNIT_MEMBER_REMOVED — without the last one an authorization-filtered trail\n // would show unit privileges granted and never removed. DELETE must capture the revoked role in\n // its PREFIX: a delete postfix cannot read the deleted document.\n ...createOrganizationUnitMemberCreateFactories(),\n ...createOrganizationUnitMemberUpdateFactories(),\n ...createOrganizationUnitMemberDeleteFactories(),\n // Account/entity lifecycle transitions (SUSPEND / REACTIVATE / DEACTIVATE_ACCOUNT …). One shared\n // implementation across resources, declared as data — see\n // `resource-status-transition.definitions.backend.ts` for the state machine and for why\n // `organizations | activate|suspend` are not in the list yet.\n ...createEngineResourceStatusTransitionFactories(),\n // INBOUND_CONTACTS CREATE prefix — stamps the backend-only `emailUserMatch`\n // triage signal (does the lead email match an existing active/inactive user).\n ...createInboundContactCreateFactories(),\n // USERS application-role administration. `assign_roles` / `revoke_roles` translate their `roles`\n // request contract into set algebra over the persisted `appRoles` (they previously named a field\n // that is not a schema path and wrote nothing); CREATE/UPDATE carry the role-ceiling gate on the\n // same field, which nothing measured before. All four emit USER_APP_ROLES_CHANGED.\n ...createUserRoleSetOperationFactories(),\n ...createUserCoreRoleCeilingFactories(),\n // USERS force_password_reset — mints a single-use reset token for the TARGET, mails it to\n // them, evicts their live sessions, and records the acting administrator plus their reason.\n // Previously declared UPDATE-like with no handler, so it answered 200 while minting nothing\n // and the declared `{ resetToken, resetUrl }` response could never be produced (that handback\n // is now gone — it was an account-takeover primitive).\n ...createUserForcePasswordResetFactories(),\n // USERS DELETE — emits USER_DELETED. The event type and its SIEM classification existed from the\n // start but NOTHING produced them, so identity destruction left no evidence at all. Post-commit\n // by construction; reads the pre-deletion snapshot because `email` / `appRoles` are unrecoverable\n // once the row is gone.\n ...createUserDeletionAuditFactories(),\n // USERS DELETE — the last-super-administrator floor. Registered at priority 50 so it refuses\n // BEFORE the deletion-audit registration above (default 100) prepares anything: destroying the row\n // that holds the last application authority is the same unrecoverable lockout as revoking the role\n // off it, which the role-administration registrations refuse on their own paths.\n ...createUserSuperAdminFloorFactories(),\n ...createApiKeyCreateFactories(),\n ...createApiKeyRotateFactories(),\n ...createApiKeyRegenerateFactories(),\n ...createApiKeyExtendExpiryFactories(),\n ...createApiKeyUsageStatsFactories(),\n ...createApiKeyDeactivateFactories(),\n ...createApiKeyReactivateFactories(),\n // OAuth Clients (registered client-credentials front — mirrors API Keys mint pipeline)\n ...createOAuthClientCreateFactories(),\n ...createOAuthClientRotateFactories(),\n ...createOAuthClientRegenerateFactories(),\n ...createOrganizationFeaturesAdminWritePathFactories(),\n ...createApplicationFeaturesAdminWritePathFactories(),\n ...createScopeFeaturesCacheInvalidationFactories(),\n ...createSiemExportConfigCacheInvalidationFactories(),\n ...createAuditLogsExportFactories(),\n // Webhook (M2M outbound) domain — the public-key READ postfix existed but was\n // never registered (the `applicationPublicKeyPem` field silently never\n // surfaced); registered here together with the RETRY / PURGE_OLD impls.\n ...createWebhookConfigReadPublicKeyFactories(),\n ...createM2MWebhookDeliveryLogRetryFactories(),\n ...createM2MWebhookDeliveryLogPurgeOldFactories(),\n // TEST_ENDPOINT — fires one signed synthetic delivery through the SAME transport the\n // delivery worker uses and returns the diagnostic. Previously declared READ-like with no\n // handler, so the core read answered 200 with the config row and an unreachable URL still\n // reported success.\n ...createWebhookConfigTestEndpointFactories(),\n]\n"]}
1
+ {"version":3,"file":"custom-service-implementations.backend.definition.js","sourceRoot":"","sources":["../../../../../src/resources/models/custom-service-implementations.backend.definition.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport type { ResourceConfiguration_Operation } from '@wildo-ai/saas-models';\nimport type { ResourceOperationCustomImplementationBase } from '~wildo-backend-lib/base-classes/services/services/resource-operation-custom-implementation-base.backend.service';\nimport { ResourceCustomServiceImplementationFactory } from '~wildo-backend-lib/base-classes/services/services/resource-operation-custom-implementation.factory.backend';\nimport { userSelfCustomImplementations } from '~wildo-backend-lib/users/services/user-self-custom-implementations.backend';\nimport { billingCustomImplementations } from '~wildo-backend-lib/billing/services/custom-impl/billing-custom-implementations.backend';\nimport { lifecycleCustomImplementations } from '~wildo-backend-lib/guidance/services/lifecycle-custom-implementations.backend';\nimport { scopedStateReadCustomImplementations } from '~wildo-backend-lib/guidance/services/scoped-state-read-custom-implementations.backend';\nimport { authCustomImplementations } from '~wildo-backend-lib/security/authentications/services/custom-impls/auth-custom-implementations.backend';\nimport { createAuditLogsExportFactories } from '~wildo-backend-lib/compliance/audit-trails/audit-logs.custom-impl.backend.service';\nimport { createOrganizationCreateFactories, createOrganizationLifecycleFactories } from '~wildo-backend-lib/organizations/services/organization-custom-implementation.backend.service';\nimport { createOrganizationDeletionAuditFactories } from '~wildo-backend-lib/organizations/services/organization-deletion-audit.custom-impl.backend.service';\nimport { createOrganizationProviderCredentialFactories } from '~wildo-backend-lib/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service';\nimport { createUserProviderCredentialFactories } from '~wildo-backend-lib/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service';\nimport { createEngineResourceStatusTransitionFactories } from '~wildo-backend-lib/base-classes/services/services/resource-status-transition.definitions.backend';\nimport { createOrganizationMemberCreateFactories } from '~wildo-backend-lib/organizations/services/organization-member-custom-implementation.backend.service';\nimport { createPlatformAccessGrantFactories } from '~wildo-backend-lib/security/authorizations/platform-access-grant-custom-implementation.backend.service';\nimport {\n createOrganizationUnitCreatePathFactories,\n createOrganizationUnitDeleteDependentsGuardFactories,\n createOrganizationUnitMoveFactories,\n createOrganizationUnitStatusTransitionFactories,\n createOrganizationUnitUpdateFactories,\n} from '~wildo-backend-lib/organizations/services/organization-unit-custom-implementation.backend.service';\nimport {\n createOrganizationUnitMemberCreateFactories,\n createOrganizationUnitMemberDeleteFactories,\n createOrganizationUnitMemberUpdateFactories,\n} from '~wildo-backend-lib/organizations/services/organization-unit-member-custom-implementation.backend.service';\nimport { createInboundContactCreateFactories } from '~wildo-backend-lib/users/services/inbound-contact-custom-implementation.backend.service';\nimport {\n createUserCoreRoleCeilingFactories,\n createUserRoleSetOperationFactories,\n} from '~wildo-backend-lib/users/services/user-role-administration.custom-impl.backend.service';\nimport { createUserForcePasswordResetFactories } from '~wildo-backend-lib/users/services/user-force-password-reset.custom-impl.backend.service';\nimport { createUserReadRetainedFactories } from '~wildo-backend-lib/users/services/user-read-retained.custom-impl.backend.service';\nimport { createUserDeletionAuditFactories } from '~wildo-backend-lib/users/services/user-deletion-audit.custom-impl.backend.service';\nimport { createUserSuperAdminFloorFactories } from '~wildo-backend-lib/users/services/user-super-admin-floor.custom-impl.backend.service';\nimport {\n createApiKeyCreateFactories,\n createApiKeyRotateFactories,\n createApiKeyRegenerateFactories,\n createApiKeyExtendExpiryFactories,\n createApiKeyUsageStatsFactories,\n createApiKeyDeactivateFactories,\n createApiKeyExpireFactories,\n createApiKeyReactivateFactories,\n} from '~wildo-backend-lib/security/api-keys/api-keys.custom-impl.backend.service';\nimport {\n createOAuthClientCreateFactories,\n createOAuthClientRotateFactories,\n createOAuthClientExpireFactories,\n createOAuthClientRegenerateFactories,\n} from '~wildo-backend-lib/security/oauth-clients/oauth-clients.custom-impl.backend.service';\nimport { createScopeFeaturesCacheInvalidationFactories } from '~wildo-backend-lib/features/services/scope-features-cache-invalidation.custom-impl.backend.service';\nimport { createSiemExportConfigCacheInvalidationFactories } from '~wildo-backend-lib/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service';\nimport { createOrganizationFeaturesAdminWritePathFactories } from '~wildo-backend-lib/features/services/organization-features-admin-write-path.custom-impl.backend.service';\nimport { createApplicationFeaturesAdminWritePathFactories } from '~wildo-backend-lib/features/services/application-features-admin-write-path.custom-impl.backend.service';\nimport { createWebhookConfigReadPublicKeyFactories } from '~wildo-backend-lib/notifications/webhooks/outbound/services/webhook-config-public-key.custom-impl.backend.service';\nimport {\n createM2MWebhookDeliveryLogRetryFactories,\n createM2MWebhookDeliveryLogPurgeOldFactories,\n} from '~wildo-backend-lib/notifications/webhooks/outbound/services/m2m-webhook-delivery-log.custom-impl.backend.service';\nimport { createWebhookConfigTestEndpointFactories } from '~wildo-backend-lib/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service';\n\n\nexport const CoreBackend_ServiceImplementationsFactories : ResourceCustomServiceImplementationFactory[] = [\n ...userSelfCustomImplementations,\n ...billingCustomImplementations,\n ...scopedStateReadCustomImplementations,\n ...lifecycleCustomImplementations,\n ...authCustomImplementations,\n ...createOrganizationCreateFactories(),\n // Tenant lifecycle transitions (WS-A): `request_deletion` on both declared variants + `restore`.\n // These own `Organization.status`, which generic UPDATE may not write.\n ...createOrganizationLifecycleFactories(),\n // ORGANIZATIONS DELETE — emits ORGANIZATION_DELETED. The event type, its typed event-data schema\n // and its SIEM classification all existed from the start but NOTHING produced them, so destroying\n // a whole tenant left no evidence at all (the exact sibling of the USER_DELETED gap below).\n // Registered on BOTH declared doors — the org-admin default AND the super-admin `admin` variant —\n // because custom impls resolve by an exact operation-path key; one registration would have left\n // the privileged cross-tenant route unaudited. Post-commit by construction; reads the pre-deletion\n // snapshot because `name` / `slug` are unrecoverable once the row is gone.\n ...createOrganizationDeletionAuditFactories(),\n // Seals every organization provider credential on write, and audits the grant lifecycle. Without\n // this registration the resource stores plaintext secrets behind a route that still answers 200.\n ...createOrganizationProviderCredentialFactories(),\n ...createUserProviderCredentialFactories(),\n ...createOrganizationMemberCreateFactories(),\n // PLATFORM_ACCESS_GRANTS — the four lifecycle transitions. Every field that carries the\n // time-bound/justified/tenant-scoped guarantee (`operatorUserId`, `status`, `expiresAt`,\n // `approvedByUserId`) is server-authored here; the resource exposes no generic CREATE/UPDATE door,\n // so these prefixes are the only way a grant can come into existence or change state.\n ...createPlatformAccessGrantFactories(),\n // ORGANIZATION_UNITS DELETE prefix — refuses to strand a subtree behind a deleted interior\n // node (the unit tree self-edge declares no delete cascade).\n ...createOrganizationUnitDeleteDependentsGuardFactories(),\n // ORGANIZATION_UNITS tree mechanics. CREATE materializes the hierarchy `path` on the inserting\n // write (it was previously never written by anything); MOVE re-parents and re-homes the whole\n // subtree; ARCHIVE/RESTORE own the node-only status transitions. Before these, all three custom\n // operations were declared with no implementation and succeeded while changing nothing.\n ...createOrganizationUnitCreatePathFactories(),\n ...createOrganizationUnitUpdateFactories(),\n ...createOrganizationUnitMoveFactories(),\n ...createOrganizationUnitStatusTransitionFactories(),\n // ORGANIZATION_UNIT_MEMBERS — a unit assignment is a role grant (its `role` is read into\n // `initiatorRoles` as a unit-narrowed entry), so both write paths carry the role-ceiling gate\n // explicitly (custom impls resolve by exact operation path; neither inherits the other's gate).\n // CREATE additionally proves the target unit is in the caller's tenant. All three paths emit the\n // matching audit event: grant and re-grade via ORGANIZATION_UNIT_MEMBER_ROLE_CHANGED, revocation\n // via ORGANIZATION_UNIT_MEMBER_REMOVED — without the last one an authorization-filtered trail\n // would show unit privileges granted and never removed. DELETE must capture the revoked role in\n // its PREFIX: a delete postfix cannot read the deleted document.\n ...createOrganizationUnitMemberCreateFactories(),\n ...createOrganizationUnitMemberUpdateFactories(),\n ...createOrganizationUnitMemberDeleteFactories(),\n // Account/entity lifecycle transitions (SUSPEND / REACTIVATE / DEACTIVATE_ACCOUNT …). One shared\n // implementation across resources, declared as data — see\n // `resource-status-transition.definitions.backend.ts` for the state machine and for why\n // `organizations | activate|suspend` are not in the list yet.\n ...createEngineResourceStatusTransitionFactories(),\n // INBOUND_CONTACTS CREATE prefix — stamps the backend-only `emailUserMatch`\n // triage signal (does the lead email match an existing active/inactive user).\n ...createInboundContactCreateFactories(),\n // USERS application-role administration. `assign_roles` / `revoke_roles` translate their `roles`\n // request contract into set algebra over the persisted `appRoles` (they previously named a field\n // that is not a schema path and wrote nothing); CREATE/UPDATE carry the role-ceiling gate on the\n // same field, which nothing measured before. All four emit USER_APP_ROLES_CHANGED.\n ...createUserRoleSetOperationFactories(),\n ...createUserCoreRoleCeilingFactories(),\n // USERS force_password_reset — mints a single-use reset token for the TARGET, mails it to\n // them, evicts their live sessions, and records the acting administrator plus their reason.\n // Previously declared UPDATE-like with no handler, so it answered 200 while minting nothing\n // and the declared `{ resetToken, resetUrl }` response could never be produced (that handback\n // is now gone — it was an account-takeover primitive).\n ...createUserForcePasswordResetFactories(),\n // #490 — the operator surface for the audited see-through read of a RETAINED user row.\n ...createUserReadRetainedFactories(),\n // USERS DELETE — emits USER_DELETED. The event type and its SIEM classification existed from the\n // start but NOTHING produced them, so identity destruction left no evidence at all. Post-commit\n // by construction; reads the pre-deletion snapshot because `email` / `appRoles` are unrecoverable\n // once the row is gone.\n ...createUserDeletionAuditFactories(),\n // USERS DELETE — the last-super-administrator floor. Registered at priority 50 so it refuses\n // BEFORE the deletion-audit registration above (default 100) prepares anything: destroying the row\n // that holds the last application authority is the same unrecoverable lockout as revoking the role\n // off it, which the role-administration registrations refuse on their own paths.\n ...createUserSuperAdminFloorFactories(),\n ...createApiKeyCreateFactories(),\n ...createApiKeyRotateFactories(),\n ...createApiKeyRegenerateFactories(),\n ...createApiKeyExtendExpiryFactories(),\n ...createApiKeyUsageStatsFactories(),\n ...createApiKeyDeactivateFactories(),\n ...createApiKeyReactivateFactories(),\n // ACTIVE → EXPIRED, dispatched only by the credential-expiry sweep (#413).\n ...createApiKeyExpireFactories(),\n // OAuth Clients (registered client-credentials front — mirrors API Keys mint pipeline)\n ...createOAuthClientCreateFactories(),\n ...createOAuthClientRotateFactories(),\n ...createOAuthClientRegenerateFactories(),\n ...createOAuthClientExpireFactories(),\n ...createOrganizationFeaturesAdminWritePathFactories(),\n ...createApplicationFeaturesAdminWritePathFactories(),\n ...createScopeFeaturesCacheInvalidationFactories(),\n ...createSiemExportConfigCacheInvalidationFactories(),\n ...createAuditLogsExportFactories(),\n // Webhook (M2M outbound) domain — the public-key READ postfix existed but was\n // never registered (the `applicationPublicKeyPem` field silently never\n // surfaced); registered here together with the RETRY / PURGE_OLD impls.\n ...createWebhookConfigReadPublicKeyFactories(),\n ...createM2MWebhookDeliveryLogRetryFactories(),\n ...createM2MWebhookDeliveryLogPurgeOldFactories(),\n // TEST_ENDPOINT — fires one signed synthetic delivery through the SAME transport the\n // delivery worker uses and returns the diagnostic. Previously declared READ-like with no\n // handler, so the core read answered 200 with the config row and an unreachable URL still\n // reported success.\n ...createWebhookConfigTestEndpointFactories(),\n]\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"resources-operations.backend.definitions.d.ts","sourceRoot":"","sources":["../../../../../src/resources/models/resources-operations.backend.definitions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkD,8CAA8C,EAAE,MAAM,uBAAuB,CAAC;AACvI,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAOxE,eAAO,MAAM,wCAAwC,EAAE,8CAA8C,CAAC,mBAAmB,CAIxH,CAAC"}
1
+ {"version":3,"file":"resources-operations.backend.definitions.d.ts","sourceRoot":"","sources":["../../../../../src/resources/models/resources-operations.backend.definitions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkD,8CAA8C,EAAE,MAAM,uBAAuB,CAAC;AACvI,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAQxE,eAAO,MAAM,wCAAwC,EAAE,8CAA8C,CAAC,mBAAmB,CAKxH,CAAC"}
@@ -3,9 +3,11 @@ import { BackendResourceType } from './resources-types.backend.schemas.js';
3
3
  import { consumableTokens_ResourceConfiguration_InitializationFactory } from '../../security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas.js';
4
4
  import { dataSeedRunResourceConfiguration_InitializationFactory } from '../../data-seeding/models/data-seed-run.shared.resources-config.schemas.js';
5
5
  import { externalDataPipelineStateResourceConfiguration_InitializationFactory } from '../../external-data/models/external-data-pipeline-state.backend.schemas.js';
6
+ import { billingProviderEventSettlementResourceConfiguration_InitializationFactory } from '../../billing/models/billing-provider-event-settlement.backend.schemas.js';
6
7
  export const backendResourcesConfigurationsFactoryMap = {
7
8
  [BackendResourceType.CONSUMABLE_TOKENS]: consumableTokens_ResourceConfiguration_InitializationFactory,
8
9
  [BackendResourceType.DATA_SEED_RUN]: dataSeedRunResourceConfiguration_InitializationFactory,
9
10
  [BackendResourceType.EXTERNAL_DATA_PIPELINE_STATE]: externalDataPipelineStateResourceConfiguration_InitializationFactory,
11
+ [BackendResourceType.BILLING_PROVIDER_EVENT_SETTLEMENTS]: billingProviderEventSettlementResourceConfiguration_InitializationFactory,
10
12
  };
11
13
  //# sourceMappingURL=resources-operations.backend.definitions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resources-operations.backend.definitions.js","sourceRoot":"","sources":["../../../../../src/resources/models/resources-operations.backend.definitions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAExE,iCAAiC;AACjC,OAAO,EAAE,4DAA4D,EAAE,MAAM,yGAAyG,CAAC;AACvL,OAAO,EAAE,sDAAsD,EAAE,MAAM,sFAAsF,CAAC;AAC9J,OAAO,EAAE,oEAAoE,EAAE,MAAM,sFAAsF,CAAC;AAE5K,MAAM,CAAC,MAAM,wCAAwC,GAAwE;IAC3H,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,4DAA4D;IACrG,CAAC,mBAAmB,CAAC,aAAa,CAAC,EAAE,sDAAsD;IAC3F,CAAC,mBAAmB,CAAC,4BAA4B,CAAC,EAAE,oEAAoE;CACzH,CAAC","sourcesContent":["import { AnyResourceConfiguration, ResourceRelationship, ResourceConfiguration_InitializationFactoryMap } from '@wildo-ai/saas-models';\nimport { BackendResourceType } from './resources-types.backend.schemas';\n\n// import resource config schemas\nimport { consumableTokens_ResourceConfiguration_InitializationFactory } from '~wildo-backend-lib/security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas';\nimport { dataSeedRunResourceConfiguration_InitializationFactory } from '~wildo-backend-lib/data-seeding/models/data-seed-run.shared.resources-config.schemas';\nimport { externalDataPipelineStateResourceConfiguration_InitializationFactory } from '~wildo-backend-lib/external-data/models/external-data-pipeline-state.backend.schemas';\n\nexport const backendResourcesConfigurationsFactoryMap: ResourceConfiguration_InitializationFactoryMap<BackendResourceType> = {\n [BackendResourceType.CONSUMABLE_TOKENS]: consumableTokens_ResourceConfiguration_InitializationFactory,\n [BackendResourceType.DATA_SEED_RUN]: dataSeedRunResourceConfiguration_InitializationFactory,\n [BackendResourceType.EXTERNAL_DATA_PIPELINE_STATE]: externalDataPipelineStateResourceConfiguration_InitializationFactory,\n};\n"]}
1
+ {"version":3,"file":"resources-operations.backend.definitions.js","sourceRoot":"","sources":["../../../../../src/resources/models/resources-operations.backend.definitions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAExE,iCAAiC;AACjC,OAAO,EAAE,4DAA4D,EAAE,MAAM,yGAAyG,CAAC;AACvL,OAAO,EAAE,sDAAsD,EAAE,MAAM,sFAAsF,CAAC;AAC9J,OAAO,EAAE,oEAAoE,EAAE,MAAM,sFAAsF,CAAC;AAC5K,OAAO,EAAE,yEAAyE,EAAE,MAAM,qFAAqF,CAAC;AAEhL,MAAM,CAAC,MAAM,wCAAwC,GAAwE;IAC3H,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,4DAA4D;IACrG,CAAC,mBAAmB,CAAC,aAAa,CAAC,EAAE,sDAAsD;IAC3F,CAAC,mBAAmB,CAAC,4BAA4B,CAAC,EAAE,oEAAoE;IACxH,CAAC,mBAAmB,CAAC,kCAAkC,CAAC,EAAE,yEAAyE;CACpI,CAAC","sourcesContent":["import { AnyResourceConfiguration, ResourceRelationship, ResourceConfiguration_InitializationFactoryMap } from '@wildo-ai/saas-models';\nimport { BackendResourceType } from './resources-types.backend.schemas';\n\n// import resource config schemas\nimport { consumableTokens_ResourceConfiguration_InitializationFactory } from '~wildo-backend-lib/security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas';\nimport { dataSeedRunResourceConfiguration_InitializationFactory } from '~wildo-backend-lib/data-seeding/models/data-seed-run.shared.resources-config.schemas';\nimport { externalDataPipelineStateResourceConfiguration_InitializationFactory } from '~wildo-backend-lib/external-data/models/external-data-pipeline-state.backend.schemas';\nimport { billingProviderEventSettlementResourceConfiguration_InitializationFactory } from '~wildo-backend-lib/billing/models/billing-provider-event-settlement.backend.schemas';\n\nexport const backendResourcesConfigurationsFactoryMap: ResourceConfiguration_InitializationFactoryMap<BackendResourceType> = {\n [BackendResourceType.CONSUMABLE_TOKENS]: consumableTokens_ResourceConfiguration_InitializationFactory,\n [BackendResourceType.DATA_SEED_RUN]: dataSeedRunResourceConfiguration_InitializationFactory,\n [BackendResourceType.EXTERNAL_DATA_PIPELINE_STATE]: externalDataPipelineStateResourceConfiguration_InitializationFactory,\n [BackendResourceType.BILLING_PROVIDER_EVENT_SETTLEMENTS]: billingProviderEventSettlementResourceConfiguration_InitializationFactory,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"resources-relationships.backend.definitions.d.ts","sourceRoot":"","sources":["../../../../../src/resources/models/resources-relationships.backend.definitions.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4F,oBAAoB,EAAwF,MAAM,uBAAuB,CAAC;AAG7O,eAAO,MAAM,6BAA6B,EAAE,oBAAoB,EA2D/D,CAAC"}
1
+ {"version":3,"file":"resources-relationships.backend.definitions.d.ts","sourceRoot":"","sources":["../../../../../src/resources/models/resources-relationships.backend.definitions.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4F,oBAAoB,EAAwF,MAAM,uBAAuB,CAAC;AAG7O,eAAO,MAAM,6BAA6B,EAAE,oBAAoB,EA8E/D,CAAC"}
@@ -38,5 +38,19 @@ export const backendResourcesRelationships = [
38
38
  nature: RelationshipNature.REFERENCE,
39
39
  contextPolicy: { enabled: false }
40
40
  }),
41
+ // BillingProviderEventSettlement scope anchor — same posture as the two above: internal
42
+ // bookkeeping, APPLICATION-tier, STANDALONE to stay off the URL surface.
43
+ //
44
+ // APPLICATION rather than the billing account's own scope, deliberately. The claim must be
45
+ // takeable BEFORE the handler knows which pool it will credit — that is the whole point of
46
+ // claiming before the money write — and it is keyed by the PROVIDER's event identity, which is
47
+ // unique across the deployment rather than within one tenant. Anchoring it under an organization
48
+ // would make the ledger's uniqueness tenant-relative for a key that is not.
49
+ createResourcesRelationship(CoreResourceType.APPLICATION, BackendResourceType.BILLING_PROVIDER_EVENT_SETTLEMENTS, ResourceRelationshipCardinality.ONE, ResourceRelationshipCardinality.MANY, {
50
+ accessScopeStrategy: ResourceRelationshipAccessScopeStrategy.STANDALONE,
51
+ isPrimaryScope: true,
52
+ nature: RelationshipNature.REFERENCE,
53
+ contextPolicy: { enabled: false }
54
+ }),
41
55
  ];
42
56
  //# sourceMappingURL=resources-relationships.backend.definitions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resources-relationships.backend.definitions.js","sourceRoot":"","sources":["../../../../../src/resources/models/resources-relationships.backend.definitions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,uCAAuC,EAAwB,+BAA+B,EAAE,gBAAgB,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAC;AAC7O,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAExE,MAAM,CAAC,MAAM,6BAA6B,GAA2B;IAEnE,iCAAiC;IACjC,2BAA2B,CACzB,gBAAgB,CAAC,WAAW,EAAE,mBAAmB,CAAC,iBAAiB,EACnE,+BAA+B,CAAC,GAAG,EAAE,+BAA+B,CAAC,IAAI,EACzE;QACE,cAAc,EAAE,IAAI;QACpB,MAAM,EAAE,kBAAkB,CAAC,SAAS;QACpC,sEAAsE;QACtE,aAAa,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;KAClC,CACF;IAED,2BAA2B,CACzB,gBAAgB,CAAC,aAAa,EAAE,mBAAmB,CAAC,iBAAiB,EACrE,+BAA+B,CAAC,GAAG,EAAE,+BAA+B,CAAC,IAAI,EACzE;QACE,yBAAyB,EAAE,iCAAiC,CAAC,QAAQ;QACrE,mBAAmB,EAAE,uCAAuC,CAAC,UAAU;QACvE,MAAM,EAAE,kBAAkB,CAAC,SAAS;QACpC,sEAAsE;QACtE,aAAa,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;KAClC,CACF;IAED,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,2EAA2E;IAC3E,kEAAkE;IAClE,yEAAyE;IACzE,kCAAkC;IAClC,2BAA2B,CACzB,gBAAgB,CAAC,WAAW,EAAE,mBAAmB,CAAC,aAAa,EAC/D,+BAA+B,CAAC,GAAG,EAAE,+BAA+B,CAAC,IAAI,EACzE;QACE,mBAAmB,EAAE,uCAAuC,CAAC,UAAU;QACvE,cAAc,EAAE,IAAI;QACpB,MAAM,EAAE,kBAAkB,CAAC,SAAS;QACpC,aAAa,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;KAClC,CACF;IAED,iFAAiF;IACjF,8DAA8D;IAC9D,gEAAgE;IAChE,yDAAyD;IACzD,2BAA2B,CACzB,gBAAgB,CAAC,WAAW,EAAE,mBAAmB,CAAC,4BAA4B,EAC9E,+BAA+B,CAAC,GAAG,EAAE,+BAA+B,CAAC,IAAI,EACzE;QACE,mBAAmB,EAAE,uCAAuC,CAAC,UAAU;QACvE,cAAc,EAAE,IAAI;QACpB,MAAM,EAAE,kBAAkB,CAAC,SAAS;QACpC,aAAa,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;KAClC,CACF;CAEF,CAAC","sourcesContent":["import { createResourcesRelationship, RelationshipNature, ResourceRelationshipAccessScopeStrategy, ResourceRelationship, ResourceRelationshipCardinality, CoreResourceType, ResourceParentResourceRequirement } from \"@wildo-ai/saas-models\";\nimport { BackendResourceType } from \"./resources-types.backend.schemas\";\n\nexport const backendResourcesRelationships: ResourceRelationship[] = [\n \n // ConsumableTokens relationships\n createResourcesRelationship(\n CoreResourceType.APPLICATION, BackendResourceType.CONSUMABLE_TOKENS, \n ResourceRelationshipCardinality.ONE, ResourceRelationshipCardinality.MANY,\n { \n isPrimaryScope: true,\n nature: RelationshipNature.REFERENCE,\n // SECURITY: Consumable tokens are sensitive - never fetch via context\n contextPolicy: { enabled: false }\n }\n ),\n\n createResourcesRelationship(\n CoreResourceType.ORGANIZATIONS, BackendResourceType.CONSUMABLE_TOKENS, \n ResourceRelationshipCardinality.ONE, ResourceRelationshipCardinality.MANY,\n { \n parentResourceRequirement: ResourceParentResourceRequirement.OPTIONAL,\n accessScopeStrategy: ResourceRelationshipAccessScopeStrategy.STANDALONE,\n nature: RelationshipNature.REFERENCE,\n // SECURITY: Consumable tokens are sensitive - never fetch via context\n contextPolicy: { enabled: false }\n }\n ),\n\n // DataSeedRuns scope anchor — internal idempotency ledger, APPLICATION-tier.\n // STANDALONE keeps the rel off the URL surface (data-seeding is administered\n // through dedicated controllers, not parent-scoped routes); `isPrimaryScope`\n // anchors the resource's `resourcePrimaryScope` enum to APPLICATION so the\n // registry-layer factory's no-fallback throw stays satisfied. See\n // `resources-relationships.shared.factory.ts` Guard 1 for the orthogonal\n // ownership-vs-routing rationale.\n createResourcesRelationship(\n CoreResourceType.APPLICATION, BackendResourceType.DATA_SEED_RUN,\n ResourceRelationshipCardinality.ONE, ResourceRelationshipCardinality.MANY,\n {\n accessScopeStrategy: ResourceRelationshipAccessScopeStrategy.STANDALONE,\n isPrimaryScope: true,\n nature: RelationshipNature.REFERENCE,\n contextPolicy: { enabled: false }\n }\n ),\n\n // ExternalDataPipelineState scope anchor — same posture as DataSeedRun: internal\n // pipeline bookkeeping, APPLICATION-tier (slice 1 admits only\n // SINGLE_TENANT_BINDING pipelines, so a pipeline is app-wide by\n // construction), STANDALONE to stay off the URL surface.\n createResourcesRelationship(\n CoreResourceType.APPLICATION, BackendResourceType.EXTERNAL_DATA_PIPELINE_STATE,\n ResourceRelationshipCardinality.ONE, ResourceRelationshipCardinality.MANY,\n {\n accessScopeStrategy: ResourceRelationshipAccessScopeStrategy.STANDALONE,\n isPrimaryScope: true,\n nature: RelationshipNature.REFERENCE,\n contextPolicy: { enabled: false }\n }\n ),\n\n];\n"]}
1
+ {"version":3,"file":"resources-relationships.backend.definitions.js","sourceRoot":"","sources":["../../../../../src/resources/models/resources-relationships.backend.definitions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,uCAAuC,EAAwB,+BAA+B,EAAE,gBAAgB,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAC;AAC7O,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAExE,MAAM,CAAC,MAAM,6BAA6B,GAA2B;IAEnE,iCAAiC;IACjC,2BAA2B,CACzB,gBAAgB,CAAC,WAAW,EAAE,mBAAmB,CAAC,iBAAiB,EACnE,+BAA+B,CAAC,GAAG,EAAE,+BAA+B,CAAC,IAAI,EACzE;QACE,cAAc,EAAE,IAAI;QACpB,MAAM,EAAE,kBAAkB,CAAC,SAAS;QACpC,sEAAsE;QACtE,aAAa,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;KAClC,CACF;IAED,2BAA2B,CACzB,gBAAgB,CAAC,aAAa,EAAE,mBAAmB,CAAC,iBAAiB,EACrE,+BAA+B,CAAC,GAAG,EAAE,+BAA+B,CAAC,IAAI,EACzE;QACE,yBAAyB,EAAE,iCAAiC,CAAC,QAAQ;QACrE,mBAAmB,EAAE,uCAAuC,CAAC,UAAU;QACvE,MAAM,EAAE,kBAAkB,CAAC,SAAS;QACpC,sEAAsE;QACtE,aAAa,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;KAClC,CACF;IAED,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,2EAA2E;IAC3E,kEAAkE;IAClE,yEAAyE;IACzE,kCAAkC;IAClC,2BAA2B,CACzB,gBAAgB,CAAC,WAAW,EAAE,mBAAmB,CAAC,aAAa,EAC/D,+BAA+B,CAAC,GAAG,EAAE,+BAA+B,CAAC,IAAI,EACzE;QACE,mBAAmB,EAAE,uCAAuC,CAAC,UAAU;QACvE,cAAc,EAAE,IAAI;QACpB,MAAM,EAAE,kBAAkB,CAAC,SAAS;QACpC,aAAa,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;KAClC,CACF;IAED,iFAAiF;IACjF,8DAA8D;IAC9D,gEAAgE;IAChE,yDAAyD;IACzD,2BAA2B,CACzB,gBAAgB,CAAC,WAAW,EAAE,mBAAmB,CAAC,4BAA4B,EAC9E,+BAA+B,CAAC,GAAG,EAAE,+BAA+B,CAAC,IAAI,EACzE;QACE,mBAAmB,EAAE,uCAAuC,CAAC,UAAU;QACvE,cAAc,EAAE,IAAI;QACpB,MAAM,EAAE,kBAAkB,CAAC,SAAS;QACpC,aAAa,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;KAClC,CACF;IAED,wFAAwF;IACxF,yEAAyE;IACzE,EAAE;IACF,2FAA2F;IAC3F,2FAA2F;IAC3F,+FAA+F;IAC/F,iGAAiG;IACjG,4EAA4E;IAC5E,2BAA2B,CACzB,gBAAgB,CAAC,WAAW,EAAE,mBAAmB,CAAC,kCAAkC,EACpF,+BAA+B,CAAC,GAAG,EAAE,+BAA+B,CAAC,IAAI,EACzE;QACE,mBAAmB,EAAE,uCAAuC,CAAC,UAAU;QACvE,cAAc,EAAE,IAAI;QACpB,MAAM,EAAE,kBAAkB,CAAC,SAAS;QACpC,aAAa,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;KAClC,CACF;CAEF,CAAC","sourcesContent":["import { createResourcesRelationship, RelationshipNature, ResourceRelationshipAccessScopeStrategy, ResourceRelationship, ResourceRelationshipCardinality, CoreResourceType, ResourceParentResourceRequirement } from \"@wildo-ai/saas-models\";\nimport { BackendResourceType } from \"./resources-types.backend.schemas\";\n\nexport const backendResourcesRelationships: ResourceRelationship[] = [\n \n // ConsumableTokens relationships\n createResourcesRelationship(\n CoreResourceType.APPLICATION, BackendResourceType.CONSUMABLE_TOKENS, \n ResourceRelationshipCardinality.ONE, ResourceRelationshipCardinality.MANY,\n { \n isPrimaryScope: true,\n nature: RelationshipNature.REFERENCE,\n // SECURITY: Consumable tokens are sensitive - never fetch via context\n contextPolicy: { enabled: false }\n }\n ),\n\n createResourcesRelationship(\n CoreResourceType.ORGANIZATIONS, BackendResourceType.CONSUMABLE_TOKENS, \n ResourceRelationshipCardinality.ONE, ResourceRelationshipCardinality.MANY,\n { \n parentResourceRequirement: ResourceParentResourceRequirement.OPTIONAL,\n accessScopeStrategy: ResourceRelationshipAccessScopeStrategy.STANDALONE,\n nature: RelationshipNature.REFERENCE,\n // SECURITY: Consumable tokens are sensitive - never fetch via context\n contextPolicy: { enabled: false }\n }\n ),\n\n // DataSeedRuns scope anchor — internal idempotency ledger, APPLICATION-tier.\n // STANDALONE keeps the rel off the URL surface (data-seeding is administered\n // through dedicated controllers, not parent-scoped routes); `isPrimaryScope`\n // anchors the resource's `resourcePrimaryScope` enum to APPLICATION so the\n // registry-layer factory's no-fallback throw stays satisfied. See\n // `resources-relationships.shared.factory.ts` Guard 1 for the orthogonal\n // ownership-vs-routing rationale.\n createResourcesRelationship(\n CoreResourceType.APPLICATION, BackendResourceType.DATA_SEED_RUN,\n ResourceRelationshipCardinality.ONE, ResourceRelationshipCardinality.MANY,\n {\n accessScopeStrategy: ResourceRelationshipAccessScopeStrategy.STANDALONE,\n isPrimaryScope: true,\n nature: RelationshipNature.REFERENCE,\n contextPolicy: { enabled: false }\n }\n ),\n\n // ExternalDataPipelineState scope anchor — same posture as DataSeedRun: internal\n // pipeline bookkeeping, APPLICATION-tier (slice 1 admits only\n // SINGLE_TENANT_BINDING pipelines, so a pipeline is app-wide by\n // construction), STANDALONE to stay off the URL surface.\n createResourcesRelationship(\n CoreResourceType.APPLICATION, BackendResourceType.EXTERNAL_DATA_PIPELINE_STATE,\n ResourceRelationshipCardinality.ONE, ResourceRelationshipCardinality.MANY,\n {\n accessScopeStrategy: ResourceRelationshipAccessScopeStrategy.STANDALONE,\n isPrimaryScope: true,\n nature: RelationshipNature.REFERENCE,\n contextPolicy: { enabled: false }\n }\n ),\n\n // BillingProviderEventSettlement scope anchor — same posture as the two above: internal\n // bookkeeping, APPLICATION-tier, STANDALONE to stay off the URL surface.\n //\n // APPLICATION rather than the billing account's own scope, deliberately. The claim must be\n // takeable BEFORE the handler knows which pool it will credit — that is the whole point of\n // claiming before the money write — and it is keyed by the PROVIDER's event identity, which is\n // unique across the deployment rather than within one tenant. Anchoring it under an organization\n // would make the ledger's uniqueness tenant-relative for a key that is not.\n createResourcesRelationship(\n CoreResourceType.APPLICATION, BackendResourceType.BILLING_PROVIDER_EVENT_SETTLEMENTS,\n ResourceRelationshipCardinality.ONE, ResourceRelationshipCardinality.MANY,\n {\n accessScopeStrategy: ResourceRelationshipAccessScopeStrategy.STANDALONE,\n isPrimaryScope: true,\n nature: RelationshipNature.REFERENCE,\n contextPolicy: { enabled: false }\n }\n ),\n\n];\n"]}
@@ -8,7 +8,8 @@
8
8
  export declare enum BackendResourceType {
9
9
  CONSUMABLE_TOKENS = "consumableTokens",
10
10
  DATA_SEED_RUN = "dataSeedRuns",
11
- EXTERNAL_DATA_PIPELINE_STATE = "etlPipelineStates"
11
+ EXTERNAL_DATA_PIPELINE_STATE = "etlPipelineStates",
12
+ BILLING_PROVIDER_EVENT_SETTLEMENTS = "billingProviderEventSettlements"
12
13
  }
13
14
  export declare const BackendResourceFieldIdentifier: {
14
15
  [key in BackendResourceType]: string;
@@ -1 +1 @@
1
- {"version":3,"file":"resources-types.backend.schemas.d.ts","sourceRoot":"","sources":["../../../../../src/resources/models/resources-types.backend.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,oBAAY,mBAAmB;IAC7B,iBAAiB,qBAAqB;IAMtC,aAAa,iBAAiB;IAgB9B,4BAA4B,sBAAsB;CACnD;AAED,eAAO,MAAM,8BAA8B,EAAE;KAAG,GAAG,IAAI,mBAAmB,GAAG,MAAM;CAIlF,CAAC"}
1
+ {"version":3,"file":"resources-types.backend.schemas.d.ts","sourceRoot":"","sources":["../../../../../src/resources/models/resources-types.backend.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,oBAAY,mBAAmB;IAC7B,iBAAiB,qBAAqB;IAMtC,aAAa,iBAAiB;IAgB9B,4BAA4B,sBAAsB;IAQlD,kCAAkC,oCAAoC;CACvE;AAED,eAAO,MAAM,8BAA8B,EAAE;KAAG,GAAG,IAAI,mBAAmB,GAAG,MAAM;CAKlF,CAAC"}
@@ -28,10 +28,18 @@ export var BackendResourceType;
28
28
  // both lanes. Code vocabulary and storage identity are allowed to differ; what is NOT allowed
29
29
  // is changing this value without the migration that goes with it.
30
30
  BackendResourceType["EXTERNAL_DATA_PIPELINE_STATE"] = "etlPipelineStates";
31
+ // Billing webhook idempotency ledger — system resource. ONE row per money-affecting provider
32
+ // event, whose PRIMARY KEY is derived from the event's own identity, so a retry delivered to a
33
+ // second replica collides at the store instead of granting the credits a second time. The
34
+ // process-local `Set` this replaced could not see another replica, could not survive a restart,
35
+ // and evicted its own entries after 10 000 sessions.
36
+ // See `engine/saas-backend-lib/src/billing/models/billing-provider-event-settlement.backend.schemas.ts`.
37
+ BackendResourceType["BILLING_PROVIDER_EVENT_SETTLEMENTS"] = "billingProviderEventSettlements";
31
38
  })(BackendResourceType || (BackendResourceType = {}));
32
39
  export const BackendResourceFieldIdentifier = {
33
40
  [BackendResourceType.CONSUMABLE_TOKENS]: 'consumableTokenId',
34
41
  [BackendResourceType.DATA_SEED_RUN]: 'dataSeedRunId',
35
42
  [BackendResourceType.EXTERNAL_DATA_PIPELINE_STATE]: 'etlPipelineStateId',
43
+ [BackendResourceType.BILLING_PROVIDER_EVENT_SETTLEMENTS]: 'billingProviderEventSettlementId',
36
44
  };
37
45
  //# sourceMappingURL=resources-types.backend.schemas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resources-types.backend.schemas.js","sourceRoot":"","sources":["../../../../../src/resources/models/resources-types.backend.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,CAAN,IAAY,mBAwBX;AAxBD,WAAY,mBAAmB;IAC7B,6DAAsC,CAAA;IAEtC,4EAA4E;IAC5E,0EAA0E;IAC1E,yEAAyE;IACzE,yFAAyF;IACzF,qDAA8B,CAAA;IAE9B,uFAAuF;IACvF,8FAA8F;IAC9F,+FAA+F;IAC/F,0DAA0D;IAC1D,0GAA0G;IAC1G,EAAE;IACF,gGAAgG;IAChG,6FAA6F;IAC7F,uFAAuF;IACvF,8FAA8F;IAC9F,wFAAwF;IACxF,8FAA8F;IAC9F,8FAA8F;IAC9F,kEAAkE;IAClE,yEAAkD,CAAA;AACpD,CAAC,EAxBW,mBAAmB,KAAnB,mBAAmB,QAwB9B;AAED,MAAM,CAAC,MAAM,8BAA8B,GAA6C;IACtF,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,mBAAmB;IAC5D,CAAC,mBAAmB,CAAC,aAAa,CAAC,EAAE,eAAe;IACpD,CAAC,mBAAmB,CAAC,4BAA4B,CAAC,EAAE,oBAAoB;CACzE,CAAC","sourcesContent":["/**\n * Backend Resource Types\n *\n * Resource type definitions for SaaS backend infrastructure components.\n * These are backend-specific resources used for internal operations and are\n * never surfaced to frontend bundles (kept out of `@wildo-ai/saas-models`).\n */\n\nexport enum BackendResourceType {\n CONSUMABLE_TOKENS = 'consumableTokens',\n\n // Data Seeding Tracking — system resource (Phase 2 of seeding-first-class).\n // Single source of truth for \"has this seed already run for this scope at\n // this version?\". Written by DataSeedDispatcher before/after every pass.\n // See `engine/saas-backend-lib/src/data-seeding/models/data-seed-run.shared.schemas.ts`.\n DATA_SEED_RUN = 'dataSeedRuns',\n\n // External-data pipeline state — system resource (partial-resource coverage v3, PR-9).\n // ONE row per declared `externalDataPipeline`: the persisted extraction cursor (a pass larger\n // than `maxRowsPerRun` continues across runs and process restarts), plus last-run bookkeeping.\n // Written only by the external-data pipeline run service.\n // See `engine/saas-backend-lib/src/external-data/models/external-data-pipeline-state.backend.schemas.ts`.\n //\n // ⚠ The VALUE stays `etlPipelineStates` while the member speaks the current vocabulary, and the\n // divergence is deliberate: this string is a PERSISTED IDENTITY — it is the PostgreSQL table\n // name, and two generated migrations (app-side `backend-api/migrations`, platform-side\n // `platform-apps-manager/migrations`) are already committed against it. Renaming a table is a\n // migration event, not a rename: the runner freezes an applied migration's bytes in its\n // SHA-256 ledger, so it belongs on the machine that has PostgreSQL and can regenerate + apply\n // both lanes. Code vocabulary and storage identity are allowed to differ; what is NOT allowed\n // is changing this value without the migration that goes with it.\n EXTERNAL_DATA_PIPELINE_STATE = 'etlPipelineStates',\n}\n\nexport const BackendResourceFieldIdentifier: { [key in BackendResourceType]: string } = {\n [BackendResourceType.CONSUMABLE_TOKENS]: 'consumableTokenId',\n [BackendResourceType.DATA_SEED_RUN]: 'dataSeedRunId',\n [BackendResourceType.EXTERNAL_DATA_PIPELINE_STATE]: 'etlPipelineStateId',\n};\n"]}
1
+ {"version":3,"file":"resources-types.backend.schemas.js","sourceRoot":"","sources":["../../../../../src/resources/models/resources-types.backend.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,CAAN,IAAY,mBAgCX;AAhCD,WAAY,mBAAmB;IAC7B,6DAAsC,CAAA;IAEtC,4EAA4E;IAC5E,0EAA0E;IAC1E,yEAAyE;IACzE,yFAAyF;IACzF,qDAA8B,CAAA;IAE9B,uFAAuF;IACvF,8FAA8F;IAC9F,+FAA+F;IAC/F,0DAA0D;IAC1D,0GAA0G;IAC1G,EAAE;IACF,gGAAgG;IAChG,6FAA6F;IAC7F,uFAAuF;IACvF,8FAA8F;IAC9F,wFAAwF;IACxF,8FAA8F;IAC9F,8FAA8F;IAC9F,kEAAkE;IAClE,yEAAkD,CAAA;IAElD,6FAA6F;IAC7F,+FAA+F;IAC/F,0FAA0F;IAC1F,gGAAgG;IAChG,qDAAqD;IACrD,yGAAyG;IACzG,6FAAsE,CAAA;AACxE,CAAC,EAhCW,mBAAmB,KAAnB,mBAAmB,QAgC9B;AAED,MAAM,CAAC,MAAM,8BAA8B,GAA6C;IACtF,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,mBAAmB;IAC5D,CAAC,mBAAmB,CAAC,aAAa,CAAC,EAAE,eAAe;IACpD,CAAC,mBAAmB,CAAC,4BAA4B,CAAC,EAAE,oBAAoB;IACxE,CAAC,mBAAmB,CAAC,kCAAkC,CAAC,EAAE,kCAAkC;CAC7F,CAAC","sourcesContent":["/**\n * Backend Resource Types\n *\n * Resource type definitions for SaaS backend infrastructure components.\n * These are backend-specific resources used for internal operations and are\n * never surfaced to frontend bundles (kept out of `@wildo-ai/saas-models`).\n */\n\nexport enum BackendResourceType {\n CONSUMABLE_TOKENS = 'consumableTokens',\n\n // Data Seeding Tracking — system resource (Phase 2 of seeding-first-class).\n // Single source of truth for \"has this seed already run for this scope at\n // this version?\". Written by DataSeedDispatcher before/after every pass.\n // See `engine/saas-backend-lib/src/data-seeding/models/data-seed-run.shared.schemas.ts`.\n DATA_SEED_RUN = 'dataSeedRuns',\n\n // External-data pipeline state — system resource (partial-resource coverage v3, PR-9).\n // ONE row per declared `externalDataPipeline`: the persisted extraction cursor (a pass larger\n // than `maxRowsPerRun` continues across runs and process restarts), plus last-run bookkeeping.\n // Written only by the external-data pipeline run service.\n // See `engine/saas-backend-lib/src/external-data/models/external-data-pipeline-state.backend.schemas.ts`.\n //\n // ⚠ The VALUE stays `etlPipelineStates` while the member speaks the current vocabulary, and the\n // divergence is deliberate: this string is a PERSISTED IDENTITY — it is the PostgreSQL table\n // name, and two generated migrations (app-side `backend-api/migrations`, platform-side\n // `platform-apps-manager/migrations`) are already committed against it. Renaming a table is a\n // migration event, not a rename: the runner freezes an applied migration's bytes in its\n // SHA-256 ledger, so it belongs on the machine that has PostgreSQL and can regenerate + apply\n // both lanes. Code vocabulary and storage identity are allowed to differ; what is NOT allowed\n // is changing this value without the migration that goes with it.\n EXTERNAL_DATA_PIPELINE_STATE = 'etlPipelineStates',\n\n // Billing webhook idempotency ledger — system resource. ONE row per money-affecting provider\n // event, whose PRIMARY KEY is derived from the event's own identity, so a retry delivered to a\n // second replica collides at the store instead of granting the credits a second time. The\n // process-local `Set` this replaced could not see another replica, could not survive a restart,\n // and evicted its own entries after 10 000 sessions.\n // See `engine/saas-backend-lib/src/billing/models/billing-provider-event-settlement.backend.schemas.ts`.\n BILLING_PROVIDER_EVENT_SETTLEMENTS = 'billingProviderEventSettlements',\n}\n\nexport const BackendResourceFieldIdentifier: { [key in BackendResourceType]: string } = {\n [BackendResourceType.CONSUMABLE_TOKENS]: 'consumableTokenId',\n [BackendResourceType.DATA_SEED_RUN]: 'dataSeedRunId',\n [BackendResourceType.EXTERNAL_DATA_PIPELINE_STATE]: 'etlPipelineStateId',\n [BackendResourceType.BILLING_PROVIDER_EVENT_SETTLEMENTS]: 'billingProviderEventSettlementId',\n};\n"]}
@@ -174,11 +174,36 @@ export declare class ResourcesRegistryBackendService {
174
174
  * Resolution is INTERNAL-preferred, then URL-bearing:
175
175
  * 1. If the operation declares an `INTERNAL_CALL` default, return it. This
176
176
  * honours author intent for resources whose default for this operation
177
- * is internal-only (`userIdentityLinks.list`) AND for resources that
178
- * declare BOTH an internal and a URL default for the same operation
179
- * (`users.list`, `inboundContacts.update`) — the internal variant is the
180
- * one trusted callers must use; the URL variant is the public/admin
181
- * surface reached via its keyed/route path.
177
+ * is internal-only (`userIdentityLinks.list`, `users.list`,
178
+ * `inboundContacts.update`) AND for the one resource that declares BOTH
179
+ * an internal and a URL default for the same operation — the internal
180
+ * variant is the one trusted callers must use; the URL variant is the
181
+ * public/admin surface reached via its keyed/route path.
182
+ *
183
+ * **That "BOTH" population is exactly ONE operation: `organizations`
184
+ * CREATE.** Measured 2026-09-08 over all 106 non-test
185
+ * `*resources-config*.ts` files (653 variant blocks), replicating
186
+ * `determineOperationVariantDefault` per variant-type group.
187
+ *
188
+ * This paragraph previously cited `users.list` and `inboundContacts.update`
189
+ * as further both-default examples and BOTH were wrong: the former's
190
+ * `API_CALL` is `isDefault: false, variantKey: "admin"`, and the latter
191
+ * declares no `API_CALL` at all — so neither has a URL-bearing DEFAULT and
192
+ * neither is a case where this method chooses between transports. The
193
+ * correction is recorded rather than silently applied because the false
194
+ * plural made the preference look like a broad, well-trodden policy when it
195
+ * decides exactly one operation — which is what made the agent function-tool
196
+ * plane's blast radius read as unbounded when it was a single, and severe,
197
+ * case (see `9594526e`).
198
+ *
199
+ * ⚠️ **A caller that FACES AN EXTERNAL PRINCIPAL must not use this method.**
200
+ * It answers "which variant does a TRUSTED internal caller want", and for
201
+ * `organizations` CREATE that is the registration-owned path, which skips the
202
+ * creation-policy guard and writes no founding owner. A surface that
203
+ * advertises a public operation to an outside caller owes
204
+ * {@link getOperationPathDefault} instead, so the operation it authorized and
205
+ * advertised is the operation it executes — the invariant the MCP tool plane
206
+ * and the agent function-tool factories both keep.
182
207
  * 2. Otherwise return the URL-bearing default (`API_CALL` /
183
208
  * `API_CALL_WITH_CALLBACK`) for resources exposed only over HTTP.
184
209
  * 3. Otherwise throw `RESOURCES_REGISTRY_OPERATION_PATH_NOT_FOUND`.
@@ -348,6 +373,36 @@ export declare class ResourcesRegistryBackendService {
348
373
  protected normalizeResourceConfigurationRelationships(allResourceConfigurations: {
349
374
  [key: string]: AnyResourceConfiguration;
350
375
  }, allResourceFieldIdentifiers: Record<string, string>): void;
376
+ /**
377
+ * Refuse to start on an incoherent notification-badge declaration.
378
+ *
379
+ * ## What this catches, and why the runtime could not
380
+ *
381
+ * A badge write used to be addressed by a bare `identifier`, resolved against nothing. Two
382
+ * declarations were therefore unfalsifiable:
383
+ *
384
+ * - an operation naming a badge NO definition declares — the write materialized a counter row
385
+ * that no definition described and no screen could render, silently, forever;
386
+ * - two definitions sharing one `(scope, identifier)` — every lookup answers the first, so the
387
+ * second is unreachable while sharing the first's count.
388
+ *
389
+ * Neither produces an error at runtime. The write succeeds; the render finds nothing; nobody is
390
+ * told. So the check belongs where the DECLARATION is, not where the write is, and it fails
391
+ * CLOSED for the same reason the organization-unit narrowing containment above does: a
392
+ * misconfiguration that only manifests as a missing number is one nobody chases.
393
+ *
394
+ * **What a misconfigured application experiences:** the backend does not come up. Startup throws
395
+ * a `CONFIGURATION` error naming every violation — the resource and operation that declared the
396
+ * unresolvable ref, or the duplicated key — beside the keys that ARE registered, so the author
397
+ * reads the fix off the message rather than deriving it. A typo in a `badgeRef` is a refusal at
398
+ * the moment it is authored instead of a badge that never appears in production.
399
+ *
400
+ * The enumeration is TOTAL over both populations rather than sampled: every registered
401
+ * definition, and every `notificationBadgeOperations` entry on every operation of every resource
402
+ * configuration — which is the merged core + application map, so an engine-declared badge is
403
+ * checked on the same terms as an application-declared one.
404
+ */
405
+ protected validateNotificationBadgeDeclarations(notificationBadgeDefinitions: NotificationBadgeDefinition[], allResourceConfigurations: Record<string, AnyResourceConfiguration>): void;
351
406
  /**
352
407
  * Validate that all relationships can resolve their FK fields at startup.
353
408
  * This catches configuration errors early (e.g., missing resourceFieldIdentifier).
@@ -1 +1 @@
1
- {"version":3,"file":"resources-registry.backend.service.d.ts","sourceRoot":"","sources":["../../../../../src/resources/services/resources-registry.backend.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resources-registry.backend.service.d.ts","sourceRoot":"","sources":["../../../../../src/resources/services/resources-registry.backend.service.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
11
  return function (target, key) { decorator(target, key, paramIndex); }
12
12
  };
13
13
  import { injectable, inject } from 'inversify';
14
- import { coreNotificationBadgeDefinitions, coreShared_ResourcesConfigurations_FactoryMap, coreResourceShared_FieldIdentifier, coreResourceShared_FieldIdentifierPriority, coreSharedResourceRelationship, ResourcesConfigOperationsUrlsBuilderUtils, ResourcesConfigOperationsDtosBuilderUtils, ResourcesConfig_OperationPathUtils, ResourceOperationVariantType, isDefaultUrlBearingOperation, isServiceResolvableDefaultOperation, SERVICE_NATIVE_OPERATION_VARIANT_TYPES, URL_BEARING_OPERATION_VARIANT_TYPES, findSharedPersistenceCollectionRetentionIncoherences, findSharedPersistenceCollectionAdapterIncoherences, ErrorType, ErrorCustomMessageReference, ENGINE_ORGANIZATION_UNIT_NARROWING, collectOrganizationUnitNarrowingViolations, mergeOrganizationUnitNarrowingDeclarations, DEFAULT_PERSISTENCE_ADAPTER, CoreResourceOperation, ResourceParentResourceRequirement, reconcileGeneratedRelationshipBulkOperations, Resources_SharedUtils, isPersistenceAdapter, selectByPersistenceAdapter, dataModeToVariantKey, findDuplicateRelationshipRegistrations, } from '@wildo-ai/saas-models';
14
+ import { coreNotificationBadgeDefinitions, collectNotificationBadgeDeclarationViolations, notificationBadgeIdentityKey, coreShared_ResourcesConfigurations_FactoryMap, coreResourceShared_FieldIdentifier, coreResourceShared_FieldIdentifierPriority, coreSharedResourceRelationship, ResourcesConfigOperationsUrlsBuilderUtils, ResourcesConfigOperationsDtosBuilderUtils, ResourcesConfig_OperationPathUtils, ResourceOperationVariantType, isDefaultUrlBearingOperation, isServiceResolvableDefaultOperation, SERVICE_NATIVE_OPERATION_VARIANT_TYPES, URL_BEARING_OPERATION_VARIANT_TYPES, findSharedPersistenceCollectionRetentionIncoherences, findSharedPersistenceCollectionAdapterIncoherences, ErrorType, ErrorCustomMessageReference, ENGINE_ORGANIZATION_UNIT_NARROWING, collectOrganizationUnitNarrowingViolations, mergeOrganizationUnitNarrowingDeclarations, DEFAULT_PERSISTENCE_ADAPTER, CoreResourceOperation, ResourceParentResourceRequirement, reconcileGeneratedRelationshipBulkOperations, Resources_SharedUtils, isPersistenceAdapter, selectByPersistenceAdapter, dataModeToVariantKey, findDuplicateRelationshipRegistrations, } from '@wildo-ai/saas-models';
15
15
  import { backendResourcesConfigurationsFactoryMap } from '../../resources/models/resources-operations.backend.definitions.js';
16
16
  import { backendResourcesRelationships } from '../../resources/models/resources-relationships.backend.definitions.js';
17
17
  import { BackendResourceFieldIdentifier } from '../../resources/models/resources-types.backend.schemas.js';
@@ -288,6 +288,9 @@ let ResourcesRegistryBackendService = class ResourcesRegistryBackendService {
288
288
  // repositories (which apply) — so they cannot disagree about which resources are narrowed.
289
289
  organizationUnitNarrowing,
290
290
  };
291
+ // Validate that every badge declaration is coherent, and refuse to start otherwise.
292
+ this.logDebug('Validating notification badge declarations');
293
+ this.validateNotificationBadgeDeclarations(this.registry.notificationBadgeDefinitions, allResourceConfigurations);
291
294
  // Validate all relationships can resolve FK fields
292
295
  this.logDebug('Validating relationship FK field resolution');
293
296
  this.validateRelationshipForeignKeyFields(allResourceRelationships, allResourceFieldIdentifiers);
@@ -534,11 +537,36 @@ let ResourcesRegistryBackendService = class ResourcesRegistryBackendService {
534
537
  * Resolution is INTERNAL-preferred, then URL-bearing:
535
538
  * 1. If the operation declares an `INTERNAL_CALL` default, return it. This
536
539
  * honours author intent for resources whose default for this operation
537
- * is internal-only (`userIdentityLinks.list`) AND for resources that
538
- * declare BOTH an internal and a URL default for the same operation
539
- * (`users.list`, `inboundContacts.update`) — the internal variant is the
540
- * one trusted callers must use; the URL variant is the public/admin
541
- * surface reached via its keyed/route path.
540
+ * is internal-only (`userIdentityLinks.list`, `users.list`,
541
+ * `inboundContacts.update`) AND for the one resource that declares BOTH
542
+ * an internal and a URL default for the same operation — the internal
543
+ * variant is the one trusted callers must use; the URL variant is the
544
+ * public/admin surface reached via its keyed/route path.
545
+ *
546
+ * **That "BOTH" population is exactly ONE operation: `organizations`
547
+ * CREATE.** Measured 2026-09-08 over all 106 non-test
548
+ * `*resources-config*.ts` files (653 variant blocks), replicating
549
+ * `determineOperationVariantDefault` per variant-type group.
550
+ *
551
+ * This paragraph previously cited `users.list` and `inboundContacts.update`
552
+ * as further both-default examples and BOTH were wrong: the former's
553
+ * `API_CALL` is `isDefault: false, variantKey: "admin"`, and the latter
554
+ * declares no `API_CALL` at all — so neither has a URL-bearing DEFAULT and
555
+ * neither is a case where this method chooses between transports. The
556
+ * correction is recorded rather than silently applied because the false
557
+ * plural made the preference look like a broad, well-trodden policy when it
558
+ * decides exactly one operation — which is what made the agent function-tool
559
+ * plane's blast radius read as unbounded when it was a single, and severe,
560
+ * case (see `9594526e`).
561
+ *
562
+ * ⚠️ **A caller that FACES AN EXTERNAL PRINCIPAL must not use this method.**
563
+ * It answers "which variant does a TRUSTED internal caller want", and for
564
+ * `organizations` CREATE that is the registration-owned path, which skips the
565
+ * creation-policy guard and writes no founding owner. A surface that
566
+ * advertises a public operation to an outside caller owes
567
+ * {@link getOperationPathDefault} instead, so the operation it authorized and
568
+ * advertised is the operation it executes — the invariant the MCP tool plane
569
+ * and the agent function-tool factories both keep.
542
570
  * 2. Otherwise return the URL-bearing default (`API_CALL` /
543
571
  * `API_CALL_WITH_CALLBACK`) for resources exposed only over HTTP.
544
572
  * 3. Otherwise throw `RESOURCES_REGISTRY_OPERATION_PATH_NOT_FOUND`.
@@ -1032,6 +1060,62 @@ let ResourcesRegistryBackendService = class ResourcesRegistryBackendService {
1032
1060
  };
1033
1061
  }
1034
1062
  }
1063
+ /**
1064
+ * Refuse to start on an incoherent notification-badge declaration.
1065
+ *
1066
+ * ## What this catches, and why the runtime could not
1067
+ *
1068
+ * A badge write used to be addressed by a bare `identifier`, resolved against nothing. Two
1069
+ * declarations were therefore unfalsifiable:
1070
+ *
1071
+ * - an operation naming a badge NO definition declares — the write materialized a counter row
1072
+ * that no definition described and no screen could render, silently, forever;
1073
+ * - two definitions sharing one `(scope, identifier)` — every lookup answers the first, so the
1074
+ * second is unreachable while sharing the first's count.
1075
+ *
1076
+ * Neither produces an error at runtime. The write succeeds; the render finds nothing; nobody is
1077
+ * told. So the check belongs where the DECLARATION is, not where the write is, and it fails
1078
+ * CLOSED for the same reason the organization-unit narrowing containment above does: a
1079
+ * misconfiguration that only manifests as a missing number is one nobody chases.
1080
+ *
1081
+ * **What a misconfigured application experiences:** the backend does not come up. Startup throws
1082
+ * a `CONFIGURATION` error naming every violation — the resource and operation that declared the
1083
+ * unresolvable ref, or the duplicated key — beside the keys that ARE registered, so the author
1084
+ * reads the fix off the message rather than deriving it. A typo in a `badgeRef` is a refusal at
1085
+ * the moment it is authored instead of a badge that never appears in production.
1086
+ *
1087
+ * The enumeration is TOTAL over both populations rather than sampled: every registered
1088
+ * definition, and every `notificationBadgeOperations` entry on every operation of every resource
1089
+ * configuration — which is the merged core + application map, so an engine-declared badge is
1090
+ * checked on the same terms as an application-declared one.
1091
+ */
1092
+ validateNotificationBadgeDeclarations(notificationBadgeDefinitions, allResourceConfigurations) {
1093
+ const operationSites = [];
1094
+ for (const [resourceType, resourceConfiguration] of Object.entries(allResourceConfigurations)) {
1095
+ const operations = resourceConfiguration?.operations ?? {};
1096
+ for (const [operationIdentifier, operation] of Object.entries(operations)) {
1097
+ const badgeOperations = operation?.notificationBadgeOperations ?? [];
1098
+ for (const badgeOperation of badgeOperations) {
1099
+ operationSites.push({ resourceType, operationIdentifier, badgeRef: badgeOperation.badgeRef });
1100
+ }
1101
+ }
1102
+ }
1103
+ const violations = collectNotificationBadgeDeclarationViolations(notificationBadgeDefinitions, operationSites);
1104
+ if (violations.length > 0) {
1105
+ this.logger.error('Notification badge declaration validation failed', { violations });
1106
+ throw this.errorBuilder.buildError(ErrorType.CONFIGURATION, undefined, {
1107
+ customMessageReference: ErrorCustomMessageReference.CONFIGURATION,
1108
+ context: {
1109
+ message: 'Notification badge declarations are incoherent',
1110
+ reason: 'notification_badge_declaration_violation',
1111
+ violations,
1112
+ registeredBadgeKeys: notificationBadgeDefinitions.map(notificationBadgeIdentityKey),
1113
+ },
1114
+ });
1115
+ }
1116
+ this.logDebug(`Validated ${notificationBadgeDefinitions.length} notification badge definition(s) `
1117
+ + `and ${operationSites.length} operation badge reference(s)`);
1118
+ }
1035
1119
  /**
1036
1120
  * Validate that all relationships can resolve their FK fields at startup.
1037
1121
  * This catches configuration errors early (e.g., missing resourceFieldIdentifier).