@wildo-ai/saas-backend-lib 1.1.1 → 1.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (972) 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 +14 -3
  20. package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.d.ts.map +1 -1
  21. package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.js +138 -24
  22. package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.js.map +1 -1
  23. package/dist/esm/base-classes/services/controllers/controllers-registry-handler.backend.service.d.ts +3 -1
  24. package/dist/esm/base-classes/services/controllers/controllers-registry-handler.backend.service.d.ts.map +1 -1
  25. package/dist/esm/base-classes/services/controllers/controllers-registry-handler.backend.service.js +8 -3
  26. package/dist/esm/base-classes/services/controllers/controllers-registry-handler.backend.service.js.map +1 -1
  27. package/dist/esm/base-classes/services/repositories/field-clearing-partition.backend.d.ts +11 -0
  28. package/dist/esm/base-classes/services/repositories/field-clearing-partition.backend.d.ts.map +1 -1
  29. package/dist/esm/base-classes/services/repositories/field-clearing-partition.backend.js +11 -2
  30. package/dist/esm/base-classes/services/repositories/field-clearing-partition.backend.js.map +1 -1
  31. package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.d.ts +124 -13
  32. package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.d.ts.map +1 -1
  33. package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.js +207 -21
  34. package/dist/esm/base-classes/services/repositories/http-api/http-api-provider-access.backend.js.map +1 -1
  35. package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.d.ts +60 -8
  36. package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.d.ts.map +1 -1
  37. package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.js +174 -26
  38. package/dist/esm/base-classes/services/repositories/http-api/http-api-read-client.backend.js.map +1 -1
  39. package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.d.ts +48 -4
  40. package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.d.ts.map +1 -1
  41. package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.js +102 -30
  42. package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.js.map +1 -1
  43. package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.d.ts +55 -0
  44. package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.d.ts.map +1 -0
  45. package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.js +114 -0
  46. package/dist/esm/base-classes/services/repositories/http-api/http-api-rest-operation-reference.backend.js.map +1 -0
  47. package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.d.ts +89 -14
  48. package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.d.ts.map +1 -1
  49. package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.js +84 -11
  50. package/dist/esm/base-classes/services/repositories/http-api/http-api-transport.backend.js.map +1 -1
  51. package/dist/esm/base-classes/services/repositories/http-api/odata-query-compiler.backend.d.ts.map +1 -1
  52. package/dist/esm/base-classes/services/repositories/http-api/odata-query-compiler.backend.js +16 -0
  53. package/dist/esm/base-classes/services/repositories/http-api/odata-query-compiler.backend.js.map +1 -1
  54. package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.d.ts +20 -6
  55. package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.d.ts.map +1 -1
  56. package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.js +96 -32
  57. package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.js.map +1 -1
  58. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-repository.backend.service.d.ts +3 -1
  59. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-repository.backend.service.d.ts.map +1 -1
  60. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-repository.backend.service.js +32 -7
  61. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-repository.backend.service.js.map +1 -1
  62. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-source.backend.port.d.ts +8 -5
  63. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-source.backend.port.d.ts.map +1 -1
  64. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-source.backend.port.js.map +1 -1
  65. package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.d.ts +80 -0
  66. package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.d.ts.map +1 -1
  67. package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.js +298 -23
  68. package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.js.map +1 -1
  69. package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.d.ts +71 -1
  70. package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.d.ts.map +1 -1
  71. package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.js +85 -5
  72. package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.js.map +1 -1
  73. package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.d.ts +21 -0
  74. package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.d.ts.map +1 -1
  75. package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.js +146 -4
  76. package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.js.map +1 -1
  77. package/dist/esm/base-classes/services/services/resource-operation-custom-implementation-base.backend.service.d.ts +22 -0
  78. package/dist/esm/base-classes/services/services/resource-operation-custom-implementation-base.backend.service.d.ts.map +1 -1
  79. package/dist/esm/base-classes/services/services/resource-operation-custom-implementation-base.backend.service.js.map +1 -1
  80. package/dist/esm/base-classes/services/services/resource-operation-implementation-coverage.backend.utils.d.ts +3 -26
  81. package/dist/esm/base-classes/services/services/resource-operation-implementation-coverage.backend.utils.d.ts.map +1 -1
  82. package/dist/esm/base-classes/services/services/resource-operation-implementation-coverage.backend.utils.js +3 -68
  83. package/dist/esm/base-classes/services/services/resource-operation-implementation-coverage.backend.utils.js.map +1 -1
  84. package/dist/esm/base-classes/services/services/resource-status-transition.custom-impl.backend.service.d.ts.map +1 -1
  85. package/dist/esm/base-classes/services/services/resource-status-transition.custom-impl.backend.service.js +4 -1
  86. package/dist/esm/base-classes/services/services/resource-status-transition.custom-impl.backend.service.js.map +1 -1
  87. package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.d.ts +11 -0
  88. package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.d.ts.map +1 -1
  89. package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.js +39 -5
  90. package/dist/esm/base-classes/services/services/resource-status-transition.definitions.backend.js.map +1 -1
  91. package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.d.ts +181 -2
  92. package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.d.ts.map +1 -1
  93. package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.js +533 -43
  94. package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.js.map +1 -1
  95. package/dist/esm/base-classes/services/services/system-access.backend.service.d.ts +36 -3
  96. package/dist/esm/base-classes/services/services/system-access.backend.service.d.ts.map +1 -1
  97. package/dist/esm/base-classes/services/services/system-access.backend.service.js +70 -8
  98. package/dist/esm/base-classes/services/services/system-access.backend.service.js.map +1 -1
  99. package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.d.ts +28 -0
  100. package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.d.ts.map +1 -0
  101. package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.js +90 -0
  102. package/dist/esm/billing/batches/billing-reconciliation.batch.backend.service.js.map +1 -0
  103. package/dist/esm/billing/batches/usage-flush.batch.backend.service.d.ts +44 -0
  104. package/dist/esm/billing/batches/usage-flush.batch.backend.service.d.ts.map +1 -0
  105. package/dist/esm/billing/batches/usage-flush.batch.backend.service.js +99 -0
  106. package/dist/esm/billing/batches/usage-flush.batch.backend.service.js.map +1 -0
  107. package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.d.ts +91 -0
  108. package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.d.ts.map +1 -0
  109. package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.js +152 -0
  110. package/dist/esm/billing/models/billing-provider-event-settlement.backend.schemas.js.map +1 -0
  111. package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.d.ts +186 -0
  112. package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.d.ts.map +1 -0
  113. package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.js +474 -0
  114. package/dist/esm/billing/services/back-office/billing-reconciliation.backend.service.js.map +1 -0
  115. package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.d.ts +100 -0
  116. package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.d.ts.map +1 -1
  117. package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.js +209 -6
  118. package/dist/esm/billing/services/back-office/product-catalog-sync.backend.service.js.map +1 -1
  119. package/dist/esm/billing/services/back-office/usage-metering.backend.service.d.ts +200 -4
  120. package/dist/esm/billing/services/back-office/usage-metering.backend.service.d.ts.map +1 -1
  121. package/dist/esm/billing/services/back-office/usage-metering.backend.service.js +593 -64
  122. package/dist/esm/billing/services/back-office/usage-metering.backend.service.js.map +1 -1
  123. package/dist/esm/billing/services/billing-adapter-registry.backend.d.ts +36 -0
  124. package/dist/esm/billing/services/billing-adapter-registry.backend.d.ts.map +1 -0
  125. package/dist/esm/billing/services/billing-adapter-registry.backend.js +83 -0
  126. package/dist/esm/billing/services/billing-adapter-registry.backend.js.map +1 -0
  127. package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.d.ts +9 -0
  128. package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.d.ts.map +1 -1
  129. package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.js +11 -1
  130. package/dist/esm/billing/services/billing-checkout-metadata.backend.utils.js.map +1 -1
  131. package/dist/esm/billing/services/custom-impl/billing-account.mutations.custom-impl.backend.service.d.ts.map +1 -1
  132. package/dist/esm/billing/services/custom-impl/billing-account.mutations.custom-impl.backend.service.js +54 -13
  133. package/dist/esm/billing/services/custom-impl/billing-account.mutations.custom-impl.backend.service.js.map +1 -1
  134. package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.d.ts +38 -1
  135. package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.d.ts.map +1 -1
  136. package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.js +67 -2
  137. package/dist/esm/billing/services/custom-impl/billing-custom-impl-utils.backend.js.map +1 -1
  138. package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.d.ts +30 -1
  139. package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.d.ts.map +1 -1
  140. package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.js +43 -1
  141. package/dist/esm/billing/services/custom-impl/billing-custom-implementations.backend.js.map +1 -1
  142. package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.d.ts +11 -3
  143. package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.d.ts.map +1 -1
  144. package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.js +30 -16
  145. package/dist/esm/billing/services/custom-impl/promotion.custom-ops.custom-impl.backend.service.js.map +1 -1
  146. package/dist/esm/billing/services/custom-impl/subscription.mutations.custom-impl.backend.service.d.ts.map +1 -1
  147. package/dist/esm/billing/services/custom-impl/subscription.mutations.custom-impl.backend.service.js +104 -25
  148. package/dist/esm/billing/services/custom-impl/subscription.mutations.custom-impl.backend.service.js.map +1 -1
  149. package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.d.ts +18 -1
  150. package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.d.ts.map +1 -1
  151. package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.js +106 -2
  152. package/dist/esm/billing/services/stripe-standard-billing-provider.backend.service.js.map +1 -1
  153. package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.d.ts +52 -0
  154. package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.d.ts.map +1 -0
  155. package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.js +74 -0
  156. package/dist/esm/billing/services/webhooks/__tests__/settlement-ledger.test-double.js.map +1 -0
  157. package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.d.ts +104 -11
  158. package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.d.ts.map +1 -1
  159. package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.js +260 -26
  160. package/dist/esm/billing/services/webhooks/billing-webhook-event-router.backend.service.js.map +1 -1
  161. package/dist/esm/billing/testing/mock-billing-provider.d.ts +30 -1
  162. package/dist/esm/billing/testing/mock-billing-provider.d.ts.map +1 -1
  163. package/dist/esm/billing/testing/mock-billing-provider.js +25 -0
  164. package/dist/esm/billing/testing/mock-billing-provider.js.map +1 -1
  165. package/dist/esm/compliance/audit-trails/batches/audit-logs-archive.batch.backend.service.js +11 -4
  166. package/dist/esm/compliance/audit-trails/batches/audit-logs-archive.batch.backend.service.js.map +1 -1
  167. package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.d.ts +263 -13
  168. package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.d.ts.map +1 -1
  169. package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.js +376 -58
  170. package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.js.map +1 -1
  171. package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.d.ts +264 -7
  172. package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.d.ts.map +1 -1
  173. package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.js +414 -5
  174. package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.js.map +1 -1
  175. package/dist/esm/compliance/audit-trails/services/composite-audit-log-sink.backend.d.ts.map +1 -1
  176. package/dist/esm/compliance/audit-trails/services/composite-audit-log-sink.backend.js +7 -1
  177. package/dist/esm/compliance/audit-trails/services/composite-audit-log-sink.backend.js.map +1 -1
  178. package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.d.ts +16 -0
  179. package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.d.ts.map +1 -0
  180. package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.js +140 -0
  181. package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.js.map +1 -0
  182. package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.d.ts +42 -0
  183. package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.d.ts.map +1 -1
  184. package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.js +65 -6
  185. package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.js.map +1 -1
  186. package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.d.ts +110 -0
  187. package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.d.ts.map +1 -0
  188. package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.js +192 -0
  189. package/dist/esm/compliance/audit-trails/services/utils/leased-value-cache.backend.utils.js.map +1 -0
  190. package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.d.ts.map +1 -1
  191. package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.js +45 -0
  192. package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.js.map +1 -1
  193. package/dist/esm/config/bootstrap/application-runtime-profile.backend.d.ts +5 -0
  194. package/dist/esm/config/bootstrap/application-runtime-profile.backend.d.ts.map +1 -1
  195. package/dist/esm/config/bootstrap/application-runtime-profile.backend.js +6 -0
  196. package/dist/esm/config/bootstrap/application-runtime-profile.backend.js.map +1 -1
  197. package/dist/esm/config/custom/application-config-controller.backend.service.d.ts.map +1 -1
  198. package/dist/esm/config/custom/application-config-controller.backend.service.js +7 -1
  199. package/dist/esm/config/custom/application-config-controller.backend.service.js.map +1 -1
  200. package/dist/esm/config/models/app-config.backend.schemas.d.ts +146 -46
  201. package/dist/esm/config/models/app-config.backend.schemas.d.ts.map +1 -1
  202. package/dist/esm/config/models/app-config.backend.schemas.js +121 -12
  203. package/dist/esm/config/models/app-config.backend.schemas.js.map +1 -1
  204. package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.d.ts +38 -15
  205. package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.d.ts.map +1 -1
  206. package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.js +17 -2
  207. package/dist/esm/config/models/provider-runtime-artifact.backend.schemas.js.map +1 -1
  208. package/dist/esm/config/services/app-configuration-loader.backend.service.d.ts +0 -1
  209. package/dist/esm/config/services/app-configuration-loader.backend.service.d.ts.map +1 -1
  210. package/dist/esm/config/services/app-configuration-loader.backend.service.js +68 -76
  211. package/dist/esm/config/services/app-configuration-loader.backend.service.js.map +1 -1
  212. package/dist/esm/config/services/app-configuration.backend.service.d.ts.map +1 -1
  213. package/dist/esm/config/services/app-configuration.backend.service.js +23 -1
  214. package/dist/esm/config/services/app-configuration.backend.service.js.map +1 -1
  215. package/dist/esm/config/services/app-configuration.backend.utils.d.ts +43 -1
  216. package/dist/esm/config/services/app-configuration.backend.utils.d.ts.map +1 -1
  217. package/dist/esm/config/services/app-configuration.backend.utils.js +52 -3
  218. package/dist/esm/config/services/app-configuration.backend.utils.js.map +1 -1
  219. package/dist/esm/config/services/application-startup-config-validator.backend.service.d.ts +25 -0
  220. package/dist/esm/config/services/application-startup-config-validator.backend.service.d.ts.map +1 -1
  221. package/dist/esm/config/services/application-startup-config-validator.backend.service.js +41 -1
  222. package/dist/esm/config/services/application-startup-config-validator.backend.service.js.map +1 -1
  223. package/dist/esm/data-seeding/services/shared/data-seed-scope-iteration.shared.utils.d.ts +2 -2
  224. package/dist/esm/data-seeding/services/shared/data-seed-scope-iteration.shared.utils.js +2 -2
  225. package/dist/esm/data-seeding/services/shared/data-seed-scope-iteration.shared.utils.js.map +1 -1
  226. package/dist/esm/databases/models/filter.backend.schemas.js +2 -2
  227. package/dist/esm/databases/models/filter.backend.schemas.js.map +1 -1
  228. package/dist/esm/databases/services/aggregation/aggregation-authorization.backend.service.d.ts.map +1 -1
  229. package/dist/esm/databases/services/aggregation/aggregation-authorization.backend.service.js +20 -1
  230. package/dist/esm/databases/services/aggregation/aggregation-authorization.backend.service.js.map +1 -1
  231. package/dist/esm/databases/services/postgresql-schema-plan-diff.backend.d.ts.map +1 -1
  232. package/dist/esm/databases/services/postgresql-schema-plan-diff.backend.js +48 -0
  233. package/dist/esm/databases/services/postgresql-schema-plan-diff.backend.js.map +1 -1
  234. package/dist/esm/databases/services/redis.service.d.ts +27 -0
  235. package/dist/esm/databases/services/redis.service.d.ts.map +1 -1
  236. package/dist/esm/databases/services/redis.service.js +29 -0
  237. package/dist/esm/databases/services/redis.service.js.map +1 -1
  238. package/dist/esm/errors/services/error-builder.backend.service.d.ts +13 -1
  239. package/dist/esm/errors/services/error-builder.backend.service.d.ts.map +1 -1
  240. package/dist/esm/errors/services/error-builder.backend.service.js +13 -1
  241. package/dist/esm/errors/services/error-builder.backend.service.js.map +1 -1
  242. package/dist/esm/errors/services/error-handler.backend.service.d.ts +70 -7
  243. package/dist/esm/errors/services/error-handler.backend.service.d.ts.map +1 -1
  244. package/dist/esm/errors/services/error-handler.backend.service.js +134 -8
  245. package/dist/esm/errors/services/error-handler.backend.service.js.map +1 -1
  246. package/dist/esm/errors/services/rate-limit.backend.service.d.ts +66 -0
  247. package/dist/esm/errors/services/rate-limit.backend.service.d.ts.map +1 -1
  248. package/dist/esm/errors/services/rate-limit.backend.service.js +102 -25
  249. package/dist/esm/errors/services/rate-limit.backend.service.js.map +1 -1
  250. package/dist/esm/errors/utils/error-log-level-classification.backend.utils.d.ts +5 -0
  251. package/dist/esm/errors/utils/error-log-level-classification.backend.utils.d.ts.map +1 -1
  252. package/dist/esm/errors/utils/error-log-level-classification.backend.utils.js +25 -0
  253. package/dist/esm/errors/utils/error-log-level-classification.backend.utils.js.map +1 -1
  254. package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.d.ts +33 -0
  255. package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.d.ts.map +1 -1
  256. package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.js +40 -0
  257. package/dist/esm/errors/utils/rate-limit-environment-relaxation.backend.utils.js.map +1 -1
  258. package/dist/esm/external-data/controllers/external-data-admin.backend.contracts.d.ts +41 -0
  259. package/dist/esm/external-data/controllers/external-data-admin.backend.contracts.d.ts.map +1 -0
  260. package/dist/esm/external-data/controllers/external-data-admin.backend.contracts.js +40 -0
  261. package/dist/esm/external-data/controllers/external-data-admin.backend.contracts.js.map +1 -0
  262. package/dist/esm/external-data/controllers/external-data-admin.backend.controller.d.ts +64 -0
  263. package/dist/esm/external-data/controllers/external-data-admin.backend.controller.d.ts.map +1 -0
  264. package/dist/esm/external-data/controllers/external-data-admin.backend.controller.js +193 -0
  265. package/dist/esm/external-data/controllers/external-data-admin.backend.controller.js.map +1 -0
  266. package/dist/esm/external-data/external-data-pipeline-run.backend.service.d.ts +72 -4
  267. package/dist/esm/external-data/external-data-pipeline-run.backend.service.d.ts.map +1 -1
  268. package/dist/esm/external-data/external-data-pipeline-run.backend.service.js +60 -19
  269. package/dist/esm/external-data/external-data-pipeline-run.backend.service.js.map +1 -1
  270. package/dist/esm/external-data/external-data-transform.backend.d.ts.map +1 -1
  271. package/dist/esm/external-data/external-data-transform.backend.js +7 -1
  272. package/dist/esm/external-data/external-data-transform.backend.js.map +1 -1
  273. package/dist/esm/external-data/models/external-data-pipeline-state.backend.schemas.d.ts +2 -0
  274. package/dist/esm/external-data/models/external-data-pipeline-state.backend.schemas.d.ts.map +1 -1
  275. package/dist/esm/external-data/models/external-data-pipeline-state.backend.schemas.js +13 -0
  276. package/dist/esm/external-data/models/external-data-pipeline-state.backend.schemas.js.map +1 -1
  277. package/dist/esm/external-providers/models/provider-selection-resolution-evidence.backend.definitions.d.ts +4 -2
  278. package/dist/esm/external-providers/models/provider-selection-resolution-evidence.backend.definitions.d.ts.map +1 -1
  279. package/dist/esm/external-providers/models/provider-selection-resolution-evidence.backend.definitions.js.map +1 -1
  280. package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.d.ts +256 -0
  281. package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.d.ts.map +1 -0
  282. package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.js +333 -0
  283. package/dist/esm/external-providers/operations/provider-operation-executor.backend.service.js.map +1 -0
  284. package/dist/esm/external-providers/operations/provider-operation-request.backend.d.ts +56 -0
  285. package/dist/esm/external-providers/operations/provider-operation-request.backend.d.ts.map +1 -0
  286. package/dist/esm/external-providers/operations/provider-operation-request.backend.js +211 -0
  287. package/dist/esm/external-providers/operations/provider-operation-request.backend.js.map +1 -0
  288. package/dist/esm/external-providers/operations/provider-request-signing.backend.d.ts +45 -0
  289. package/dist/esm/external-providers/operations/provider-request-signing.backend.d.ts.map +1 -0
  290. package/dist/esm/external-providers/operations/provider-request-signing.backend.js +216 -0
  291. package/dist/esm/external-providers/operations/provider-request-signing.backend.js.map +1 -0
  292. package/dist/esm/external-providers/operations/provider-rest-call-client.backend.d.ts +56 -0
  293. package/dist/esm/external-providers/operations/provider-rest-call-client.backend.d.ts.map +1 -0
  294. package/dist/esm/external-providers/operations/provider-rest-call-client.backend.js +78 -0
  295. package/dist/esm/external-providers/operations/provider-rest-call-client.backend.js.map +1 -0
  296. package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.d.ts +1 -1
  297. package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.d.ts.map +1 -1
  298. package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.js +2 -2
  299. package/dist/esm/external-providers/services/__tests__/mock-external-providers-registry.service.js.map +1 -1
  300. package/dist/esm/external-providers/services/backend-provider-loader.backend.service.d.ts +89 -0
  301. package/dist/esm/external-providers/services/backend-provider-loader.backend.service.d.ts.map +1 -0
  302. package/dist/esm/external-providers/services/backend-provider-loader.backend.service.js +164 -0
  303. package/dist/esm/external-providers/services/backend-provider-loader.backend.service.js.map +1 -0
  304. package/dist/esm/external-providers/services/backend-provider-registry.backend.service.d.ts +26 -27
  305. package/dist/esm/external-providers/services/backend-provider-registry.backend.service.d.ts.map +1 -1
  306. package/dist/esm/external-providers/services/backend-provider-registry.backend.service.js +50 -64
  307. package/dist/esm/external-providers/services/backend-provider-registry.backend.service.js.map +1 -1
  308. package/dist/esm/external-providers/services/document-extraction.backend.service.d.ts.map +1 -1
  309. package/dist/esm/external-providers/services/document-extraction.backend.service.js +3 -3
  310. package/dist/esm/external-providers/services/document-extraction.backend.service.js.map +1 -1
  311. package/dist/esm/external-providers/services/embeddings.backend.service.d.ts.map +1 -1
  312. package/dist/esm/external-providers/services/embeddings.backend.service.js +4 -4
  313. package/dist/esm/external-providers/services/embeddings.backend.service.js.map +1 -1
  314. package/dist/esm/external-providers/services/external-providers-registry.backend.service.d.ts +306 -7
  315. package/dist/esm/external-providers/services/external-providers-registry.backend.service.d.ts.map +1 -1
  316. package/dist/esm/external-providers/services/external-providers-registry.backend.service.js +539 -45
  317. package/dist/esm/external-providers/services/external-providers-registry.backend.service.js.map +1 -1
  318. package/dist/esm/external-providers/services/frontend-bootstrap.backend.service.d.ts.map +1 -1
  319. package/dist/esm/external-providers/services/frontend-bootstrap.backend.service.js +25 -2
  320. package/dist/esm/external-providers/services/frontend-bootstrap.backend.service.js.map +1 -1
  321. package/dist/esm/files/controllers/file.controller.d.ts +24 -1
  322. package/dist/esm/files/controllers/file.controller.d.ts.map +1 -1
  323. package/dist/esm/files/controllers/file.controller.js +83 -11
  324. package/dist/esm/files/controllers/file.controller.js.map +1 -1
  325. package/dist/esm/files/handlers/file-upload-route-locals.backend.types.d.ts +17 -0
  326. package/dist/esm/files/handlers/file-upload-route-locals.backend.types.d.ts.map +1 -0
  327. package/dist/esm/files/handlers/file-upload-route-locals.backend.types.js +1 -0
  328. package/dist/esm/files/handlers/file-upload-route-locals.backend.types.js.map +1 -0
  329. package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.d.ts +5 -1
  330. package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.d.ts.map +1 -1
  331. package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.js +76 -13
  332. package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.js.map +1 -1
  333. package/dist/esm/files/services/file-operation-handler.backend.service.d.ts +18 -0
  334. package/dist/esm/files/services/file-operation-handler.backend.service.d.ts.map +1 -1
  335. package/dist/esm/files/services/file-operation-handler.backend.service.js +36 -28
  336. package/dist/esm/files/services/file-operation-handler.backend.service.js.map +1 -1
  337. package/dist/esm/files/services/file-scanning.backend.service.d.ts +94 -9
  338. package/dist/esm/files/services/file-scanning.backend.service.d.ts.map +1 -1
  339. package/dist/esm/files/services/file-scanning.backend.service.js +197 -17
  340. package/dist/esm/files/services/file-scanning.backend.service.js.map +1 -1
  341. package/dist/esm/files/services/file-text-extraction.backend.service.d.ts +60 -1
  342. package/dist/esm/files/services/file-text-extraction.backend.service.d.ts.map +1 -1
  343. package/dist/esm/files/services/file-text-extraction.backend.service.js +167 -8
  344. package/dist/esm/files/services/file-text-extraction.backend.service.js.map +1 -1
  345. package/dist/esm/files/services/file-upload-grant.backend.service.d.ts +214 -0
  346. package/dist/esm/files/services/file-upload-grant.backend.service.d.ts.map +1 -0
  347. package/dist/esm/files/services/file-upload-grant.backend.service.js +566 -0
  348. package/dist/esm/files/services/file-upload-grant.backend.service.js.map +1 -0
  349. package/dist/esm/files/services/files.backend.service.d.ts +87 -0
  350. package/dist/esm/files/services/files.backend.service.d.ts.map +1 -1
  351. package/dist/esm/files/services/files.backend.service.js +252 -19
  352. package/dist/esm/files/services/files.backend.service.js.map +1 -1
  353. package/dist/esm/files/storage/application-storage-key.backend.utils.d.ts +109 -0
  354. package/dist/esm/files/storage/application-storage-key.backend.utils.d.ts.map +1 -0
  355. package/dist/esm/files/storage/application-storage-key.backend.utils.js +123 -0
  356. package/dist/esm/files/storage/application-storage-key.backend.utils.js.map +1 -0
  357. package/dist/esm/files/storage/file-storage-provider.types.d.ts +16 -10
  358. package/dist/esm/files/storage/file-storage-provider.types.d.ts.map +1 -1
  359. package/dist/esm/files/storage/file-storage-provider.types.js.map +1 -1
  360. package/dist/esm/files/storage/local-directory-storage-provider.backend.service.d.ts +67 -8
  361. package/dist/esm/files/storage/local-directory-storage-provider.backend.service.d.ts.map +1 -1
  362. package/dist/esm/files/storage/local-directory-storage-provider.backend.service.js +101 -28
  363. package/dist/esm/files/storage/local-directory-storage-provider.backend.service.js.map +1 -1
  364. package/dist/esm/files/storage/wildo-managed-storage-provider.backend.service.d.ts.map +1 -1
  365. package/dist/esm/files/storage/wildo-managed-storage-provider.backend.service.js +8 -55
  366. package/dist/esm/files/storage/wildo-managed-storage-provider.backend.service.js.map +1 -1
  367. package/dist/esm/files/utils/file-field-schema-path.backend.utils.d.ts.map +1 -1
  368. package/dist/esm/files/utils/file-field-schema-path.backend.utils.js +20 -0
  369. package/dist/esm/files/utils/file-field-schema-path.backend.utils.js.map +1 -1
  370. package/dist/esm/files/utils/file-uploader.utils.d.ts.map +1 -1
  371. package/dist/esm/files/utils/file-uploader.utils.js +12 -0
  372. package/dist/esm/files/utils/file-uploader.utils.js.map +1 -1
  373. package/dist/esm/files/utils/office-document-text-extraction.backend.utils.d.ts +86 -0
  374. package/dist/esm/files/utils/office-document-text-extraction.backend.utils.d.ts.map +1 -0
  375. package/dist/esm/files/utils/office-document-text-extraction.backend.utils.js +288 -0
  376. package/dist/esm/files/utils/office-document-text-extraction.backend.utils.js.map +1 -0
  377. package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.d.ts +15 -0
  378. package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.d.ts.map +1 -1
  379. package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.js +76 -5
  380. package/dist/esm/flows-actors/a2a/batches/a2a-abandoned-task-sweep.batch.backend.service.js.map +1 -1
  381. package/dist/esm/flows-actors/a2a/controllers/a2a.controller.d.ts.map +1 -1
  382. package/dist/esm/flows-actors/a2a/controllers/a2a.controller.js +6 -1
  383. package/dist/esm/flows-actors/a2a/controllers/a2a.controller.js.map +1 -1
  384. package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.d.ts +60 -0
  385. package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.d.ts.map +1 -1
  386. package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.js +63 -0
  387. package/dist/esm/flows-actors/a2a/models/a2a.backend.schemas.js.map +1 -1
  388. package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.d.ts +74 -0
  389. package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.d.ts.map +1 -1
  390. package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.js +200 -44
  391. package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.js.map +1 -1
  392. package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.d.ts +7 -1
  393. package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.d.ts.map +1 -1
  394. package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.js +53 -1
  395. package/dist/esm/flows-actors/a2a/services/a2a-task.backend.service.js.map +1 -1
  396. package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.d.ts +18 -0
  397. package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.d.ts.map +1 -1
  398. package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.js +18 -0
  399. package/dist/esm/flows-actors/a2a/services/a2a-token-budget.backend.service.js.map +1 -1
  400. package/dist/esm/flows-actors/a2a/services/a2a.backend.service.d.ts +12 -7
  401. package/dist/esm/flows-actors/a2a/services/a2a.backend.service.d.ts.map +1 -1
  402. package/dist/esm/flows-actors/a2a/services/a2a.backend.service.js.map +1 -1
  403. package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.d.ts +0 -13
  404. package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.d.ts.map +1 -1
  405. package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.js +14 -22
  406. package/dist/esm/flows-actors/models/agent-catalogs.backend.definitions.js.map +1 -1
  407. package/dist/esm/flows-actors/models/core-facets.backend.definitions.d.ts +8 -3
  408. package/dist/esm/flows-actors/models/core-facets.backend.definitions.d.ts.map +1 -1
  409. package/dist/esm/flows-actors/models/core-facets.backend.definitions.js +25 -15
  410. package/dist/esm/flows-actors/models/core-facets.backend.definitions.js.map +1 -1
  411. package/dist/esm/flows-actors/models/flows-actors.backend.schemas.d.ts +13 -1
  412. package/dist/esm/flows-actors/models/flows-actors.backend.schemas.d.ts.map +1 -1
  413. package/dist/esm/flows-actors/models/flows-actors.backend.schemas.js.map +1 -1
  414. package/dist/esm/flows-actors/models/function-tools.backend.definitions.d.ts +88 -8
  415. package/dist/esm/flows-actors/models/function-tools.backend.definitions.d.ts.map +1 -1
  416. package/dist/esm/flows-actors/models/function-tools.backend.definitions.js +333 -31
  417. package/dist/esm/flows-actors/models/function-tools.backend.definitions.js.map +1 -1
  418. package/dist/esm/flows-actors/models/market-generation.actors-system.backend.definitions.d.ts.map +1 -1
  419. package/dist/esm/flows-actors/models/market-generation.actors-system.backend.definitions.js +4 -2
  420. package/dist/esm/flows-actors/models/market-generation.actors-system.backend.definitions.js.map +1 -1
  421. package/dist/esm/flows-actors/models/mcp-client.backend.definitions.d.ts +113 -0
  422. package/dist/esm/flows-actors/models/mcp-client.backend.definitions.d.ts.map +1 -0
  423. package/dist/esm/flows-actors/models/mcp-client.backend.definitions.js +62 -0
  424. package/dist/esm/flows-actors/models/mcp-client.backend.definitions.js.map +1 -0
  425. package/dist/esm/flows-actors/services/actors-system.backend.service.d.ts.map +1 -1
  426. package/dist/esm/flows-actors/services/actors-system.backend.service.js +0 -2
  427. package/dist/esm/flows-actors/services/actors-system.backend.service.js.map +1 -1
  428. package/dist/esm/flows-actors/services/agents.backend.service.d.ts +107 -1
  429. package/dist/esm/flows-actors/services/agents.backend.service.d.ts.map +1 -1
  430. package/dist/esm/flows-actors/services/agents.backend.service.js +519 -56
  431. package/dist/esm/flows-actors/services/agents.backend.service.js.map +1 -1
  432. package/dist/esm/flows-actors/services/conversational-execution.backend.service.d.ts +5 -1
  433. package/dist/esm/flows-actors/services/conversational-execution.backend.service.d.ts.map +1 -1
  434. package/dist/esm/flows-actors/services/conversational-execution.backend.service.js +79 -16
  435. package/dist/esm/flows-actors/services/conversational-execution.backend.service.js.map +1 -1
  436. package/dist/esm/flows-actors/services/flows-actors-registry.service.d.ts +34 -5
  437. package/dist/esm/flows-actors/services/flows-actors-registry.service.d.ts.map +1 -1
  438. package/dist/esm/flows-actors/services/flows-actors-registry.service.js +154 -20
  439. package/dist/esm/flows-actors/services/flows-actors-registry.service.js.map +1 -1
  440. package/dist/esm/flows-actors/services/flows.backend.services.d.ts.map +1 -1
  441. package/dist/esm/flows-actors/services/flows.backend.services.js +27 -23
  442. package/dist/esm/flows-actors/services/flows.backend.services.js.map +1 -1
  443. package/dist/esm/flows-actors/services/llm-observability-agent-call-trace-sink.backend.d.ts.map +1 -1
  444. package/dist/esm/flows-actors/services/llm-observability-agent-call-trace-sink.backend.js +7 -1
  445. package/dist/esm/flows-actors/services/llm-observability-agent-call-trace-sink.backend.js.map +1 -1
  446. package/dist/esm/flows-actors/services/mcp-client.backend.service.d.ts +90 -0
  447. package/dist/esm/flows-actors/services/mcp-client.backend.service.d.ts.map +1 -0
  448. package/dist/esm/flows-actors/services/mcp-client.backend.service.js +368 -0
  449. package/dist/esm/flows-actors/services/mcp-client.backend.service.js.map +1 -0
  450. package/dist/esm/flows-actors/services/prompt-compiler.backend.service.d.ts +9 -5
  451. package/dist/esm/flows-actors/services/prompt-compiler.backend.service.d.ts.map +1 -1
  452. package/dist/esm/flows-actors/services/prompt-compiler.backend.service.js +12 -17
  453. package/dist/esm/flows-actors/services/prompt-compiler.backend.service.js.map +1 -1
  454. package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.d.ts +151 -41
  455. package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.d.ts.map +1 -1
  456. package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.js +308 -143
  457. package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.js.map +1 -1
  458. package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.d.ts +0 -207
  459. package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.d.ts.map +1 -1
  460. package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.js +8 -243
  461. package/dist/esm/flows-actors/utils/meta-workflow-canonical-json.backend.utils.js.map +1 -1
  462. package/dist/esm/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.d.ts.map +1 -1
  463. package/dist/esm/flows-actors/utils/meta-workflow-structured-generation-plan.backend.utils.js.map +1 -1
  464. package/dist/esm/guidance/services/milestone-evaluator.backend.service.d.ts +9 -14
  465. package/dist/esm/guidance/services/milestone-evaluator.backend.service.d.ts.map +1 -1
  466. package/dist/esm/guidance/services/milestone-evaluator.backend.service.js +18 -89
  467. package/dist/esm/guidance/services/milestone-evaluator.backend.service.js.map +1 -1
  468. package/dist/esm/guidance/services/progression-state-store.backend.service.d.ts +86 -0
  469. package/dist/esm/guidance/services/progression-state-store.backend.service.d.ts.map +1 -0
  470. package/dist/esm/guidance/services/progression-state-store.backend.service.js +155 -0
  471. package/dist/esm/guidance/services/progression-state-store.backend.service.js.map +1 -0
  472. package/dist/esm/i18n/controllers/i18n-controller.backend.service.d.ts +10 -0
  473. package/dist/esm/i18n/controllers/i18n-controller.backend.service.d.ts.map +1 -1
  474. package/dist/esm/i18n/controllers/i18n-controller.backend.service.js +55 -5
  475. package/dist/esm/i18n/controllers/i18n-controller.backend.service.js.map +1 -1
  476. package/dist/esm/index.d.ts +15 -5
  477. package/dist/esm/index.d.ts.map +1 -1
  478. package/dist/esm/index.js +45 -5
  479. package/dist/esm/index.js.map +1 -1
  480. package/dist/esm/inject/models/container.d.ts.map +1 -1
  481. package/dist/esm/inject/models/container.js +82 -10
  482. package/dist/esm/inject/models/container.js.map +1 -1
  483. package/dist/esm/inject/models/service-types.d.ts +20 -3
  484. package/dist/esm/inject/models/service-types.d.ts.map +1 -1
  485. package/dist/esm/inject/models/service-types.js +21 -3
  486. package/dist/esm/inject/models/service-types.js.map +1 -1
  487. package/dist/esm/mcp/controllers/mcp.controller.d.ts.map +1 -1
  488. package/dist/esm/mcp/controllers/mcp.controller.js +32 -4
  489. package/dist/esm/mcp/controllers/mcp.controller.js.map +1 -1
  490. package/dist/esm/mcp/models/mcp-tool.backend.schemas.d.ts +34 -0
  491. package/dist/esm/mcp/models/mcp-tool.backend.schemas.d.ts.map +1 -1
  492. package/dist/esm/mcp/models/mcp-tool.backend.schemas.js +42 -0
  493. package/dist/esm/mcp/models/mcp-tool.backend.schemas.js.map +1 -1
  494. package/dist/esm/mcp/services/mcp-server.backend.service.d.ts +84 -1
  495. package/dist/esm/mcp/services/mcp-server.backend.service.d.ts.map +1 -1
  496. package/dist/esm/mcp/services/mcp-server.backend.service.js +235 -11
  497. package/dist/esm/mcp/services/mcp-server.backend.service.js.map +1 -1
  498. package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.d.ts +64 -2
  499. package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.d.ts.map +1 -1
  500. package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.js +152 -6
  501. package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.js.map +1 -1
  502. package/dist/esm/monitoring/analytics/controllers/analytics.backend.controller.d.ts.map +1 -1
  503. package/dist/esm/monitoring/analytics/controllers/analytics.backend.controller.js +49 -4
  504. package/dist/esm/monitoring/analytics/controllers/analytics.backend.controller.js.map +1 -1
  505. package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.d.ts +66 -0
  506. package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.d.ts.map +1 -0
  507. package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.js +199 -0
  508. package/dist/esm/monitoring/analytics/services/value-moment-definition-registry.backend.service.js.map +1 -0
  509. package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.d.ts +149 -13
  510. package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.d.ts.map +1 -1
  511. package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.js +411 -19
  512. package/dist/esm/monitoring/analytics/services/value-moment-engine.backend.service.js.map +1 -1
  513. package/dist/esm/monitoring/analytics/services/value-moment-handler-registry.backend.service.d.ts +11 -2
  514. package/dist/esm/monitoring/analytics/services/value-moment-handler-registry.backend.service.d.ts.map +1 -1
  515. package/dist/esm/monitoring/analytics/services/value-moment-handler-registry.backend.service.js.map +1 -1
  516. package/dist/esm/monitoring/logger/models/logger.backend.schemas.d.ts +28 -9
  517. package/dist/esm/monitoring/logger/models/logger.backend.schemas.d.ts.map +1 -1
  518. package/dist/esm/monitoring/logger/models/logger.backend.schemas.js +30 -10
  519. package/dist/esm/monitoring/logger/models/logger.backend.schemas.js.map +1 -1
  520. package/dist/esm/monitoring/logger/services/logger.service.d.ts +12 -0
  521. package/dist/esm/monitoring/logger/services/logger.service.d.ts.map +1 -1
  522. package/dist/esm/monitoring/logger/services/logger.service.js +52 -11
  523. package/dist/esm/monitoring/logger/services/logger.service.js.map +1 -1
  524. package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.d.ts +62 -0
  525. package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.d.ts.map +1 -0
  526. package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.js +78 -0
  527. package/dist/esm/monitoring/logger/utils/log-severity-floor.backend.utils.js.map +1 -0
  528. package/dist/esm/monitoring/observability/audit-observation-emission.backend.d.ts +309 -0
  529. package/dist/esm/monitoring/observability/audit-observation-emission.backend.d.ts.map +1 -0
  530. package/dist/esm/monitoring/observability/audit-observation-emission.backend.js +385 -0
  531. package/dist/esm/monitoring/observability/audit-observation-emission.backend.js.map +1 -0
  532. package/dist/esm/monitoring/observability/models/observability.backend.schemas.d.ts +1 -0
  533. package/dist/esm/monitoring/observability/models/observability.backend.schemas.d.ts.map +1 -1
  534. package/dist/esm/monitoring/observability/models/observability.backend.schemas.js.map +1 -1
  535. package/dist/esm/monitoring/observability/services/metrics.service.d.ts +21 -0
  536. package/dist/esm/monitoring/observability/services/metrics.service.d.ts.map +1 -1
  537. package/dist/esm/monitoring/observability/services/metrics.service.js +38 -0
  538. package/dist/esm/monitoring/observability/services/metrics.service.js.map +1 -1
  539. package/dist/esm/notifications/email/models/email-context-provider.interface.d.ts +0 -80
  540. package/dist/esm/notifications/email/models/email-context-provider.interface.d.ts.map +0 -1
  541. package/dist/esm/notifications/email/models/email-context-provider.interface.js +0 -25
  542. package/dist/esm/notifications/email/models/email-context-provider.interface.js.map +0 -1
  543. package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.d.ts +0 -49
  544. package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.d.ts.map +0 -1
  545. package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.js +0 -141
  546. package/dist/esm/notifications/email/services/email-context-provider-registry.backend.service.js.map +0 -1
  547. package/dist/esm/notifications/email/services/email-template-compiler.backend.service.d.ts +0 -37
  548. package/dist/esm/notifications/email/services/email-template-compiler.backend.service.d.ts.map +0 -1
  549. package/dist/esm/notifications/email/services/email-template-compiler.backend.service.js +0 -121
  550. package/dist/esm/notifications/email/services/email-template-compiler.backend.service.js.map +0 -1
  551. package/dist/esm/notifications/email/services/email-template-registry.backend.service.d.ts +66 -1
  552. package/dist/esm/notifications/email/services/email-template-registry.backend.service.d.ts.map +1 -1
  553. package/dist/esm/notifications/email/services/email-template-registry.backend.service.js +105 -10
  554. package/dist/esm/notifications/email/services/email-template-registry.backend.service.js.map +1 -1
  555. package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.d.ts +0 -58
  556. package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.d.ts.map +0 -1
  557. package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.js +0 -223
  558. package/dist/esm/notifications/email/services/email-template-sandbox.backend.service.js.map +0 -1
  559. package/dist/esm/notifications/email/services/email-template-validator.backend.service.d.ts.map +1 -1
  560. package/dist/esm/notifications/email/services/email-template-validator.backend.service.js +10 -1
  561. package/dist/esm/notifications/email/services/email-template-validator.backend.service.js.map +1 -1
  562. package/dist/esm/notifications/email/services/email.backend.service.d.ts +60 -4
  563. package/dist/esm/notifications/email/services/email.backend.service.d.ts.map +1 -1
  564. package/dist/esm/notifications/email/services/email.backend.service.js +145 -43
  565. package/dist/esm/notifications/email/services/email.backend.service.js.map +1 -1
  566. package/dist/esm/notifications/email/utils/color-conversion.utils.d.ts +0 -1
  567. package/dist/esm/notifications/email/utils/color-conversion.utils.d.ts.map +1 -1
  568. package/dist/esm/notifications/email/utils/color-conversion.utils.js.map +1 -1
  569. package/dist/esm/notifications/services/notification-badge.backend.service.d.ts +142 -21
  570. package/dist/esm/notifications/services/notification-badge.backend.service.d.ts.map +1 -1
  571. package/dist/esm/notifications/services/notification-badge.backend.service.js +283 -58
  572. package/dist/esm/notifications/services/notification-badge.backend.service.js.map +1 -1
  573. package/dist/esm/notifications/services/notifications-dispatcher.backend.service.d.ts +108 -13
  574. package/dist/esm/notifications/services/notifications-dispatcher.backend.service.d.ts.map +1 -1
  575. package/dist/esm/notifications/services/notifications-dispatcher.backend.service.js +432 -101
  576. package/dist/esm/notifications/services/notifications-dispatcher.backend.service.js.map +1 -1
  577. package/dist/esm/notifications/sms/services/sms.backend.service.d.ts +2 -2
  578. package/dist/esm/notifications/sms/services/sms.backend.service.d.ts.map +1 -1
  579. package/dist/esm/notifications/sms/services/sms.backend.service.js +5 -5
  580. package/dist/esm/notifications/sms/services/sms.backend.service.js.map +1 -1
  581. package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.d.ts +117 -5
  582. package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.d.ts.map +1 -1
  583. package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.js +164 -6
  584. package/dist/esm/notifications/webhooks/controllers/webhook-auto-controller.backend.service.js.map +1 -1
  585. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.d.ts +0 -6
  586. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.d.ts.map +1 -1
  587. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.js +54 -7
  588. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.js.map +1 -1
  589. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.utils.d.ts +5 -5
  590. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.utils.d.ts.map +1 -1
  591. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.utils.js +14 -13
  592. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.utils.js.map +1 -1
  593. package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.d.ts +2 -1
  594. package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.d.ts.map +1 -1
  595. package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.js +18 -8
  596. package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.js.map +1 -1
  597. package/dist/esm/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service.d.ts.map +1 -1
  598. package/dist/esm/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service.js +20 -18
  599. package/dist/esm/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service.js.map +1 -1
  600. package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.d.ts +16 -0
  601. package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.d.ts.map +1 -1
  602. package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.js +18 -0
  603. package/dist/esm/notifications/webhooks/services/webhook-handler.backend.service.js.map +1 -1
  604. package/dist/esm/organizations/batches/organization-purge.batch.backend.service.d.ts +2 -2
  605. package/dist/esm/organizations/batches/organization-purge.batch.backend.service.js +2 -2
  606. package/dist/esm/organizations/batches/organization-purge.batch.backend.service.js.map +1 -1
  607. package/dist/esm/organizations/services/organization-custom-implementation.backend.service.d.ts.map +1 -1
  608. package/dist/esm/organizations/services/organization-custom-implementation.backend.service.js +63 -2
  609. package/dist/esm/organizations/services/organization-custom-implementation.backend.service.js.map +1 -1
  610. package/dist/esm/organizations/services/organization-unit-custom-implementation.backend.service.d.ts.map +1 -1
  611. package/dist/esm/organizations/services/organization-unit-custom-implementation.backend.service.js +4 -1
  612. package/dist/esm/organizations/services/organization-unit-custom-implementation.backend.service.js.map +1 -1
  613. package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.d.ts +66 -0
  614. package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.d.ts.map +1 -0
  615. package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.js +257 -0
  616. package/dist/esm/queue/adapters/in-memory-queue-adapter.backend.service.js.map +1 -0
  617. package/dist/esm/queue/adapters/queue-adapter.backend.binding.d.ts +12 -0
  618. package/dist/esm/queue/adapters/queue-adapter.backend.binding.d.ts.map +1 -0
  619. package/dist/esm/queue/adapters/queue-adapter.backend.binding.js +47 -0
  620. package/dist/esm/queue/adapters/queue-adapter.backend.binding.js.map +1 -0
  621. package/dist/esm/queue/adapters/queue-adapter.backend.interface.d.ts +87 -0
  622. package/dist/esm/queue/adapters/queue-adapter.backend.interface.d.ts.map +1 -0
  623. package/dist/esm/queue/adapters/queue-adapter.backend.interface.js +1 -0
  624. package/dist/esm/queue/adapters/queue-adapter.backend.interface.js.map +1 -0
  625. package/dist/esm/queue/adapters/queue-adapter.backend.options.d.ts +31 -0
  626. package/dist/esm/queue/adapters/queue-adapter.backend.options.d.ts.map +1 -0
  627. package/dist/esm/queue/adapters/queue-adapter.backend.options.js +13 -0
  628. package/dist/esm/queue/adapters/queue-adapter.backend.options.js.map +1 -0
  629. package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.d.ts +19 -25
  630. package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.d.ts.map +1 -1
  631. package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.js +33 -0
  632. package/dist/esm/queue/adapters/rabbitmq-adapter.backend.service.js.map +1 -1
  633. package/dist/esm/queue/domain-queue-consumer.backend.service.d.ts +2 -2
  634. package/dist/esm/queue/domain-queue-consumer.backend.service.d.ts.map +1 -1
  635. package/dist/esm/queue/domain-queue-consumer.backend.service.js +1 -4
  636. package/dist/esm/queue/domain-queue-consumer.backend.service.js.map +1 -1
  637. package/dist/esm/queue/job-consumer.backend.service.d.ts +2 -2
  638. package/dist/esm/queue/job-consumer.backend.service.d.ts.map +1 -1
  639. package/dist/esm/queue/job-consumer.backend.service.js +1 -4
  640. package/dist/esm/queue/job-consumer.backend.service.js.map +1 -1
  641. package/dist/esm/queue/job-executor.backend.service.d.ts +2 -2
  642. package/dist/esm/queue/job-executor.backend.service.d.ts.map +1 -1
  643. package/dist/esm/queue/job-executor.backend.service.js +1 -4
  644. package/dist/esm/queue/job-executor.backend.service.js.map +1 -1
  645. package/dist/esm/queue/queue-monitoring.backend.service.d.ts +8 -4
  646. package/dist/esm/queue/queue-monitoring.backend.service.d.ts.map +1 -1
  647. package/dist/esm/queue/queue-monitoring.backend.service.js +25 -17
  648. package/dist/esm/queue/queue-monitoring.backend.service.js.map +1 -1
  649. package/dist/esm/queue/queue-worker-initializer.backend.service.d.ts +16 -1
  650. package/dist/esm/queue/queue-worker-initializer.backend.service.d.ts.map +1 -1
  651. package/dist/esm/queue/queue-worker-initializer.backend.service.js +16 -1
  652. package/dist/esm/queue/queue-worker-initializer.backend.service.js.map +1 -1
  653. package/dist/esm/queue/queue.backend.service.d.ts +3 -3
  654. package/dist/esm/queue/queue.backend.service.d.ts.map +1 -1
  655. package/dist/esm/queue/queue.backend.service.js +26 -4
  656. package/dist/esm/queue/queue.backend.service.js.map +1 -1
  657. package/dist/esm/queue/worker-shutdown-manager.backend.service.d.ts +2 -2
  658. package/dist/esm/queue/worker-shutdown-manager.backend.service.d.ts.map +1 -1
  659. package/dist/esm/queue/worker-shutdown-manager.backend.service.js +18 -3
  660. package/dist/esm/queue/worker-shutdown-manager.backend.service.js.map +1 -1
  661. package/dist/esm/rag/utils/rag-chunking.backend.utils.d.ts +50 -25
  662. package/dist/esm/rag/utils/rag-chunking.backend.utils.d.ts.map +1 -1
  663. package/dist/esm/rag/utils/rag-chunking.backend.utils.js +147 -39
  664. package/dist/esm/rag/utils/rag-chunking.backend.utils.js.map +1 -1
  665. package/dist/esm/rag/utils/rag-context-assembly.backend.utils.d.ts +12 -3
  666. package/dist/esm/rag/utils/rag-context-assembly.backend.utils.d.ts.map +1 -1
  667. package/dist/esm/rag/utils/rag-context-assembly.backend.utils.js +12 -3
  668. package/dist/esm/rag/utils/rag-context-assembly.backend.utils.js.map +1 -1
  669. package/dist/esm/requests/service/websocket.service.d.ts +9 -0
  670. package/dist/esm/requests/service/websocket.service.d.ts.map +1 -1
  671. package/dist/esm/requests/service/websocket.service.js +88 -15
  672. package/dist/esm/requests/service/websocket.service.js.map +1 -1
  673. package/dist/esm/resources/models/custom-service-implementations.backend.definition.d.ts.map +1 -1
  674. package/dist/esm/resources/models/custom-service-implementations.backend.definition.js +16 -2
  675. package/dist/esm/resources/models/custom-service-implementations.backend.definition.js.map +1 -1
  676. package/dist/esm/resources/models/resources-operations.backend.definitions.d.ts.map +1 -1
  677. package/dist/esm/resources/models/resources-operations.backend.definitions.js +2 -0
  678. package/dist/esm/resources/models/resources-operations.backend.definitions.js.map +1 -1
  679. package/dist/esm/resources/models/resources-relationships.backend.definitions.d.ts.map +1 -1
  680. package/dist/esm/resources/models/resources-relationships.backend.definitions.js +14 -0
  681. package/dist/esm/resources/models/resources-relationships.backend.definitions.js.map +1 -1
  682. package/dist/esm/resources/models/resources-types.backend.schemas.d.ts +2 -1
  683. package/dist/esm/resources/models/resources-types.backend.schemas.d.ts.map +1 -1
  684. package/dist/esm/resources/models/resources-types.backend.schemas.js +8 -0
  685. package/dist/esm/resources/models/resources-types.backend.schemas.js.map +1 -1
  686. package/dist/esm/resources/services/resource-id.backend.service.js +3 -3
  687. package/dist/esm/resources/services/resource-id.backend.service.js.map +1 -1
  688. package/dist/esm/resources/services/resources-registry.backend.service.d.ts +60 -5
  689. package/dist/esm/resources/services/resources-registry.backend.service.d.ts.map +1 -1
  690. package/dist/esm/resources/services/resources-registry.backend.service.js +91 -7
  691. package/dist/esm/resources/services/resources-registry.backend.service.js.map +1 -1
  692. package/dist/esm/runtime/controllers/health-controller.backend.service.d.ts +36 -3
  693. package/dist/esm/runtime/controllers/health-controller.backend.service.d.ts.map +1 -1
  694. package/dist/esm/runtime/controllers/health-controller.backend.service.js +32 -10
  695. package/dist/esm/runtime/controllers/health-controller.backend.service.js.map +1 -1
  696. package/dist/esm/runtime/domain-module.backend.definitions.d.ts +24 -0
  697. package/dist/esm/runtime/domain-module.backend.definitions.d.ts.map +1 -1
  698. package/dist/esm/runtime/domain-module.backend.definitions.js +24 -0
  699. package/dist/esm/runtime/domain-module.backend.definitions.js.map +1 -1
  700. package/dist/esm/runtime/services/execution-context-creator.backend.service.d.ts.map +1 -1
  701. package/dist/esm/runtime/services/execution-context-creator.backend.service.js +13 -7
  702. package/dist/esm/runtime/services/execution-context-creator.backend.service.js.map +1 -1
  703. package/dist/esm/runtime/services/health-readiness-contributor.backend.interface.d.ts +51 -0
  704. package/dist/esm/runtime/services/health-readiness-contributor.backend.interface.d.ts.map +1 -1
  705. package/dist/esm/runtime/services/health-readiness-contributor.backend.interface.js.map +1 -1
  706. package/dist/esm/runtime/services/http-server.backend.service.d.ts +26 -0
  707. package/dist/esm/runtime/services/http-server.backend.service.d.ts.map +1 -1
  708. package/dist/esm/runtime/services/http-server.backend.service.js +181 -1
  709. package/dist/esm/runtime/services/http-server.backend.service.js.map +1 -1
  710. package/dist/esm/runtime/services/start-application.backend.service.d.ts +47 -1
  711. package/dist/esm/runtime/services/start-application.backend.service.d.ts.map +1 -1
  712. package/dist/esm/runtime/services/start-application.backend.service.js +343 -77
  713. package/dist/esm/runtime/services/start-application.backend.service.js.map +1 -1
  714. package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.d.ts +15 -0
  715. package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.d.ts.map +1 -1
  716. package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.js +28 -0
  717. package/dist/esm/security/api-keys/api-keys.custom-impl.backend.service.js.map +1 -1
  718. package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.d.ts +5 -1
  719. package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.d.ts.map +1 -1
  720. package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.js +24 -4
  721. package/dist/esm/security/authentications/batches/anonymous-session-cleanup.batch.backend.service.js.map +1 -1
  722. package/dist/esm/security/authentications/controllers/authentication-controller.backend.service.d.ts.map +1 -1
  723. package/dist/esm/security/authentications/controllers/authentication-controller.backend.service.js +29 -4
  724. package/dist/esm/security/authentications/controllers/authentication-controller.backend.service.js.map +1 -1
  725. package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.d.ts +114 -0
  726. package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.d.ts.map +1 -1
  727. package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.js +354 -3
  728. package/dist/esm/security/authentications/controllers/oauth-provider-controller.backend.service.js.map +1 -1
  729. package/dist/esm/security/authentications/models/cimd.backend.schemas.d.ts +1 -0
  730. package/dist/esm/security/authentications/models/cimd.backend.schemas.d.ts.map +1 -1
  731. package/dist/esm/security/authentications/models/cimd.backend.schemas.js +22 -0
  732. package/dist/esm/security/authentications/models/cimd.backend.schemas.js.map +1 -1
  733. package/dist/esm/security/authentications/models/jwt.backend.schemas.d.ts +3 -23
  734. package/dist/esm/security/authentications/models/jwt.backend.schemas.d.ts.map +1 -1
  735. package/dist/esm/security/authentications/models/jwt.backend.schemas.js +20 -45
  736. package/dist/esm/security/authentications/models/jwt.backend.schemas.js.map +1 -1
  737. package/dist/esm/security/authentications/models/oauth2-connection.backend.schemas.d.ts +15 -0
  738. package/dist/esm/security/authentications/models/oauth2-connection.backend.schemas.d.ts.map +1 -1
  739. package/dist/esm/security/authentications/models/oauth2-connection.backend.schemas.js.map +1 -1
  740. package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.d.ts +0 -2
  741. package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.d.ts.map +1 -1
  742. package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.js +23 -14
  743. package/dist/esm/security/authentications/services/admin-config/auth-organization-configuration.service.js.map +1 -1
  744. package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.d.ts +0 -1
  745. package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.d.ts.map +1 -1
  746. package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.js +15 -12
  747. package/dist/esm/security/authentications/services/admin-config/domain-to-org-lookup.backend.service.js.map +1 -1
  748. package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.d.ts +113 -3
  749. package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.d.ts.map +1 -1
  750. package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.js +207 -30
  751. package/dist/esm/security/authentications/services/admin-config/domain-verification.backend.service.js.map +1 -1
  752. package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.d.ts +95 -2
  753. package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.d.ts.map +1 -1
  754. package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.js +153 -9
  755. package/dist/esm/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service.js.map +1 -1
  756. package/dist/esm/security/authentications/services/anonymous-session.backend.service.d.ts +190 -0
  757. package/dist/esm/security/authentications/services/anonymous-session.backend.service.d.ts.map +1 -1
  758. package/dist/esm/security/authentications/services/anonymous-session.backend.service.js +377 -53
  759. package/dist/esm/security/authentications/services/anonymous-session.backend.service.js.map +1 -1
  760. package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.d.ts +9 -1
  761. package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.d.ts.map +1 -1
  762. package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.js +77 -2
  763. package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.js.map +1 -1
  764. package/dist/esm/security/authentications/services/auth-methods/auth-mfa.backend.service.d.ts.map +1 -1
  765. package/dist/esm/security/authentications/services/auth-methods/auth-mfa.backend.service.js +5 -3
  766. package/dist/esm/security/authentications/services/auth-methods/auth-mfa.backend.service.js.map +1 -1
  767. package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.d.ts +41 -0
  768. package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.d.ts.map +1 -1
  769. package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.js +202 -23
  770. package/dist/esm/security/authentications/services/auth-methods/auth-registration.backend.service.js.map +1 -1
  771. package/dist/esm/security/authentications/services/auth-methods/oauth2-authentication.backend.service.d.ts.map +1 -1
  772. package/dist/esm/security/authentications/services/auth-methods/oauth2-authentication.backend.service.js +42 -1
  773. package/dist/esm/security/authentications/services/auth-methods/oauth2-authentication.backend.service.js.map +1 -1
  774. package/dist/esm/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service.d.ts.map +1 -1
  775. package/dist/esm/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service.js +34 -4
  776. package/dist/esm/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service.js.map +1 -1
  777. package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.d.ts +29 -5
  778. package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.d.ts.map +1 -1
  779. package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.js +77 -5
  780. package/dist/esm/security/authentications/services/auth-methods/webauthn.backend.service.js.map +1 -1
  781. package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.d.ts +41 -1
  782. package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.d.ts.map +1 -1
  783. package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.js +87 -4
  784. package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.js.map +1 -1
  785. package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.d.ts +43 -1
  786. package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.d.ts.map +1 -1
  787. package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.js +277 -97
  788. package/dist/esm/security/authentications/services/authentication-orchestrator.backend.service.js.map +1 -1
  789. package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.d.ts +28 -5
  790. package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.d.ts.map +1 -1
  791. package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.js +72 -12
  792. package/dist/esm/security/authentications/services/cimd-client-metadata.backend.service.js.map +1 -1
  793. package/dist/esm/security/authentications/services/custom-impls/auth-custom-implementations.backend.d.ts.map +1 -1
  794. package/dist/esm/security/authentications/services/custom-impls/auth-custom-implementations.backend.js +3 -0
  795. package/dist/esm/security/authentications/services/custom-impls/auth-custom-implementations.backend.js.map +1 -1
  796. package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.d.ts +28 -0
  797. package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.d.ts.map +1 -0
  798. package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.js +283 -0
  799. package/dist/esm/security/authentications/services/custom-impls/sso-config-domain-verification.custom-impl.backend.service.js.map +1 -0
  800. package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.d.ts +4 -3
  801. package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.d.ts.map +1 -1
  802. package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.js +4 -3
  803. package/dist/esm/security/authentications/services/custom-impls/sso-config.custom-impl.backend.service.js.map +1 -1
  804. package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.d.ts +35 -0
  805. package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.d.ts.map +1 -1
  806. package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.js +111 -21
  807. package/dist/esm/security/authentications/services/oauth-provider-token.backend.service.js.map +1 -1
  808. package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.d.ts +14 -1
  809. package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.d.ts.map +1 -1
  810. package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.js +49 -8
  811. package/dist/esm/security/authentications/services/oidc-authorization-code.backend.service.js.map +1 -1
  812. package/dist/esm/security/authentications/services/utils/auth-policy-resolution.backend.utils.d.ts.map +1 -1
  813. package/dist/esm/security/authentications/services/utils/auth-policy-resolution.backend.utils.js +4 -0
  814. package/dist/esm/security/authentications/services/utils/auth-policy-resolution.backend.utils.js.map +1 -1
  815. package/dist/esm/security/authentications/services/utils/auth-user-lookup.backend.service.d.ts.map +1 -1
  816. package/dist/esm/security/authentications/services/utils/auth-user-lookup.backend.service.js +6 -0
  817. package/dist/esm/security/authentications/services/utils/auth-user-lookup.backend.service.js.map +1 -1
  818. package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.d.ts +37 -1
  819. package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.d.ts.map +1 -1
  820. package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.js +51 -0
  821. package/dist/esm/security/authentications/services/utils/external-turn-rate-limit.backend.utils.js.map +1 -1
  822. package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.d.ts +41 -0
  823. package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.d.ts.map +1 -1
  824. package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.js +45 -0
  825. package/dist/esm/security/authentications/utils/enterprise-sso-enforcement.backend.utils.js.map +1 -1
  826. package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.d.ts +116 -0
  827. package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.d.ts.map +1 -0
  828. package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.js +162 -0
  829. package/dist/esm/security/authorizations/cross-tenant-read-observation.backend.js.map +1 -0
  830. package/dist/esm/security/authorizations/initiator-organization-confinement.backend.d.ts.map +1 -1
  831. package/dist/esm/security/authorizations/initiator-organization-confinement.backend.js +24 -1
  832. package/dist/esm/security/authorizations/initiator-organization-confinement.backend.js.map +1 -1
  833. package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.d.ts +20 -20
  834. package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.d.ts.map +1 -1
  835. package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.js +27 -28
  836. package/dist/esm/security/authorizations/organization-owner-floor.backend.utils.js.map +1 -1
  837. package/dist/esm/security/authorizations/platform-access-grant-custom-implementation.backend.service.d.ts.map +1 -1
  838. package/dist/esm/security/authorizations/platform-access-grant-custom-implementation.backend.service.js +77 -3
  839. package/dist/esm/security/authorizations/platform-access-grant-custom-implementation.backend.service.js.map +1 -1
  840. package/dist/esm/security/authorizations/privileged-access-review.backend.utils.d.ts +117 -0
  841. package/dist/esm/security/authorizations/privileged-access-review.backend.utils.d.ts.map +1 -0
  842. package/dist/esm/security/authorizations/privileged-access-review.backend.utils.js +104 -0
  843. package/dist/esm/security/authorizations/privileged-access-review.backend.utils.js.map +1 -0
  844. package/dist/esm/security/authorizations/role-ceiling.backend.utils.d.ts +4 -0
  845. package/dist/esm/security/authorizations/role-ceiling.backend.utils.d.ts.map +1 -1
  846. package/dist/esm/security/authorizations/role-ceiling.backend.utils.js +4 -0
  847. package/dist/esm/security/authorizations/role-ceiling.backend.utils.js.map +1 -1
  848. package/dist/esm/security/authorizations/role-conferral.backend.utils.d.ts +93 -0
  849. package/dist/esm/security/authorizations/role-conferral.backend.utils.d.ts.map +1 -0
  850. package/dist/esm/security/authorizations/role-conferral.backend.utils.js +95 -0
  851. package/dist/esm/security/authorizations/role-conferral.backend.utils.js.map +1 -0
  852. package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.d.ts +124 -1
  853. package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.d.ts.map +1 -1
  854. package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.js +142 -5
  855. package/dist/esm/security/authorizations/scope-root-collection-confinement.backend.js.map +1 -1
  856. package/dist/esm/security/authorizations/services/authorizations.backend.service.d.ts +175 -14
  857. package/dist/esm/security/authorizations/services/authorizations.backend.service.d.ts.map +1 -1
  858. package/dist/esm/security/authorizations/services/authorizations.backend.service.js +385 -49
  859. package/dist/esm/security/authorizations/services/authorizations.backend.service.js.map +1 -1
  860. package/dist/esm/security/authorizations/super-admin-floor.backend.utils.d.ts +6 -14
  861. package/dist/esm/security/authorizations/super-admin-floor.backend.utils.d.ts.map +1 -1
  862. package/dist/esm/security/authorizations/super-admin-floor.backend.utils.js +13 -22
  863. package/dist/esm/security/authorizations/super-admin-floor.backend.utils.js.map +1 -1
  864. package/dist/esm/security/connected-accounts/connection-target-authorization.backend.d.ts +60 -0
  865. package/dist/esm/security/connected-accounts/connection-target-authorization.backend.d.ts.map +1 -0
  866. package/dist/esm/security/connected-accounts/connection-target-authorization.backend.js +79 -0
  867. package/dist/esm/security/connected-accounts/connection-target-authorization.backend.js.map +1 -0
  868. package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.d.ts +161 -0
  869. package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.d.ts.map +1 -0
  870. package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.js +512 -0
  871. package/dist/esm/security/connected-accounts/controllers/provider-connection.controller.backend.service.js.map +1 -0
  872. package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.d.ts +59 -0
  873. package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.d.ts.map +1 -0
  874. package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.js +22 -0
  875. package/dist/esm/security/connected-accounts/organization-provider-credential-resolver.port.js.map +1 -0
  876. package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.d.ts +44 -0
  877. package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.d.ts.map +1 -0
  878. package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.js +20 -0
  879. package/dist/esm/security/connected-accounts/provider-oauth2-refresher.port.js.map +1 -0
  880. package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.d.ts +191 -0
  881. package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.d.ts.map +1 -0
  882. package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.js +385 -0
  883. package/dist/esm/security/connected-accounts/services/organization-provider-credential-store.backend.service.js.map +1 -0
  884. package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.d.ts +41 -0
  885. package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.d.ts.map +1 -0
  886. package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.js +358 -0
  887. package/dist/esm/security/connected-accounts/services/organization-provider-credentials.custom-impl.backend.service.js.map +1 -0
  888. package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.d.ts +160 -0
  889. package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.d.ts.map +1 -0
  890. package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.js +266 -0
  891. package/dist/esm/security/connected-accounts/services/provider-oauth2-exchange.backend.js.map +1 -0
  892. package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.d.ts +111 -0
  893. package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.d.ts.map +1 -0
  894. package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.js +107 -0
  895. package/dist/esm/security/connected-accounts/services/provider-oauth2-pending-authorization.backend.service.js.map +1 -0
  896. package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.d.ts +54 -0
  897. package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.d.ts.map +1 -0
  898. package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.js +153 -0
  899. package/dist/esm/security/connected-accounts/services/provider-oauth2-refresher.backend.service.js.map +1 -0
  900. package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.d.ts +195 -0
  901. package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.d.ts.map +1 -0
  902. package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.js +387 -0
  903. package/dist/esm/security/connected-accounts/services/user-provider-credential-store.backend.service.js.map +1 -0
  904. package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.d.ts +45 -0
  905. package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.d.ts.map +1 -0
  906. package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.js +291 -0
  907. package/dist/esm/security/connected-accounts/services/user-provider-credentials.custom-impl.backend.service.js.map +1 -0
  908. package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.d.ts +62 -0
  909. package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.d.ts.map +1 -0
  910. package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.js +29 -0
  911. package/dist/esm/security/connected-accounts/user-provider-credential-resolver.port.js.map +1 -0
  912. package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.d.ts +127 -0
  913. package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.d.ts.map +1 -0
  914. package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.js +277 -0
  915. package/dist/esm/security/connected-accounts/utils/provider-credential-envelope.backend.utils.js.map +1 -0
  916. package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.d.ts +66 -0
  917. package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.d.ts.map +1 -0
  918. package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.js +75 -0
  919. package/dist/esm/security/connected-accounts/utils/stored-credential-value.backend.utils.js.map +1 -0
  920. package/dist/esm/security/consumable-tokens/batches/consumable-tokens-cleanup.batch.backend.service.d.ts +18 -1
  921. package/dist/esm/security/consumable-tokens/batches/consumable-tokens-cleanup.batch.backend.service.d.ts.map +1 -1
  922. package/dist/esm/security/consumable-tokens/batches/consumable-tokens-cleanup.batch.backend.service.js +110 -74
  923. package/dist/esm/security/consumable-tokens/batches/consumable-tokens-cleanup.batch.backend.service.js.map +1 -1
  924. package/dist/esm/security/consumable-tokens/consumable-token-models.exports.d.ts +22 -0
  925. package/dist/esm/security/consumable-tokens/consumable-token-models.exports.d.ts.map +1 -0
  926. package/dist/esm/security/consumable-tokens/consumable-token-models.exports.js +22 -0
  927. package/dist/esm/security/consumable-tokens/consumable-token-models.exports.js.map +1 -0
  928. package/dist/esm/security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas.d.ts +17 -3
  929. package/dist/esm/security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas.d.ts.map +1 -1
  930. package/dist/esm/security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas.js +12 -0
  931. package/dist/esm/security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas.js.map +1 -1
  932. package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.d.ts +41 -3
  933. package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.d.ts.map +1 -1
  934. package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.js +83 -20
  935. package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.js.map +1 -1
  936. package/dist/esm/security/credential-rotation-grace.backend.utils.d.ts +9 -4
  937. package/dist/esm/security/credential-rotation-grace.backend.utils.d.ts.map +1 -1
  938. package/dist/esm/security/credential-rotation-grace.backend.utils.js +9 -4
  939. package/dist/esm/security/credential-rotation-grace.backend.utils.js.map +1 -1
  940. package/dist/esm/security/jwt/services/jwt.backend.service.d.ts.map +1 -1
  941. package/dist/esm/security/jwt/services/jwt.backend.service.js +1 -18
  942. package/dist/esm/security/jwt/services/jwt.backend.service.js.map +1 -1
  943. package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.d.ts +26 -0
  944. package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.d.ts.map +1 -1
  945. package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.js +43 -0
  946. package/dist/esm/security/oauth-clients/oauth-client-generation.backend.utils.js.map +1 -1
  947. package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.d.ts +8 -1
  948. package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.d.ts.map +1 -1
  949. package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.js +49 -0
  950. package/dist/esm/security/oauth-clients/oauth-clients.custom-impl.backend.service.js.map +1 -1
  951. package/dist/esm/security/scim/controllers/scim.backend.controller.d.ts.map +1 -1
  952. package/dist/esm/security/scim/controllers/scim.backend.controller.js +17 -5
  953. package/dist/esm/security/scim/controllers/scim.backend.controller.js.map +1 -1
  954. package/dist/esm/security/scim/models/scim-protocol.backend.schemas.d.ts +67 -29
  955. package/dist/esm/security/scim/models/scim-protocol.backend.schemas.d.ts.map +1 -1
  956. package/dist/esm/security/scim/models/scim-protocol.backend.schemas.js +47 -25
  957. package/dist/esm/security/scim/models/scim-protocol.backend.schemas.js.map +1 -1
  958. package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.d.ts +10 -2
  959. package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.d.ts.map +1 -1
  960. package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.js +10 -2
  961. package/dist/esm/security/ssrf/outbound-target-guard.backend.utils.js.map +1 -1
  962. package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.d.ts +143 -0
  963. package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.d.ts.map +1 -0
  964. package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.js +258 -0
  965. package/dist/esm/security/ssrf/pinned-outbound-fetch.backend.utils.js.map +1 -0
  966. package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.d.ts +39 -0
  967. package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.d.ts.map +1 -0
  968. package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.js +159 -0
  969. package/dist/esm/users/services/user-read-retained.custom-impl.backend.service.js.map +1 -0
  970. package/dist/tsconfig.build.tsbuildinfo +1 -1
  971. package/package.json +17 -9
  972. package/dist/esm/.builder.pid +0 -9
@@ -1 +1 @@
1
- {"version":3,"file":"actors-system.backend.service.js","sourceRoot":"","sources":["../../../../../src/flows-actors/services/actors-system.backend.service.ts"],"names":[],"mappings":"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","sourcesContent":["import 'reflect-metadata';\nimport { injectable, inject } from 'inversify';\nimport { SAAS_SERVICE_TYPES } from '~wildo-backend-lib/inject/models/service-types';\nimport { LoggerService } from '~wildo-backend-lib/monitoring/logger/services/logger.service';\nimport { ErrorBuilderBackendService } from '~wildo-backend-lib/errors/services/error-builder.backend.service';\nimport { FlowsActorsRegistryService } from './flows-actors-registry.service';\nimport { AgentsBackendService } from './agents.backend.service';\nimport {\n FlowActorSystem,\n FlowActorSystem_Kind,\n FlowActorSystem_Status,\n FlowsActors_Status\n} from '@wildo-ai/saas-models';\nimport {\n ErrorType,\n ErrorCustomMessageReference\n} from '@wildo-ai/saas-models';\nimport {\n ActorSystem,\n ActorSystem_Execution,\n Actors_Task_Schema,\n} from '@wildo-ai/saas-models';\nimport {\n aggregateWeightedScore,\n buildDeliberationReviewWireSchema,\n DeliberationCandidateProvenance,\n DeliberationRecommendation,\n type DeliberationConcurrence,\n DeliberationCoordinatorRoundOutputSchema,\n DeliberationCoordinatorRoundOutputStrictSchema,\n DeliberationRecordSchema,\n DeliberationRoundDirective,\n DeliberationRubricOutputSchema,\n DeliberationRubricOutputStrictSchema,\n DeliberationStatus,\n DeliberationSynthesisSchema,\n DeliberationSynthesisStrictSchema,\n EvaluationRubricSchema,\n FlowsActors_IO_PartKind,\n RubricVerdictSchema,\n validateVerdictCriterionRefs,\n type AgentTraceContext,\n type DeliberationCandidate,\n type DeliberationCandidateContent,\n type DeliberationCandidateInput,\n type DeliberationCoordinatorRoundOutput,\n type DeliberationExpertBinding,\n type DeliberationPlan,\n type DeliberationRecord,\n type DeliberationRound,\n type DeliberationRubricOutput,\n type DeliberationSynthesis,\n type EvaluationRubric,\n type FlowsActors_Agent_Invocation,\n type RubricVerdict,\n} from '@wildo-ai/saas-models';\nimport {\n ALL_ZOD_ISSUES,\n summarizeZodIssues,\n type FormattableZodIssue,\n} from '@wildo-ai/saas-models';\nimport {\n LLMProvider_GenerateStructuredInputSchema,\n LLMProvider_GenerateStructuredOutputSchema,\n type LLMProvider_ImageContent,\n} from '@wildo-ai/external-connectors-models';\nimport type { ZodType } from 'zod';\n\n/**\n * Actors System Backend Service\n *\n * Manages actor execution and event-driven reactive behaviors.\n * Coordinates actor lifecycle, trigger handling, and agentic execution.\n *\n * Features:\n * - Actor execution management\n * - Event trigger handling\n * - Reactive behavior orchestration\n * - Agentic mode execution\n * - State management\n * - Task planning and execution\n */\n@injectable()\nexport class ActorsSystemBackendService {\n\n protected logDebug: (message: string, context?: Record<string, unknown>) => void;\n\n constructor(\n @inject(SAAS_SERVICE_TYPES.Logger) private readonly logger: LoggerService,\n @inject(SAAS_SERVICE_TYPES.ErrorBuilderService) private readonly errorBuilder: ErrorBuilderBackendService,\n @inject(SAAS_SERVICE_TYPES.FlowsActorsRegistryService) private readonly flowsActorsRegistry: FlowsActorsRegistryService,\n @inject(SAAS_SERVICE_TYPES.AgentsBackendService) private readonly agentsService: AgentsBackendService,\n ) {\n this.logDebug = this.logger.debugByType('ActorsSystem');\n this.logger.setDebugTypeLogging('ActorsSystem', true);\n\n this.logDebug('Actors system backend service created');\n }\n\n // ================================\n // Actor Execution\n // ================================\n\n /**\n * Execute an actor\n * Accepts ActorSystem_Execution and executes it\n */\n public async executeActor(execution: ActorSystem_Execution): Promise<ActorSystem_Execution> {\n this.logDebug('Executing actor', {\n actorRef: execution.systemRef,\n executionId: execution._id,\n hasInitiator: !!execution.initiator\n });\n\n // Get actor from registry\n const actor = this.flowsActorsRegistry.getSystemOrThrow(execution.systemRef, FlowActorSystem_Kind.ACTOR);\n\n // Validate it's an actor\n this.validateIsActor(actor);\n\n // Validate actor status\n this.validateActorStatus(actor);\n\n // Execute actor behavior\n const updatedExecution = await this.executeActorBehavior(actor, execution);\n\n this.logDebug('Actor execution completed', {\n actorRef: execution.systemRef,\n executionId: updatedExecution._id || 'unknown',\n status: updatedExecution.status\n });\n\n return updatedExecution;\n }\n\n /**\n * Execute actor behavior based on configuration\n */\n private async executeActorBehavior(\n actor: FlowActorSystem,\n execution: ActorSystem_Execution\n ): Promise<ActorSystem_Execution> {\n this.logDebug('Executing actor behavior', {\n actorRef: actor.ref,\n executionId: execution._id\n });\n\n // TODO: Implement actual actor behavior execution\n // This will involve:\n // 1. Processing trigger event (from execution context or metadata)\n // 2. Determining actor mode (reactive, agentic)\n // 3. Creating Actors_Task if needed\n // 4. Executing appropriate behavior (agentic, flow execution, human interaction)\n // 5. Managing actor state\n // 6. Updating standaloneTasks and standaloneTaskStates\n\n // For now, update execution status\n return {\n ...execution,\n status: FlowsActors_Status.COMPLETED,\n finishedAt: new Date().toISOString(),\n updatedAt: new Date().toISOString(),\n statusChanges: [\n ...execution.statusChanges,\n {\n status: FlowsActors_Status.COMPLETED,\n timestamp: new Date().toISOString(),\n },\n ],\n };\n }\n\n // ================================\n // Actor Validation\n // ================================\n\n /**\n * Validate system is an actor\n */\n private validateIsActor(system: FlowActorSystem): void {\n if (system.kind !== FlowActorSystem_Kind.ACTOR) {\n throw this.errorBuilder.buildError(\n ErrorType.VALIDATION,\n undefined,\n {\n customMessageReference: ErrorCustomMessageReference.ACTOR_INVALID_KIND,\n context: {\n // diagnostic (log-only)\n systemRef: system.ref,\n kind: system.kind,\n }\n }\n );\n }\n }\n\n /**\n * Validate actor status before execution\n */\n private validateActorStatus(actor: FlowActorSystem): void {\n if (actor.status !== FlowActorSystem_Status.ACTIVE) {\n throw this.errorBuilder.buildError(\n ErrorType.VALIDATION,\n undefined,\n {\n customMessageReference: ErrorCustomMessageReference.ACTOR_NOT_ACTIVE,\n context: {\n // diagnostic (log-only)\n actorRef: actor.ref,\n status: actor.status,\n }\n }\n );\n }\n }\n\n // ================================\n // Execution Context Management\n // ================================\n\n\n // ================================\n // Actor Discovery\n // ================================\n\n /**\n * Get all available actors\n */\n public getAvailableActors(): ActorSystem[] {\n return this.flowsActorsRegistry.getActors().filter(\n actor => actor.status === FlowActorSystem_Status.ACTIVE\n );\n }\n\n /**\n * Get actor by reference\n */\n public getActor(actorRef: string): ActorSystem | undefined {\n const system = this.flowsActorsRegistry.getSystem(actorRef, FlowActorSystem_Kind.ACTOR);\n if (system && system.kind === FlowActorSystem_Kind.ACTOR) {\n return system;\n }\n return undefined;\n }\n\n /**\n * Get actor or throw\n */\n public getActorOrThrow(actorRef: string): ActorSystem {\n const actor = this.getActor(actorRef);\n if (!actor) {\n throw this.errorBuilder.buildError(\n ErrorType.NOT_FOUND,\n undefined,\n {\n customMessageReference: ErrorCustomMessageReference.NOT_FOUND,\n context: { actorRef }\n }\n );\n }\n return actor;\n }\n\n // ================================\n // Event Trigger Management\n // ================================\n\n /**\n * Register actor for event trigger\n */\n public registerActorTrigger(actorRef: string, triggerType: string): void {\n const actor = this.getActorOrThrow(actorRef);\n\n // TODO: Implement trigger registration\n // This will involve registering the actor to listen for specific events\n\n this.logDebug('Actor trigger registered', {\n actorRef,\n triggerType\n });\n }\n\n /**\n * Unregister actor from event trigger\n */\n public unregisterActorTrigger(actorRef: string, triggerType: string): void {\n const actor = this.getActorOrThrow(actorRef);\n\n // TODO: Implement trigger unregistration\n\n this.logDebug('Actor trigger unregistered', {\n actorRef,\n triggerType\n });\n }\n\n // ================================\n // Debug Methods\n // ================================\n\n public getDebugInfo(): {\n totalActors: number;\n activeActors: number;\n actorRefs: string[];\n } {\n const allActors = this.flowsActorsRegistry.getActors();\n const activeActors = allActors.filter(a => a.status === FlowActorSystem_Status.ACTIVE);\n\n return {\n totalActors: allActors.length,\n activeActors: activeActors.length,\n actorRefs: allActors.map(a => a.ref),\n };\n }\n\n // ================================\n // Deliberation orchestration\n // ------------------------------\n // The first REAL actor-system workload: a bounded, auditable\n // critique-revise deliberation over candidate work products, run by\n // narrow expert personas (agents built from app-derived charters).\n //\n // Ownership split (agentic deliberation system, Step 3):\n // - The ENGINE (here) owns the orchestration SEMANTICS: per-run rubric\n // derivation (embedded, constant across rounds), parallel panel\n // reviews with fail-closed criterion-ref validation (one retry, then\n // quorum-drop), coordinator shortlist/convergence (RF-5 cost funnel),\n // deterministic revision-prompt compilation (RF-4), synthesis with\n // echo-validation fallbacks, and `DeliberationRecord` assembly.\n // - The CALLER (dev companion) owns charters, agents, candidate BYTES\n // (the plan's `producer` callback persists revisions), and record\n // persistence — this method RETURNS the record and never writes disk\n // (RF-2).\n //\n // Every identity/provenance field is stamped HERE deterministically —\n // models author scores/critiques/directives, never their own audit\n // trail. Model-computed arithmetic is never trusted: candidate ranking\n // uses `aggregateWeightedScore` over validated verdicts.\n // ================================\n\n public async executeDeliberation(\n plan: DeliberationPlan,\n traceContext?: AgentTraceContext,\n ): Promise<DeliberationRecord> {\n this.validateDeliberationPlan(plan);\n const startedAt = new Date().toISOString();\n this.logDebug('Deliberation started', {\n deliberationRef: plan.deliberationRef,\n workDomain: plan.workDomain,\n subjectKind: plan.subjectKind,\n reviewers: plan.reviewers.length,\n candidates: plan.initialCandidates.length,\n roundBudget: plan.roundBudget,\n });\n\n // ── Rubric: derived ONCE at start, constant across rounds ──\n const rubric = await this.deriveDeliberationRubric(plan, traceContext);\n\n // Candidate provenance bookkeeping (refs → how they entered).\n const provenanceByRef = new Map<string, DeliberationCandidate>();\n for (const candidate of plan.initialCandidates) {\n provenanceByRef.set(candidate.ref, {\n ref: candidate.ref,\n provenance: DeliberationCandidateProvenance.ORIGINAL,\n storageRef: candidate.storageRef,\n });\n }\n\n let currentCandidates: DeliberationCandidateInput[] = [...plan.initialCandidates];\n const rounds: DeliberationRound[] = [];\n let status: DeliberationStatus = DeliberationStatus.RUNNING;\n let finalVerdicts: RubricVerdict[] = [];\n let finalAggregates = new Map<string, number>();\n\n for (let roundNumber = 1; roundNumber <= plan.roundBudget; roundNumber += 1) {\n // ── Panel review: all candidates × all reviewers, in parallel ──\n const verdicts = await this.collectRoundVerdicts(plan, rubric, currentCandidates, traceContext);\n /*\n * QUORUM is coverage of the required LENSES, never a count of surviving calls.\n *\n * The floor here used to be `verdicts.length === 0` — so a three-reviewer panel whose other two\n * calls failed validation scored on ONE survivor, aggregated it, and returned a record that\n * reads exactly like a three-lens deliberation. That is the failure a panel exists to prevent:\n * its value is the DISTINCTNESS of the lenses, and averaging over a subset silently changes what\n * was measured while changing nothing a reader can see.\n *\n * Every configured reviewer is a required lens. A missing one BLOCKS AGGREGATION — you cannot\n * score what you did not measure — and `coverage ≠ quorum` is the mined rule this implements:\n * quorum counts valid admitted contributions plus required distinctness groups, never seats.\n *\n * It stays an INTERNAL (technical) failure, deliberately. A reviewer whose call failed produced\n * no semantic verdict, and dressing a transport failure as a deliberation outcome is exactly\n * what `app-creation-judge-growth.md` forbids: \"technical failure is never a semantic verdict.\"\n * The round is refused and re-runnable; nothing is recorded as a decision.\n */\n const contributingLenses = new Set(verdicts.map((verdict) => verdict.reviewerCharterRef));\n /*\n * Compared on `charterRef`, which is what a verdict carries — NOT `roleRef`.\n *\n * The first version of this compared role refs and reported \"2 of 2 lenses missing\" while the\n * same message said 2 had answered. Every lens looked absent because no verdict could ever match,\n * so the check refused every round it was given. Loud, and therefore cheap; a comparison that had\n * happened to match on some inputs would have refused only sometimes.\n */\n const requiredLenses = new Set(plan.reviewers.map((reviewer) => reviewer.profile.charterRef));\n const missingLenses = [...requiredLenses].filter((charterRef) => !contributingLenses.has(charterRef));\n if (missingLenses.length > 0) {\n throw this.errorBuilder.buildError(ErrorType.INTERNAL, undefined, {\n customMessageReference: ErrorCustomMessageReference.INTERNAL,\n context: {\n message: `Deliberation '${plan.deliberationRef}' round ${roundNumber}: `\n + `${missingLenses.length} of ${plan.reviewers.length} required reviewer lens(es) produced no valid verdict `\n + `after retries (${missingLenses.join(', ')}). Aggregating the ${contributingLenses.size} that answered would `\n + 'report a full panel while measuring a subset, so the round is refused rather than scored. Re-run.',\n },\n });\n }\n const aggregates = this.computeCandidateAggregates(rubric, currentCandidates, verdicts, requiredLenses);\n finalVerdicts = verdicts;\n finalAggregates = aggregates;\n\n // ── Coordinator: converge or shortlist ─────────────────────\n const decision = await this.invokeCoordinatorRound(\n plan, rubric, currentCandidates, verdicts, aggregates, roundNumber, traceContext,\n );\n\n const roundEntry: DeliberationRound = {\n roundNumber,\n candidateSet: currentCandidates.map((candidate) => {\n const tracked = provenanceByRef.get(candidate.ref);\n // Every current candidate was registered at entry; the map is\n // maintained by this loop, so absence is a programming error.\n return tracked as DeliberationCandidate;\n }),\n verdicts,\n };\n\n if (decision.directive === DeliberationRoundDirective.FINALIZE) {\n rounds.push(roundEntry);\n status = DeliberationStatus.CONVERGED;\n break;\n }\n if (roundNumber === plan.roundBudget) {\n rounds.push(roundEntry);\n status = DeliberationStatus.BUDGET_EXHAUSTED;\n break;\n }\n\n // ── Shortlist (validated, fallback = top-K by aggregate) ───\n const shortlistRefs = this.resolveShortlist(plan, currentCandidates, aggregates, decision.shortlistRefs);\n rounds.push({ ...roundEntry, shortlistRefs });\n\n // ── Revision: producer callback per shortlisted candidate ──\n const revised: DeliberationCandidateInput[] = [];\n for (const shortRef of shortlistRefs) {\n const parent = currentCandidates.find((candidate) => candidate.ref === shortRef) as DeliberationCandidateInput;\n const revisionPrompt = this.compileRevisionPrompt(parent, verdicts);\n const child = await plan.producer.produceRevision(parent, revisionPrompt);\n if (provenanceByRef.has(child.ref)) {\n throw this.errorBuilder.buildError(ErrorType.INTERNAL, undefined, {\n customMessageReference: ErrorCustomMessageReference.INTERNAL,\n context: {\n message: `Deliberation '${plan.deliberationRef}': the producer returned candidate ref `\n + `'${child.ref}' which already exists — revision refs must be fresh.`,\n },\n });\n }\n provenanceByRef.set(child.ref, {\n ref: child.ref,\n provenance: DeliberationCandidateProvenance.REVISED,\n revisedFromRef: parent.ref,\n revisionPrompt,\n storageRef: child.storageRef,\n });\n revised.push(child);\n }\n currentCandidates = revised;\n this.logDebug('Deliberation round revised', {\n deliberationRef: plan.deliberationRef,\n roundNumber,\n shortlist: shortlistRefs,\n });\n }\n\n /*\n * REJECT-ALL IS A RESULT, and it is checked BEFORE synthesis on purpose.\n *\n * `DeliberationRecommendation.REJECT` was required on every verdict and read by\n * NOTHING — so a field every reviewer rejected still went to a coordinator whose\n * whole job is to name a winner, and it named one. That artifact then landed\n * carrying the panel's authority over a decision the panel had refused.\n *\n * Asking the coordinator to decline instead would be the wrong seam twice over:\n * it is a model call, so it can be talked out of it, and the record would show a\n * synthesis saying \"none\" rather than the ABSENCE of one. This is deterministic\n * and structural — no winner is synthesised, because there is nothing to\n * synthesise from.\n *\n * A candidate is panel-rejected when EVERY lens that scored it said REJECT.\n * Unanimity is deliberately the bar: one dissenting ACCEPT or REVISE means the\n * panel disagreed, and disagreement is what a deliberation is FOR — it belongs in\n * `dissent`, not in a refusal. A candidate nobody could score cannot rescue the\n * field either, so only scored candidates are considered.\n */\n const scoredCandidates = currentCandidates.filter((candidate) =>\n finalVerdicts.some((verdict) => verdict.candidateRef === candidate.ref));\n const survivingCandidates = scoredCandidates.filter((candidate) =>\n finalVerdicts.some((verdict) =>\n verdict.candidateRef === candidate.ref && verdict.recommendation !== DeliberationRecommendation.REJECT));\n\n if (scoredCandidates.length > 0 && survivingCandidates.length === 0) {\n const rejectedRecord = DeliberationRecordSchema.parse({\n deliberationRef: plan.deliberationRef,\n workDomain: plan.workDomain,\n subjectKind: plan.subjectKind,\n rubric,\n participants: {\n producerAgentRef: plan.producerAgentRef,\n reviewerCharterRefs: plan.reviewers.map((reviewer) => reviewer.profile.charterRef),\n coordinatorCharterRef: plan.coordinator.profile.charterRef,\n },\n rounds,\n // No synthesis: the schema documents its absence for exactly this state.\n roundBudget: plan.roundBudget,\n status: DeliberationStatus.REJECTED,\n charterInputsDigests: plan.charterInputsDigests,\n humanDecision: null,\n startedAt,\n finishedAt: new Date().toISOString(),\n });\n this.logDebug('Deliberation rejected every candidate', {\n deliberationRef: plan.deliberationRef,\n rounds: rounds.length,\n candidates: scoredCandidates.length,\n });\n return rejectedRecord;\n }\n\n // ── Synthesis (coordinator; echo-validated with deterministic fallback) ──\n const synthesis = await this.invokeSynthesis(\n plan, rubric, currentCandidates, finalVerdicts, finalAggregates, traceContext,\n );\n\n const record = DeliberationRecordSchema.parse({\n deliberationRef: plan.deliberationRef,\n workDomain: plan.workDomain,\n subjectKind: plan.subjectKind,\n rubric,\n participants: {\n producerAgentRef: plan.producerAgentRef,\n reviewerCharterRefs: plan.reviewers.map((reviewer) => reviewer.profile.charterRef),\n coordinatorCharterRef: plan.coordinator.profile.charterRef,\n },\n rounds,\n synthesis,\n concurrence: ActorsSystemBackendService.computeConcurrence(synthesis.winnerRef, finalVerdicts),\n roundBudget: plan.roundBudget,\n status,\n charterInputsDigests: plan.charterInputsDigests,\n humanDecision: null,\n startedAt,\n finishedAt: new Date().toISOString(),\n });\n this.logDebug('Deliberation finished', {\n deliberationRef: plan.deliberationRef,\n status,\n rounds: rounds.length,\n winnerRef: synthesis.winnerRef,\n });\n return record;\n }\n\n /** Fail-closed plan validation (subject modality, panel, budgets, ref uniqueness). */\n private validateDeliberationPlan(plan: DeliberationPlan): void {\n if (\n plan.subjectKind !== FlowsActors_IO_PartKind.TEXT\n && plan.subjectKind !== FlowsActors_IO_PartKind.IMAGE\n && plan.subjectKind !== FlowsActors_IO_PartKind.STRUCTURED\n ) {\n // Still fail-closed, and deliberately still a SHORT list: FILE, RAW_DATA,\n // AUDIO and VIDEO have no reviewer-side rendering, so admitting one would\n // hand a panel a candidate it cannot actually look at. STRUCTURED joined\n // 2026-08-29 because it acquired one (`renderCandidateForPrompt`).\n throw this.errorBuilder.buildError(ErrorType.VALIDATION, undefined, {\n customMessageReference: ErrorCustomMessageReference.VALIDATION,\n context: {\n message: `Deliberation subjectKind '${plan.subjectKind}' has no honest transport yet — `\n + `only TEXT, IMAGE and STRUCTURED are supported (fail-closed).`,\n },\n });\n }\n /*\n * TWO reviewers, not one. A panel's value IS the distinctness of its lenses, so a\n * single reviewer is not a small panel — it is a category error wearing a panel's\n * record: `dissent` is structurally always empty, the \"synthesis\" echoes the one\n * verdict it was given, and the result reads exactly like a deliberated outcome.\n * That is issue #56's title, and the floor was `=== 0`.\n *\n * The coordinator does not count toward it. It is the manager hat — shortlist,\n * convergence, synthesis — and is deliberately NOT domain-gated, so it is not a\n * lens. It MAY also hold a reviewer seat (the logo lane's `brand-strategist` does,\n * and so does placement's `design-system-guardian`): a chair with a vote is a\n * normal panel, and what this floor refuses is a panel with only a chair.\n *\n * Nobody is broken by this: the logo lane convenes three reviewers, placement two.\n * A caller wanting ONE opinion wants the JUDGE tier (`runPlaybookJudge`), which is\n * a different mechanism with an honest name.\n */\n /*\n * Counted as DISTINCT LENSES, not bindings — found by mutation-testing the first\n * version of this floor, which counted `plan.reviewers.length`. Two bindings of the\n * SAME charter is one lens wearing two seats: the floor passed, the quorum passed\n * (its `requiredLenses` is a Set, so it saw one), and the record reported a\n * two-reviewer panel over a single opinion. That is this issue's exact defect,\n * re-entering through the guard written to close it.\n */\n const distinctLenses = new Set(plan.reviewers.map((reviewer) => reviewer.profile.charterRef));\n if (distinctLenses.size < 2 || plan.initialCandidates.length === 0\n || plan.roundBudget < 1 || plan.shortlistSize < 1) {\n throw this.errorBuilder.buildError(ErrorType.VALIDATION, undefined, {\n customMessageReference: ErrorCustomMessageReference.VALIDATION,\n context: {\n message: 'A deliberation needs ≥2 DISTINCT reviewer lenses (a panel of one is a judge, not a deliberation — see runPlaybookJudge; two seats holding the same charter is still one lens), ≥1 candidate, roundBudget ≥1 and shortlistSize ≥1.',\n },\n });\n }\n const refs = new Set(plan.initialCandidates.map((candidate) => candidate.ref));\n if (refs.size !== plan.initialCandidates.length) {\n throw this.errorBuilder.buildError(ErrorType.VALIDATION, undefined, {\n customMessageReference: ErrorCustomMessageReference.VALIDATION,\n context: { message: 'Initial candidate refs must be unique.' },\n });\n }\n }\n\n /**\n * Invoke a GENERATE_STRUCTURED agent and strict-validate; ONE retry with\n * the validation error surfaced in the prompt, then `null` (the caller\n * decides drop-vs-throw). The deliberation's shared fail-closed seam.\n */\n private async invokeDeliberationStructured<T>(\n agentRef: string,\n prompt: string,\n schema: ZodType,\n strictParse: (raw: unknown) => { ok: true; value: T } | { ok: false; error: string },\n label: string,\n traceContext?: AgentTraceContext,\n images?: LLMProvider_ImageContent[],\n ): Promise<T | null> {\n // Local to the call: reviews run in PARALLEL, so an instance-level scratch\n // slot would cross-thread another reviewer's rejection into this retry.\n let lastError: string | undefined;\n for (let attempt = 1; attempt <= 2; attempt += 1) {\n const attemptPrompt = attempt === 1 ? prompt : `${prompt}\\n\\n# PREVIOUS ATTEMPT REJECTED\\n${lastError ?? ''}\\nCorrect the output to satisfy the contract exactly.`;\n const input: { prompt: string; schema: ZodType; images?: LLMProvider_ImageContent[] } = {\n prompt: attemptPrompt,\n schema,\n };\n if (images !== undefined && images.length > 0) input.images = images;\n const invocation: FlowsActors_Agent_Invocation<\n typeof LLMProvider_GenerateStructuredInputSchema,\n typeof LLMProvider_GenerateStructuredOutputSchema\n > = {\n agentRef,\n initiator: {},\n invocationContext: [],\n input,\n output: { object: {} },\n executionContext: {},\n artifactBindings: [],\n };\n const response = await this.agentsService.invokeAgent(invocation, traceContext);\n const raw = (response.output as { object?: unknown } | undefined)?.object;\n const parsed = strictParse(raw);\n if (parsed.ok) {\n return parsed.value;\n }\n // Safe by construction: the callback's return union is closed and\n // `ok: false` implies the error member. TS cannot narrow unions whose\n // other member references an unresolved type parameter (long-standing\n // generics-narrowing limitation), hence the explicit assertion.\n const failure = parsed as { ok: false; error: string };\n lastError = failure.error;\n this.logDebug('Deliberation structured output rejected', { agentRef, label, attempt, error: failure.error });\n }\n return null;\n }\n\n /** Derive the run's rubric from the domain-owner expert (retry once; then throw). */\n private async deriveDeliberationRubric(\n plan: DeliberationPlan,\n traceContext?: AgentTraceContext,\n ): Promise<EvaluationRubric> {\n const deriver = plan.rubricDeriver;\n const prompt = [\n plan.briefContext,\n '',\n '# Your task — derive the evaluation RUBRIC for this deliberation',\n `Work domain: ${plan.workDomain}. Derive 4–7 evaluation criteria this panel will score every `\n + 'candidate against (0–100 each). Each criterion: a stable kebab-case `ref`, a one-to-two '\n + 'sentence `description`, a positive `weight` reflecting its real importance for THIS '\n + 'application, and `scaleAnchors` pinning what 0 and 100 MEAN so two reviewers score '\n + 'commensurably. Ground every criterion and weight in the brief; refs must be UNIQUE.',\n deriver.profile.qualityBar && deriver.profile.qualityBar.length > 0\n ? `Seed the 100-end scale anchors from your quality bar:\\n${deriver.profile.qualityBar.map((entry) => `- ${entry}`).join('\\n')}`\n : '',\n ].filter((part) => part.length > 0).join('\\n');\n\n const output = await this.invokeDeliberationStructured<DeliberationRubricOutput>(\n deriver.agentRef,\n prompt,\n DeliberationRubricOutputSchema,\n (raw) => {\n const parsed = DeliberationRubricOutputStrictSchema.safeParse(raw);\n if (!parsed.success) return { ok: false, error: formatZodIssuesForRetryPrompt(parsed.error.issues) };\n const assembled = EvaluationRubricSchema.safeParse({\n workDomain: plan.workDomain,\n derivedFromCharterRef: deriver.profile.charterRef,\n criteria: parsed.data.criteria,\n derivedAt: new Date().toISOString(),\n });\n if (!assembled.success) return { ok: false, error: formatZodIssuesForRetryPrompt(assembled.error.issues) };\n return { ok: true, value: parsed.data };\n },\n 'rubric-derivation',\n traceContext,\n );\n if (output === null) {\n throw this.errorBuilder.buildError(ErrorType.INTERNAL, undefined, {\n customMessageReference: ErrorCustomMessageReference.INTERNAL,\n context: {\n message: `Deliberation '${plan.deliberationRef}': rubric derivation failed validation twice `\n + `(agent ${deriver.agentRef}). Re-run.`,\n },\n });\n }\n return EvaluationRubricSchema.parse({\n workDomain: plan.workDomain,\n derivedFromCharterRef: deriver.profile.charterRef,\n criteria: output.criteria,\n derivedAt: new Date().toISOString(),\n });\n }\n\n /** All candidates × all reviewers, parallel; failed verdicts are quorum-dropped. */\n private async collectRoundVerdicts(\n plan: DeliberationPlan,\n rubric: EvaluationRubric,\n candidates: DeliberationCandidateInput[],\n traceContext?: AgentTraceContext,\n ): Promise<RubricVerdict[]> {\n const tasks: Array<Promise<RubricVerdict | null>> = [];\n for (const candidate of candidates) {\n for (const reviewer of plan.reviewers) {\n tasks.push(this.reviewOneCandidate(plan, rubric, reviewer, candidate, traceContext));\n }\n }\n const settled = await Promise.all(tasks);\n return settled.filter((verdict): verdict is RubricVerdict => verdict !== null);\n }\n\n /**\n * What a reviewer is SHOWN for one candidate.\n *\n * Exhaustive over the content union on purpose: a fourth kind is a compile\n * error here rather than a candidate that silently renders as nothing. The\n * `validateDeliberationPlan` allow-list and this switch are the two halves of\n * \"the panel can actually look at it\", and they must move together.\n *\n * For STRUCTURED the VALUE is always rendered. An optional `projection` is\n * framing placed above it, never a substitute — see the type's docstring for\n * why a projection-only rendering would let the panel score prose while the\n * winner is the data.\n */\n private static renderCandidateForPrompt(content: DeliberationCandidateContent): string {\n switch (content.kind) {\n case FlowsActors_IO_PartKind.TEXT:\n return content.text;\n case FlowsActors_IO_PartKind.IMAGE:\n return '- The candidate IMAGE is ATTACHED to this message. Judge what you actually SEE.';\n case FlowsActors_IO_PartKind.STRUCTURED:\n return [\n ...(content.projection ? [content.projection, ''] : []),\n 'The candidate is STRUCTURED DATA. The JSON below is the candidate itself —'\n + ' it is exactly what wins if you rank it first. Judge the DATA; where any'\n + ' surrounding description disagrees with it, the DATA is authoritative.',\n '',\n '```json',\n JSON.stringify(content.value, null, 2),\n '```',\n ].join('\\n');\n default: {\n const unreachable: never = content;\n return unreachable;\n }\n }\n }\n\n private async reviewOneCandidate(\n plan: DeliberationPlan,\n rubric: EvaluationRubric,\n reviewer: DeliberationExpertBinding,\n candidate: DeliberationCandidateInput,\n traceContext?: AgentTraceContext,\n ): Promise<RubricVerdict | null> {\n const images: LLMProvider_ImageContent[] | undefined =\n candidate.content.kind === FlowsActors_IO_PartKind.IMAGE\n ? [{ type: 'image', image: candidate.content.imageDataUri }]\n : undefined;\n const prompt = [\n plan.briefContext,\n '',\n this.renderRubricForPrompt(rubric),\n '',\n `# Candidate under review: \\`${candidate.ref}\\``,\n ActorsSystemBackendService.renderCandidateForPrompt(candidate.content),\n '',\n '# Your task',\n 'Score the candidate under EVERY criterion key of the `scores` object (the keys are the '\n + 'rubric refs — all required), give your recommendation '\n + '(accept / revise / reject), concrete `critiques` (targetAspect + critique + suggestion — '\n + 'these fuel the revision round; empty array only if genuinely flawless), and a short '\n + '`overallNote`. Follow your review protocol; judge only what you can observe.',\n reviewer.profile.reviewProtocol && reviewer.profile.reviewProtocol.length > 0\n ? `Your review protocol:\\n${reviewer.profile.reviewProtocol.map((step) => `- ${step}`).join('\\n')}`\n : '',\n ].filter((part) => part.length > 0).join('\\n');\n\n // PER-RUN wire schema: `scores` keyed by the rubric's exact criterion refs\n // (strict, all-required) — duplicate/omitted/hallucinated refs fail at the\n // DECODE layer instead of costing a full vision-call retry (live runs\n // showed 3/12 first attempts duplicating a ref under the array shape).\n const wireSchema = buildDeliberationReviewWireSchema(rubric);\n const output = await this.invokeDeliberationStructured<RubricVerdict>(\n reviewer.agentRef,\n prompt,\n wireSchema,\n (raw) => {\n const parsed = wireSchema.safeParse(raw);\n if (!parsed.success) return { ok: false, error: formatZodIssuesForRetryPrompt(parsed.error.issues) };\n // Reshape record → array in rubric order (the storage contract).\n const scores = rubric.criteria.map((criterion) => ({\n criterionRef: criterion.ref,\n ...parsed.data.scores[criterion.ref],\n }));\n const assembled = RubricVerdictSchema.safeParse({\n reviewerCharterRef: reviewer.profile.charterRef,\n candidateRef: candidate.ref,\n ...parsed.data,\n scores,\n });\n if (!assembled.success) return { ok: false, error: formatZodIssuesForRetryPrompt(assembled.error.issues) };\n const refCheck = validateVerdictCriterionRefs(rubric, assembled.data);\n if (!refCheck.ok) {\n return {\n ok: false,\n error: `Criterion refs do not match the rubric (unknown: [${refCheck.unknownRefs.join(', ')}], `\n + `missing: [${refCheck.missingRefs.join(', ')}], duplicate: [${refCheck.duplicateRefs.join(', ')}]).`,\n };\n }\n return { ok: true, value: assembled.data };\n },\n `review:${reviewer.profile.roleRef}:${candidate.ref}`,\n traceContext,\n images,\n );\n if (output === null) {\n this.logDebug('Deliberation reviewer dropped for this candidate (quorum note)', {\n deliberationRef: plan.deliberationRef,\n reviewer: reviewer.profile.charterRef,\n candidate: candidate.ref,\n });\n }\n return output;\n }\n\n /**\n * The sentinel for a candidate that CANNOT BE RANKED, covering both shapes: no\n * surviving verdict at all, and a verdict set that misses a required lens.\n *\n * One sentinel because the consequence is identical — it must not win on a\n * measurement that was not taken — and inventing a score for either is the thing\n * this whole aggregation refuses to do.\n */\n private static readonly UNRANKABLE_AGGREGATE = -1;\n\n /**\n * Deterministic per-candidate ranking: mean weighted aggregate across its verdicts,\n * and ONLY when every required lens scored that candidate.\n *\n * The round-level quorum above is not enough here, and the gap is exactly this\n * issue's defect one level down. `contributingLenses` is a set over ALL verdicts in\n * the round, so a reviewer that failed on candidate B but succeeded on candidate A\n * still satisfies quorum — and then this function divided by `own.length` PER\n * CANDIDATE. A 3-lens mean and a 1-lens mean were compared directly and fed the\n * shortlist fallback, which is \"one reviewer's opinion presented as consensus\"\n * surviving inside a panel that passed quorum.\n *\n * Compared as a SET of charter refs, not a count. That is the same lesson the\n * quorum check records against itself: a count matches when the wrong reviewer\n * answered twice, and `charterRef` — not `roleRef` — is what a verdict carries.\n */\n private computeCandidateAggregates(\n rubric: EvaluationRubric,\n candidates: DeliberationCandidateInput[],\n verdicts: RubricVerdict[],\n requiredLenses: ReadonlySet<string>,\n ): Map<string, number> {\n const aggregates = new Map<string, number>();\n for (const candidate of candidates) {\n const own = verdicts.filter((verdict) => verdict.candidateRef === candidate.ref);\n const scoredBy = new Set(own.map((verdict) => verdict.reviewerCharterRef));\n const missing = [...requiredLenses].filter((charterRef) => !scoredBy.has(charterRef));\n if (own.length === 0 || missing.length > 0) {\n // Rank last, never invent — and never average a subset into a comparable number.\n aggregates.set(candidate.ref, ActorsSystemBackendService.UNRANKABLE_AGGREGATE);\n continue;\n }\n const sum = own.reduce((total, verdict) => total + aggregateWeightedScore(rubric, verdict), 0);\n aggregates.set(candidate.ref, sum / own.length);\n }\n return aggregates;\n }\n\n private async invokeCoordinatorRound(\n plan: DeliberationPlan,\n rubric: EvaluationRubric,\n candidates: DeliberationCandidateInput[],\n verdicts: RubricVerdict[],\n aggregates: Map<string, number>,\n roundNumber: number,\n traceContext?: AgentTraceContext,\n ): Promise<DeliberationCoordinatorRoundOutput> {\n const prompt = [\n plan.briefContext,\n '',\n this.renderRubricForPrompt(rubric),\n '',\n this.renderVerdictsForPrompt(candidates, verdicts, aggregates),\n '',\n `# Your task — coordinate round ${roundNumber} of ${plan.roundBudget}`,\n 'Decide: `finalize` (the outcome is settled — a clear winner exists or another round would '\n + `not change it) or \\`revise_shortlist\\` (shortlist the strongest AT MOST ${plan.shortlistSize} `\n + 'candidate ref(s) for a critique-driven revision round). Echo candidate refs EXACTLY. On '\n + 'finalize, `shortlistRefs` is an empty array. Ground the rationale in the verdicts; dissent '\n + 'among reviewers is signal, not noise.',\n ].join('\\n');\n\n const output = await this.invokeDeliberationStructured<DeliberationCoordinatorRoundOutput>(\n plan.coordinator.agentRef,\n prompt,\n DeliberationCoordinatorRoundOutputSchema,\n (raw) => {\n const parsed = DeliberationCoordinatorRoundOutputStrictSchema.safeParse(raw);\n return parsed.success\n ? { ok: true, value: parsed.data }\n : { ok: false, error: formatZodIssuesForRetryPrompt(parsed.error.issues) };\n },\n `coordinator-round-${roundNumber}`,\n traceContext,\n );\n if (output === null) {\n // Coordinator failed twice — deterministic fallback: revise the top-K\n // (or finalize when this is the last round; the loop handles budget).\n this.logDebug('Coordinator round output failed twice — deterministic fallback', {\n deliberationRef: plan.deliberationRef, roundNumber,\n });\n return {\n directive: DeliberationRoundDirective.REVISE_SHORTLIST,\n shortlistRefs: this.topKByAggregate(candidates, aggregates, plan.shortlistSize),\n rationale: 'Coordinator output failed validation twice — deterministic top-K fallback applied.',\n };\n }\n return output;\n }\n\n /** Validate the coordinator's shortlist echo; fallback = top-K by aggregate. */\n /**\n * How the panel's lenses split on the winner — deterministic, from the final round's\n * verdicts.\n *\n * Counts DISTINCT lenses, keyed on `charterRef`, rather than verdicts.\n *\n * Honest about its own reach: with the panel floor refusing duplicate charters and the\n * orchestrator issuing exactly one call per reviewer×candidate, one lens cannot produce\n * two verdicts for one candidate today — so this Set is DEFENCE, not a live guard, and\n * no test can distinguish it from a length. It is kept because the alternative encodes\n * \"a verdict is a lens\", which is the assumption the floor above had to be corrected\n * for, and because a future retry-with-fallback path would make it live.\n *\n * Deliberately not asked of the coordinator. A model can round \"one accepted, one\n * wanted revision\" into \"the panel agreed\", and this number exists precisely so a\n * reader does not have to trust that prose.\n */\n private static computeConcurrence(winnerRef: string, verdicts: RubricVerdict[]): DeliberationConcurrence {\n const byLens = new Map<string, DeliberationRecommendation>();\n for (const verdict of verdicts) {\n if (verdict.candidateRef === winnerRef) byLens.set(verdict.reviewerCharterRef, verdict.recommendation);\n }\n const recommendations = [...byLens.values()];\n return {\n winnerRef,\n lensCount: byLens.size,\n byRecommendation: {\n accept: recommendations.filter((value) => value === DeliberationRecommendation.ACCEPT).length,\n revise: recommendations.filter((value) => value === DeliberationRecommendation.REVISE).length,\n reject: recommendations.filter((value) => value === DeliberationRecommendation.REJECT).length,\n },\n };\n }\n\n private resolveShortlist(\n plan: DeliberationPlan,\n candidates: DeliberationCandidateInput[],\n aggregates: Map<string, number>,\n proposedRefs: string[],\n ): string[] {\n const known = new Set(candidates.map((candidate) => candidate.ref));\n const valid = [...new Set(proposedRefs)].filter((ref) => known.has(ref)).slice(0, plan.shortlistSize);\n if (valid.length > 0) return valid;\n return this.topKByAggregate(candidates, aggregates, plan.shortlistSize);\n }\n\n private topKByAggregate(\n candidates: DeliberationCandidateInput[],\n aggregates: Map<string, number>,\n k: number,\n ): string[] {\n return [...candidates]\n .sort((a, b) => (aggregates.get(b.ref) ?? -1) - (aggregates.get(a.ref) ?? -1))\n .slice(0, Math.max(1, k))\n .map((candidate) => candidate.ref);\n }\n\n /**\n * Deterministic revision-prompt compilation (RF-4): the candidate's own\n * critiques from EVERY reviewer, verbatim. TEXT producers revise the\n * draft; IMAGE producers regenerate — the seam is identical.\n */\n private compileRevisionPrompt(candidate: DeliberationCandidateInput, verdicts: RubricVerdict[]): string {\n const critiques = verdicts\n .filter((verdict) => verdict.candidateRef === candidate.ref)\n .flatMap((verdict) => verdict.critiques.map((critique) =>\n `- [${verdict.reviewerCharterRef}] ${critique.targetAspect}: ${critique.critique} → ${critique.suggestion}`));\n return [\n `Revise candidate \\`${candidate.ref}\\` addressing EVERY panel critique below. Keep everything `\n + 'the panel did not challenge — this is a revision, not a rewrite.',\n '',\n '# Panel critiques',\n critiques.length > 0 ? critiques.join('\\n') : '- (none recorded — tighten overall craft)',\n ].join('\\n');\n }\n\n private async invokeSynthesis(\n plan: DeliberationPlan,\n rubric: EvaluationRubric,\n candidates: DeliberationCandidateInput[],\n verdicts: RubricVerdict[],\n aggregates: Map<string, number>,\n traceContext?: AgentTraceContext,\n ): Promise<DeliberationSynthesis> {\n const prompt = [\n plan.briefContext,\n '',\n this.renderRubricForPrompt(rubric),\n '',\n this.renderVerdictsForPrompt(candidates, verdicts, aggregates),\n '',\n '# Your task — final synthesis',\n 'Name the winning candidate ref (echo EXACTLY one of the refs above), the rationale grounded '\n + 'in the verdicts and rubric, and preserve every real dissent verbatim as '\n + '`{charterRef, position}` entries (empty array when the panel is unanimous). You are the '\n + 'manager: decide, do not average.',\n ].join('\\n');\n\n const reviewerRefs = new Set(plan.reviewers.map((reviewer) => reviewer.profile.charterRef));\n const output = await this.invokeDeliberationStructured<DeliberationSynthesis>(\n plan.coordinator.agentRef,\n prompt,\n DeliberationSynthesisSchema,\n (raw) => {\n const parsed = DeliberationSynthesisStrictSchema.safeParse(raw);\n return parsed.success\n ? { ok: true, value: parsed.data }\n : { ok: false, error: formatZodIssuesForRetryPrompt(parsed.error.issues) };\n },\n 'synthesis',\n traceContext,\n );\n if (output === null) {\n const fallbackWinner = this.topKByAggregate(candidates, aggregates, 1)[0];\n return {\n winnerRef: fallbackWinner,\n rationale: 'Coordinator synthesis failed validation twice — deterministic top-aggregate fallback applied.',\n dissent: [],\n };\n }\n // Echo-validate the winner; filter dissent to real panel members.\n const known = new Set(candidates.map((candidate) => candidate.ref));\n const winnerRef = known.has(output.winnerRef)\n ? output.winnerRef\n : this.topKByAggregate(candidates, aggregates, 1)[0];\n return {\n winnerRef,\n rationale: winnerRef === output.winnerRef\n ? output.rationale\n : `${output.rationale} [winnerRef '${output.winnerRef}' did not match a final candidate — deterministic top-aggregate fallback applied]`,\n dissent: output.dissent.filter((entry) => reviewerRefs.has(entry.charterRef)),\n };\n }\n\n private renderRubricForPrompt(rubric: EvaluationRubric): string {\n const criteria = rubric.criteria.map((criterion) =>\n `- \\`${criterion.ref}\\` (weight ${criterion.weight}): ${criterion.description} `\n + `[0 = ${criterion.scaleAnchors.low} · 100 = ${criterion.scaleAnchors.high}]`);\n return `# Evaluation rubric (constant for this deliberation)\\n${criteria.join('\\n')}`;\n }\n\n private renderVerdictsForPrompt(\n candidates: DeliberationCandidateInput[],\n verdicts: RubricVerdict[],\n aggregates: Map<string, number>,\n ): string {\n const blocks = candidates.map((candidate) => {\n const own = verdicts.filter((verdict) => verdict.candidateRef === candidate.ref);\n const aggregate = aggregates.get(candidate.ref);\n const lines = own.map((verdict) => {\n const scores = verdict.scores.map((score) => `${score.criterionRef}=${score.score}`).join(', ');\n return ` - [${verdict.reviewerCharterRef}] ${verdict.recommendation} (${scores}) — ${verdict.overallNote}`;\n });\n return `## Candidate \\`${candidate.ref}\\` — deterministic weighted aggregate: ${aggregate === undefined || aggregate < 0 ? 'n/a (no surviving verdicts)' : aggregate.toFixed(1)}\\n${lines.join('\\n') || ' - (no surviving verdicts)'}`;\n });\n return `# Panel verdicts\\n${blocks.join('\\n')}`;\n }\n}\n\n/**\n * Compact Zod issue formatting for retry prompts + errors.\n *\n * Deliberately UNBOUNDED (unlike `summarizeZodIssues`'s default cap): the\n * output is fed back to a model as the correction instruction, so eliding\n * issues would ask it to fix a partial list. Delegates the per-issue rendering\n * to the canonical formatter in `@wildo-ai/saas-models` so path and root-label\n * semantics match every other surface.\n */\nfunction formatZodIssuesForRetryPrompt(issues: ReadonlyArray<FormattableZodIssue>): string {\n return summarizeZodIssues(issues, { limit: ALL_ZOD_ISSUES });\n}\n\n"]}
1
+ {"version":3,"file":"actors-system.backend.service.js","sourceRoot":"","sources":["../../../../../src/flows-actors/services/actors-system.backend.service.ts"],"names":[],"mappings":"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","sourcesContent":["import 'reflect-metadata';\nimport { injectable, inject } from 'inversify';\nimport { SAAS_SERVICE_TYPES } from '~wildo-backend-lib/inject/models/service-types';\nimport { LoggerService } from '~wildo-backend-lib/monitoring/logger/services/logger.service';\nimport { ErrorBuilderBackendService } from '~wildo-backend-lib/errors/services/error-builder.backend.service';\nimport { FlowsActorsRegistryService } from './flows-actors-registry.service';\nimport { AgentsBackendService } from './agents.backend.service';\nimport {\n FlowActorSystem,\n FlowActorSystem_Kind,\n FlowActorSystem_Status,\n FlowsActors_Status\n} from '@wildo-ai/saas-models';\nimport {\n ErrorType,\n ErrorCustomMessageReference\n} from '@wildo-ai/saas-models';\nimport {\n ActorSystem,\n ActorSystem_Execution,\n Actors_Task_Schema,\n} from '@wildo-ai/saas-models';\nimport {\n aggregateWeightedScore,\n buildDeliberationReviewWireSchema,\n DeliberationCandidateProvenance,\n DeliberationRecommendation,\n type DeliberationConcurrence,\n DeliberationCoordinatorRoundOutputSchema,\n DeliberationCoordinatorRoundOutputStrictSchema,\n DeliberationRecordSchema,\n DeliberationRoundDirective,\n DeliberationRubricOutputSchema,\n DeliberationRubricOutputStrictSchema,\n DeliberationStatus,\n DeliberationSynthesisSchema,\n DeliberationSynthesisStrictSchema,\n EvaluationRubricSchema,\n FlowsActors_IO_PartKind,\n RubricVerdictSchema,\n validateVerdictCriterionRefs,\n type AgentTraceContext,\n type DeliberationCandidate,\n type DeliberationCandidateContent,\n type DeliberationCandidateInput,\n type DeliberationCoordinatorRoundOutput,\n type DeliberationExpertBinding,\n type DeliberationPlan,\n type DeliberationRecord,\n type DeliberationRound,\n type DeliberationRubricOutput,\n type DeliberationSynthesis,\n type EvaluationRubric,\n type FlowsActors_Agent_Invocation,\n type RubricVerdict,\n} from '@wildo-ai/saas-models';\nimport {\n ALL_ZOD_ISSUES,\n summarizeZodIssues,\n type FormattableZodIssue,\n} from '@wildo-ai/saas-models';\nimport {\n LLMProvider_GenerateStructuredInputSchema,\n LLMProvider_GenerateStructuredOutputSchema,\n type LLMProvider_ImageContent,\n} from '@wildo-ai/external-connectors-models';\nimport type { ZodType } from 'zod';\n\n/**\n * Actors System Backend Service\n *\n * Manages actor execution and event-driven reactive behaviors.\n * Coordinates actor lifecycle, trigger handling, and agentic execution.\n *\n * Features:\n * - Actor execution management\n * - Event trigger handling\n * - Reactive behavior orchestration\n * - Agentic mode execution\n * - State management\n * - Task planning and execution\n */\n@injectable()\nexport class ActorsSystemBackendService {\n\n protected logDebug: (message: string, context?: Record<string, unknown>) => void;\n\n constructor(\n @inject(SAAS_SERVICE_TYPES.Logger) private readonly logger: LoggerService,\n @inject(SAAS_SERVICE_TYPES.ErrorBuilderService) private readonly errorBuilder: ErrorBuilderBackendService,\n @inject(SAAS_SERVICE_TYPES.FlowsActorsRegistryService) private readonly flowsActorsRegistry: FlowsActorsRegistryService,\n @inject(SAAS_SERVICE_TYPES.AgentsBackendService) private readonly agentsService: AgentsBackendService,\n ) {\n this.logDebug = this.logger.debugByType('ActorsSystem');\n this.logger.setDebugTypeLogging('ActorsSystem', true);\n\n this.logDebug('Actors system backend service created');\n }\n\n // ================================\n // Actor Execution\n // ================================\n\n /**\n * Execute an actor\n * Accepts ActorSystem_Execution and executes it\n */\n public async executeActor(execution: ActorSystem_Execution): Promise<ActorSystem_Execution> {\n this.logDebug('Executing actor', {\n actorRef: execution.systemRef,\n executionId: execution._id,\n hasInitiator: !!execution.initiator\n });\n\n // Get actor from registry\n const actor = this.flowsActorsRegistry.getSystemOrThrow(execution.systemRef, FlowActorSystem_Kind.ACTOR);\n\n // Validate it's an actor\n this.validateIsActor(actor);\n\n // Validate actor status\n this.validateActorStatus(actor);\n\n // Execute actor behavior\n const updatedExecution = await this.executeActorBehavior(actor, execution);\n\n this.logDebug('Actor execution completed', {\n actorRef: execution.systemRef,\n executionId: updatedExecution._id || 'unknown',\n status: updatedExecution.status\n });\n\n return updatedExecution;\n }\n\n /**\n * Execute actor behavior based on configuration\n */\n private async executeActorBehavior(\n actor: FlowActorSystem,\n execution: ActorSystem_Execution\n ): Promise<ActorSystem_Execution> {\n this.logDebug('Executing actor behavior', {\n actorRef: actor.ref,\n executionId: execution._id\n });\n\n // TODO: Implement actual actor behavior execution\n // This will involve:\n // 1. Processing trigger event (from execution context or metadata)\n // 2. Determining actor mode (reactive, agentic)\n // 3. Creating Actors_Task if needed\n // 4. Executing appropriate behavior (agentic, flow execution, human interaction)\n // 5. Managing actor state\n // 6. Updating standaloneTasks and standaloneTaskStates\n\n // For now, update execution status\n return {\n ...execution,\n status: FlowsActors_Status.COMPLETED,\n finishedAt: new Date().toISOString(),\n updatedAt: new Date().toISOString(),\n statusChanges: [\n ...execution.statusChanges,\n {\n status: FlowsActors_Status.COMPLETED,\n timestamp: new Date().toISOString(),\n },\n ],\n };\n }\n\n // ================================\n // Actor Validation\n // ================================\n\n /**\n * Validate system is an actor\n */\n private validateIsActor(system: FlowActorSystem): void {\n if (system.kind !== FlowActorSystem_Kind.ACTOR) {\n throw this.errorBuilder.buildError(\n ErrorType.VALIDATION,\n undefined,\n {\n customMessageReference: ErrorCustomMessageReference.ACTOR_INVALID_KIND,\n context: {\n // diagnostic (log-only)\n systemRef: system.ref,\n kind: system.kind,\n }\n }\n );\n }\n }\n\n /**\n * Validate actor status before execution\n */\n private validateActorStatus(actor: FlowActorSystem): void {\n if (actor.status !== FlowActorSystem_Status.ACTIVE) {\n throw this.errorBuilder.buildError(\n ErrorType.VALIDATION,\n undefined,\n {\n customMessageReference: ErrorCustomMessageReference.ACTOR_NOT_ACTIVE,\n context: {\n // diagnostic (log-only)\n actorRef: actor.ref,\n status: actor.status,\n }\n }\n );\n }\n }\n\n // ================================\n // Execution Context Management\n // ================================\n\n\n // ================================\n // Actor Discovery\n // ================================\n\n /**\n * Get all available actors\n */\n public getAvailableActors(): ActorSystem[] {\n return this.flowsActorsRegistry.getActors().filter(\n actor => actor.status === FlowActorSystem_Status.ACTIVE\n );\n }\n\n /**\n * Get actor by reference\n */\n public getActor(actorRef: string): ActorSystem | undefined {\n const system = this.flowsActorsRegistry.getSystem(actorRef, FlowActorSystem_Kind.ACTOR);\n if (system && system.kind === FlowActorSystem_Kind.ACTOR) {\n return system;\n }\n return undefined;\n }\n\n /**\n * Get actor or throw\n */\n public getActorOrThrow(actorRef: string): ActorSystem {\n const actor = this.getActor(actorRef);\n if (!actor) {\n throw this.errorBuilder.buildError(\n ErrorType.NOT_FOUND,\n undefined,\n {\n customMessageReference: ErrorCustomMessageReference.NOT_FOUND,\n context: { actorRef }\n }\n );\n }\n return actor;\n }\n\n // ================================\n // Event Trigger Management\n // ================================\n\n /**\n * Register actor for event trigger\n */\n public registerActorTrigger(actorRef: string, triggerType: string): void {\n const actor = this.getActorOrThrow(actorRef);\n\n // TODO: Implement trigger registration\n // This will involve registering the actor to listen for specific events\n\n this.logDebug('Actor trigger registered', {\n actorRef,\n triggerType\n });\n }\n\n /**\n * Unregister actor from event trigger\n */\n public unregisterActorTrigger(actorRef: string, triggerType: string): void {\n const actor = this.getActorOrThrow(actorRef);\n\n // TODO: Implement trigger unregistration\n\n this.logDebug('Actor trigger unregistered', {\n actorRef,\n triggerType\n });\n }\n\n // ================================\n // Debug Methods\n // ================================\n\n public getDebugInfo(): {\n totalActors: number;\n activeActors: number;\n actorRefs: string[];\n } {\n const allActors = this.flowsActorsRegistry.getActors();\n const activeActors = allActors.filter(a => a.status === FlowActorSystem_Status.ACTIVE);\n\n return {\n totalActors: allActors.length,\n activeActors: activeActors.length,\n actorRefs: allActors.map(a => a.ref),\n };\n }\n\n // ================================\n // Deliberation orchestration\n // ------------------------------\n // The first REAL actor-system workload: a bounded, auditable\n // critique-revise deliberation over candidate work products, run by\n // narrow expert personas (agents built from app-derived charters).\n //\n // Ownership split (agentic deliberation system, Step 3):\n // - The ENGINE (here) owns the orchestration SEMANTICS: per-run rubric\n // derivation (embedded, constant across rounds), parallel panel\n // reviews with fail-closed criterion-ref validation (one retry, then\n // quorum-drop), coordinator shortlist/convergence (RF-5 cost funnel),\n // deterministic revision-prompt compilation (RF-4), synthesis with\n // echo-validation fallbacks, and `DeliberationRecord` assembly.\n // - The CALLER (dev companion) owns charters, agents, candidate BYTES\n // (the plan's `producer` callback persists revisions), and record\n // persistence — this method RETURNS the record and never writes disk\n // (RF-2).\n //\n // Every identity/provenance field is stamped HERE deterministically —\n // models author scores/critiques/directives, never their own audit\n // trail. Model-computed arithmetic is never trusted: candidate ranking\n // uses `aggregateWeightedScore` over validated verdicts.\n // ================================\n\n public async executeDeliberation(\n plan: DeliberationPlan,\n traceContext?: AgentTraceContext,\n ): Promise<DeliberationRecord> {\n this.validateDeliberationPlan(plan);\n const startedAt = new Date().toISOString();\n this.logDebug('Deliberation started', {\n deliberationRef: plan.deliberationRef,\n workDomain: plan.workDomain,\n subjectKind: plan.subjectKind,\n reviewers: plan.reviewers.length,\n candidates: plan.initialCandidates.length,\n roundBudget: plan.roundBudget,\n });\n\n // ── Rubric: derived ONCE at start, constant across rounds ──\n const rubric = await this.deriveDeliberationRubric(plan, traceContext);\n\n // Candidate provenance bookkeeping (refs → how they entered).\n const provenanceByRef = new Map<string, DeliberationCandidate>();\n for (const candidate of plan.initialCandidates) {\n provenanceByRef.set(candidate.ref, {\n ref: candidate.ref,\n provenance: DeliberationCandidateProvenance.ORIGINAL,\n storageRef: candidate.storageRef,\n });\n }\n\n let currentCandidates: DeliberationCandidateInput[] = [...plan.initialCandidates];\n const rounds: DeliberationRound[] = [];\n let status: DeliberationStatus = DeliberationStatus.RUNNING;\n let finalVerdicts: RubricVerdict[] = [];\n let finalAggregates = new Map<string, number>();\n\n for (let roundNumber = 1; roundNumber <= plan.roundBudget; roundNumber += 1) {\n // ── Panel review: all candidates × all reviewers, in parallel ──\n const verdicts = await this.collectRoundVerdicts(plan, rubric, currentCandidates, traceContext);\n /*\n * QUORUM is coverage of the required LENSES, never a count of surviving calls.\n *\n * The floor here used to be `verdicts.length === 0` — so a three-reviewer panel whose other two\n * calls failed validation scored on ONE survivor, aggregated it, and returned a record that\n * reads exactly like a three-lens deliberation. That is the failure a panel exists to prevent:\n * its value is the DISTINCTNESS of the lenses, and averaging over a subset silently changes what\n * was measured while changing nothing a reader can see.\n *\n * Every configured reviewer is a required lens. A missing one BLOCKS AGGREGATION — you cannot\n * score what you did not measure — and `coverage ≠ quorum` is the mined rule this implements:\n * quorum counts valid admitted contributions plus required distinctness groups, never seats.\n *\n * It stays an INTERNAL (technical) failure, deliberately. A reviewer whose call failed produced\n * no semantic verdict, and dressing a transport failure as a deliberation outcome is exactly\n * what `app-creation-judge-growth.md` forbids: \"technical failure is never a semantic verdict.\"\n * The round is refused and re-runnable; nothing is recorded as a decision.\n */\n const contributingLenses = new Set(verdicts.map((verdict) => verdict.reviewerCharterRef));\n /*\n * Compared on `charterRef`, which is what a verdict carries — NOT `roleRef`.\n *\n * The first version of this compared role refs and reported \"2 of 2 lenses missing\" while the\n * same message said 2 had answered. Every lens looked absent because no verdict could ever match,\n * so the check refused every round it was given. Loud, and therefore cheap; a comparison that had\n * happened to match on some inputs would have refused only sometimes.\n */\n const requiredLenses = new Set(plan.reviewers.map((reviewer) => reviewer.profile.charterRef));\n const missingLenses = [...requiredLenses].filter((charterRef) => !contributingLenses.has(charterRef));\n if (missingLenses.length > 0) {\n throw this.errorBuilder.buildError(ErrorType.INTERNAL, undefined, {\n customMessageReference: ErrorCustomMessageReference.INTERNAL,\n context: {\n message: `Deliberation '${plan.deliberationRef}' round ${roundNumber}: `\n + `${missingLenses.length} of ${plan.reviewers.length} required reviewer lens(es) produced no valid verdict `\n + `after retries (${missingLenses.join(', ')}). Aggregating the ${contributingLenses.size} that answered would `\n + 'report a full panel while measuring a subset, so the round is refused rather than scored. Re-run.',\n },\n });\n }\n const aggregates = this.computeCandidateAggregates(rubric, currentCandidates, verdicts, requiredLenses);\n finalVerdicts = verdicts;\n finalAggregates = aggregates;\n\n // ── Coordinator: converge or shortlist ─────────────────────\n const decision = await this.invokeCoordinatorRound(\n plan, rubric, currentCandidates, verdicts, aggregates, roundNumber, traceContext,\n );\n\n const roundEntry: DeliberationRound = {\n roundNumber,\n candidateSet: currentCandidates.map((candidate) => {\n const tracked = provenanceByRef.get(candidate.ref);\n // Every current candidate was registered at entry; the map is\n // maintained by this loop, so absence is a programming error.\n return tracked as DeliberationCandidate;\n }),\n verdicts,\n };\n\n if (decision.directive === DeliberationRoundDirective.FINALIZE) {\n rounds.push(roundEntry);\n status = DeliberationStatus.CONVERGED;\n break;\n }\n if (roundNumber === plan.roundBudget) {\n rounds.push(roundEntry);\n status = DeliberationStatus.BUDGET_EXHAUSTED;\n break;\n }\n\n // ── Shortlist (validated, fallback = top-K by aggregate) ───\n const shortlistRefs = this.resolveShortlist(plan, currentCandidates, aggregates, decision.shortlistRefs);\n rounds.push({ ...roundEntry, shortlistRefs });\n\n // ── Revision: producer callback per shortlisted candidate ──\n const revised: DeliberationCandidateInput[] = [];\n for (const shortRef of shortlistRefs) {\n const parent = currentCandidates.find((candidate) => candidate.ref === shortRef) as DeliberationCandidateInput;\n const revisionPrompt = this.compileRevisionPrompt(parent, verdicts);\n const child = await plan.producer.produceRevision(parent, revisionPrompt);\n if (provenanceByRef.has(child.ref)) {\n throw this.errorBuilder.buildError(ErrorType.INTERNAL, undefined, {\n customMessageReference: ErrorCustomMessageReference.INTERNAL,\n context: {\n message: `Deliberation '${plan.deliberationRef}': the producer returned candidate ref `\n + `'${child.ref}' which already exists — revision refs must be fresh.`,\n },\n });\n }\n provenanceByRef.set(child.ref, {\n ref: child.ref,\n provenance: DeliberationCandidateProvenance.REVISED,\n revisedFromRef: parent.ref,\n revisionPrompt,\n storageRef: child.storageRef,\n });\n revised.push(child);\n }\n currentCandidates = revised;\n this.logDebug('Deliberation round revised', {\n deliberationRef: plan.deliberationRef,\n roundNumber,\n shortlist: shortlistRefs,\n });\n }\n\n /*\n * REJECT-ALL IS A RESULT, and it is checked BEFORE synthesis on purpose.\n *\n * `DeliberationRecommendation.REJECT` was required on every verdict and read by\n * NOTHING — so a field every reviewer rejected still went to a coordinator whose\n * whole job is to name a winner, and it named one. That artifact then landed\n * carrying the panel's authority over a decision the panel had refused.\n *\n * Asking the coordinator to decline instead would be the wrong seam twice over:\n * it is a model call, so it can be talked out of it, and the record would show a\n * synthesis saying \"none\" rather than the ABSENCE of one. This is deterministic\n * and structural — no winner is synthesised, because there is nothing to\n * synthesise from.\n *\n * A candidate is panel-rejected when EVERY lens that scored it said REJECT.\n * Unanimity is deliberately the bar: one dissenting ACCEPT or REVISE means the\n * panel disagreed, and disagreement is what a deliberation is FOR — it belongs in\n * `dissent`, not in a refusal. A candidate nobody could score cannot rescue the\n * field either, so only scored candidates are considered.\n */\n const scoredCandidates = currentCandidates.filter((candidate) =>\n finalVerdicts.some((verdict) => verdict.candidateRef === candidate.ref));\n const survivingCandidates = scoredCandidates.filter((candidate) =>\n finalVerdicts.some((verdict) =>\n verdict.candidateRef === candidate.ref && verdict.recommendation !== DeliberationRecommendation.REJECT));\n\n if (scoredCandidates.length > 0 && survivingCandidates.length === 0) {\n const rejectedRecord = DeliberationRecordSchema.parse({\n deliberationRef: plan.deliberationRef,\n workDomain: plan.workDomain,\n subjectKind: plan.subjectKind,\n rubric,\n participants: {\n producerAgentRef: plan.producerAgentRef,\n reviewerCharterRefs: plan.reviewers.map((reviewer) => reviewer.profile.charterRef),\n coordinatorCharterRef: plan.coordinator.profile.charterRef,\n },\n rounds,\n // No synthesis: the schema documents its absence for exactly this state.\n roundBudget: plan.roundBudget,\n status: DeliberationStatus.REJECTED,\n humanDecision: null,\n startedAt,\n finishedAt: new Date().toISOString(),\n });\n this.logDebug('Deliberation rejected every candidate', {\n deliberationRef: plan.deliberationRef,\n rounds: rounds.length,\n candidates: scoredCandidates.length,\n });\n return rejectedRecord;\n }\n\n // ── Synthesis (coordinator; echo-validated with deterministic fallback) ──\n const synthesis = await this.invokeSynthesis(\n plan, rubric, currentCandidates, finalVerdicts, finalAggregates, traceContext,\n );\n\n const record = DeliberationRecordSchema.parse({\n deliberationRef: plan.deliberationRef,\n workDomain: plan.workDomain,\n subjectKind: plan.subjectKind,\n rubric,\n participants: {\n producerAgentRef: plan.producerAgentRef,\n reviewerCharterRefs: plan.reviewers.map((reviewer) => reviewer.profile.charterRef),\n coordinatorCharterRef: plan.coordinator.profile.charterRef,\n },\n rounds,\n synthesis,\n concurrence: ActorsSystemBackendService.computeConcurrence(synthesis.winnerRef, finalVerdicts),\n roundBudget: plan.roundBudget,\n status,\n humanDecision: null,\n startedAt,\n finishedAt: new Date().toISOString(),\n });\n this.logDebug('Deliberation finished', {\n deliberationRef: plan.deliberationRef,\n status,\n rounds: rounds.length,\n winnerRef: synthesis.winnerRef,\n });\n return record;\n }\n\n /** Fail-closed plan validation (subject modality, panel, budgets, ref uniqueness). */\n private validateDeliberationPlan(plan: DeliberationPlan): void {\n if (\n plan.subjectKind !== FlowsActors_IO_PartKind.TEXT\n && plan.subjectKind !== FlowsActors_IO_PartKind.IMAGE\n && plan.subjectKind !== FlowsActors_IO_PartKind.STRUCTURED\n ) {\n // Still fail-closed, and deliberately still a SHORT list: FILE, RAW_DATA,\n // AUDIO and VIDEO have no reviewer-side rendering, so admitting one would\n // hand a panel a candidate it cannot actually look at. STRUCTURED joined\n // 2026-08-29 because it acquired one (`renderCandidateForPrompt`).\n throw this.errorBuilder.buildError(ErrorType.VALIDATION, undefined, {\n customMessageReference: ErrorCustomMessageReference.VALIDATION,\n context: {\n message: `Deliberation subjectKind '${plan.subjectKind}' has no honest transport yet — `\n + `only TEXT, IMAGE and STRUCTURED are supported (fail-closed).`,\n },\n });\n }\n /*\n * TWO reviewers, not one. A panel's value IS the distinctness of its lenses, so a\n * single reviewer is not a small panel — it is a category error wearing a panel's\n * record: `dissent` is structurally always empty, the \"synthesis\" echoes the one\n * verdict it was given, and the result reads exactly like a deliberated outcome.\n * That is issue #56's title, and the floor was `=== 0`.\n *\n * The coordinator does not count toward it. It is the manager hat — shortlist,\n * convergence, synthesis — and is deliberately NOT domain-gated, so it is not a\n * lens. It MAY also hold a reviewer seat (the logo lane's `brand-strategist` does,\n * and so does placement's `design-system-guardian`): a chair with a vote is a\n * normal panel, and what this floor refuses is a panel with only a chair.\n *\n * Nobody is broken by this: the logo lane convenes three reviewers, placement two.\n * A caller wanting ONE opinion wants the JUDGE tier (`runPlaybookJudge`), which is\n * a different mechanism with an honest name.\n */\n /*\n * Counted as DISTINCT LENSES, not bindings — found by mutation-testing the first\n * version of this floor, which counted `plan.reviewers.length`. Two bindings of the\n * SAME charter is one lens wearing two seats: the floor passed, the quorum passed\n * (its `requiredLenses` is a Set, so it saw one), and the record reported a\n * two-reviewer panel over a single opinion. That is this issue's exact defect,\n * re-entering through the guard written to close it.\n */\n const distinctLenses = new Set(plan.reviewers.map((reviewer) => reviewer.profile.charterRef));\n if (distinctLenses.size < 2 || plan.initialCandidates.length === 0\n || plan.roundBudget < 1 || plan.shortlistSize < 1) {\n throw this.errorBuilder.buildError(ErrorType.VALIDATION, undefined, {\n customMessageReference: ErrorCustomMessageReference.VALIDATION,\n context: {\n message: 'A deliberation needs ≥2 DISTINCT reviewer lenses (a panel of one is a judge, not a deliberation — see runPlaybookJudge; two seats holding the same charter is still one lens), ≥1 candidate, roundBudget ≥1 and shortlistSize ≥1.',\n },\n });\n }\n const refs = new Set(plan.initialCandidates.map((candidate) => candidate.ref));\n if (refs.size !== plan.initialCandidates.length) {\n throw this.errorBuilder.buildError(ErrorType.VALIDATION, undefined, {\n customMessageReference: ErrorCustomMessageReference.VALIDATION,\n context: { message: 'Initial candidate refs must be unique.' },\n });\n }\n }\n\n /**\n * Invoke a GENERATE_STRUCTURED agent and strict-validate; ONE retry with\n * the validation error surfaced in the prompt, then `null` (the caller\n * decides drop-vs-throw). The deliberation's shared fail-closed seam.\n */\n private async invokeDeliberationStructured<T>(\n agentRef: string,\n prompt: string,\n schema: ZodType,\n strictParse: (raw: unknown) => { ok: true; value: T } | { ok: false; error: string },\n label: string,\n traceContext?: AgentTraceContext,\n images?: LLMProvider_ImageContent[],\n ): Promise<T | null> {\n // Local to the call: reviews run in PARALLEL, so an instance-level scratch\n // slot would cross-thread another reviewer's rejection into this retry.\n let lastError: string | undefined;\n for (let attempt = 1; attempt <= 2; attempt += 1) {\n const attemptPrompt = attempt === 1 ? prompt : `${prompt}\\n\\n# PREVIOUS ATTEMPT REJECTED\\n${lastError ?? ''}\\nCorrect the output to satisfy the contract exactly.`;\n const input: { prompt: string; schema: ZodType; images?: LLMProvider_ImageContent[] } = {\n prompt: attemptPrompt,\n schema,\n };\n if (images !== undefined && images.length > 0) input.images = images;\n const invocation: FlowsActors_Agent_Invocation<\n typeof LLMProvider_GenerateStructuredInputSchema,\n typeof LLMProvider_GenerateStructuredOutputSchema\n > = {\n agentRef,\n initiator: {},\n invocationContext: [],\n input,\n output: { object: {} },\n executionContext: {},\n artifactBindings: [],\n };\n const response = await this.agentsService.invokeAgent(invocation, traceContext);\n const raw = (response.output as { object?: unknown } | undefined)?.object;\n const parsed = strictParse(raw);\n if (parsed.ok) {\n return parsed.value;\n }\n // Safe by construction: the callback's return union is closed and\n // `ok: false` implies the error member. TS cannot narrow unions whose\n // other member references an unresolved type parameter (long-standing\n // generics-narrowing limitation), hence the explicit assertion.\n const failure = parsed as { ok: false; error: string };\n lastError = failure.error;\n this.logDebug('Deliberation structured output rejected', { agentRef, label, attempt, error: failure.error });\n }\n return null;\n }\n\n /** Derive the run's rubric from the domain-owner expert (retry once; then throw). */\n private async deriveDeliberationRubric(\n plan: DeliberationPlan,\n traceContext?: AgentTraceContext,\n ): Promise<EvaluationRubric> {\n const deriver = plan.rubricDeriver;\n const prompt = [\n plan.briefContext,\n '',\n '# Your task — derive the evaluation RUBRIC for this deliberation',\n `Work domain: ${plan.workDomain}. Derive 4–7 evaluation criteria this panel will score every `\n + 'candidate against (0–100 each). Each criterion: a stable kebab-case `ref`, a one-to-two '\n + 'sentence `description`, a positive `weight` reflecting its real importance for THIS '\n + 'application, and `scaleAnchors` pinning what 0 and 100 MEAN so two reviewers score '\n + 'commensurably. Ground every criterion and weight in the brief; refs must be UNIQUE.',\n deriver.profile.qualityBar && deriver.profile.qualityBar.length > 0\n ? `Seed the 100-end scale anchors from your quality bar:\\n${deriver.profile.qualityBar.map((entry) => `- ${entry}`).join('\\n')}`\n : '',\n ].filter((part) => part.length > 0).join('\\n');\n\n const output = await this.invokeDeliberationStructured<DeliberationRubricOutput>(\n deriver.agentRef,\n prompt,\n DeliberationRubricOutputSchema,\n (raw) => {\n const parsed = DeliberationRubricOutputStrictSchema.safeParse(raw);\n if (!parsed.success) return { ok: false, error: formatZodIssuesForRetryPrompt(parsed.error.issues) };\n const assembled = EvaluationRubricSchema.safeParse({\n workDomain: plan.workDomain,\n derivedFromCharterRef: deriver.profile.charterRef,\n criteria: parsed.data.criteria,\n derivedAt: new Date().toISOString(),\n });\n if (!assembled.success) return { ok: false, error: formatZodIssuesForRetryPrompt(assembled.error.issues) };\n return { ok: true, value: parsed.data };\n },\n 'rubric-derivation',\n traceContext,\n );\n if (output === null) {\n throw this.errorBuilder.buildError(ErrorType.INTERNAL, undefined, {\n customMessageReference: ErrorCustomMessageReference.INTERNAL,\n context: {\n message: `Deliberation '${plan.deliberationRef}': rubric derivation failed validation twice `\n + `(agent ${deriver.agentRef}). Re-run.`,\n },\n });\n }\n return EvaluationRubricSchema.parse({\n workDomain: plan.workDomain,\n derivedFromCharterRef: deriver.profile.charterRef,\n criteria: output.criteria,\n derivedAt: new Date().toISOString(),\n });\n }\n\n /** All candidates × all reviewers, parallel; failed verdicts are quorum-dropped. */\n private async collectRoundVerdicts(\n plan: DeliberationPlan,\n rubric: EvaluationRubric,\n candidates: DeliberationCandidateInput[],\n traceContext?: AgentTraceContext,\n ): Promise<RubricVerdict[]> {\n const tasks: Array<Promise<RubricVerdict | null>> = [];\n for (const candidate of candidates) {\n for (const reviewer of plan.reviewers) {\n tasks.push(this.reviewOneCandidate(plan, rubric, reviewer, candidate, traceContext));\n }\n }\n const settled = await Promise.all(tasks);\n return settled.filter((verdict): verdict is RubricVerdict => verdict !== null);\n }\n\n /**\n * What a reviewer is SHOWN for one candidate.\n *\n * Exhaustive over the content union on purpose: a fourth kind is a compile\n * error here rather than a candidate that silently renders as nothing. The\n * `validateDeliberationPlan` allow-list and this switch are the two halves of\n * \"the panel can actually look at it\", and they must move together.\n *\n * For STRUCTURED the VALUE is always rendered. An optional `projection` is\n * framing placed above it, never a substitute — see the type's docstring for\n * why a projection-only rendering would let the panel score prose while the\n * winner is the data.\n */\n private static renderCandidateForPrompt(content: DeliberationCandidateContent): string {\n switch (content.kind) {\n case FlowsActors_IO_PartKind.TEXT:\n return content.text;\n case FlowsActors_IO_PartKind.IMAGE:\n return '- The candidate IMAGE is ATTACHED to this message. Judge what you actually SEE.';\n case FlowsActors_IO_PartKind.STRUCTURED:\n return [\n ...(content.projection ? [content.projection, ''] : []),\n 'The candidate is STRUCTURED DATA. The JSON below is the candidate itself —'\n + ' it is exactly what wins if you rank it first. Judge the DATA; where any'\n + ' surrounding description disagrees with it, the DATA is authoritative.',\n '',\n '```json',\n JSON.stringify(content.value, null, 2),\n '```',\n ].join('\\n');\n default: {\n const unreachable: never = content;\n return unreachable;\n }\n }\n }\n\n private async reviewOneCandidate(\n plan: DeliberationPlan,\n rubric: EvaluationRubric,\n reviewer: DeliberationExpertBinding,\n candidate: DeliberationCandidateInput,\n traceContext?: AgentTraceContext,\n ): Promise<RubricVerdict | null> {\n const images: LLMProvider_ImageContent[] | undefined =\n candidate.content.kind === FlowsActors_IO_PartKind.IMAGE\n ? [{ type: 'image', image: candidate.content.imageDataUri }]\n : undefined;\n const prompt = [\n plan.briefContext,\n '',\n this.renderRubricForPrompt(rubric),\n '',\n `# Candidate under review: \\`${candidate.ref}\\``,\n ActorsSystemBackendService.renderCandidateForPrompt(candidate.content),\n '',\n '# Your task',\n 'Score the candidate under EVERY criterion key of the `scores` object (the keys are the '\n + 'rubric refs — all required), give your recommendation '\n + '(accept / revise / reject), concrete `critiques` (targetAspect + critique + suggestion — '\n + 'these fuel the revision round; empty array only if genuinely flawless), and a short '\n + '`overallNote`. Follow your review protocol; judge only what you can observe.',\n reviewer.profile.reviewProtocol && reviewer.profile.reviewProtocol.length > 0\n ? `Your review protocol:\\n${reviewer.profile.reviewProtocol.map((step) => `- ${step}`).join('\\n')}`\n : '',\n ].filter((part) => part.length > 0).join('\\n');\n\n // PER-RUN wire schema: `scores` keyed by the rubric's exact criterion refs\n // (strict, all-required) — duplicate/omitted/hallucinated refs fail at the\n // DECODE layer instead of costing a full vision-call retry (live runs\n // showed 3/12 first attempts duplicating a ref under the array shape).\n const wireSchema = buildDeliberationReviewWireSchema(rubric);\n const output = await this.invokeDeliberationStructured<RubricVerdict>(\n reviewer.agentRef,\n prompt,\n wireSchema,\n (raw) => {\n const parsed = wireSchema.safeParse(raw);\n if (!parsed.success) return { ok: false, error: formatZodIssuesForRetryPrompt(parsed.error.issues) };\n // Reshape record → array in rubric order (the storage contract).\n const scores = rubric.criteria.map((criterion) => ({\n criterionRef: criterion.ref,\n ...parsed.data.scores[criterion.ref],\n }));\n const assembled = RubricVerdictSchema.safeParse({\n reviewerCharterRef: reviewer.profile.charterRef,\n candidateRef: candidate.ref,\n ...parsed.data,\n scores,\n });\n if (!assembled.success) return { ok: false, error: formatZodIssuesForRetryPrompt(assembled.error.issues) };\n const refCheck = validateVerdictCriterionRefs(rubric, assembled.data);\n if (!refCheck.ok) {\n return {\n ok: false,\n error: `Criterion refs do not match the rubric (unknown: [${refCheck.unknownRefs.join(', ')}], `\n + `missing: [${refCheck.missingRefs.join(', ')}], duplicate: [${refCheck.duplicateRefs.join(', ')}]).`,\n };\n }\n return { ok: true, value: assembled.data };\n },\n `review:${reviewer.profile.roleRef}:${candidate.ref}`,\n traceContext,\n images,\n );\n if (output === null) {\n this.logDebug('Deliberation reviewer dropped for this candidate (quorum note)', {\n deliberationRef: plan.deliberationRef,\n reviewer: reviewer.profile.charterRef,\n candidate: candidate.ref,\n });\n }\n return output;\n }\n\n /**\n * The sentinel for a candidate that CANNOT BE RANKED, covering both shapes: no\n * surviving verdict at all, and a verdict set that misses a required lens.\n *\n * One sentinel because the consequence is identical — it must not win on a\n * measurement that was not taken — and inventing a score for either is the thing\n * this whole aggregation refuses to do.\n */\n private static readonly UNRANKABLE_AGGREGATE = -1;\n\n /**\n * Deterministic per-candidate ranking: mean weighted aggregate across its verdicts,\n * and ONLY when every required lens scored that candidate.\n *\n * The round-level quorum above is not enough here, and the gap is exactly this\n * issue's defect one level down. `contributingLenses` is a set over ALL verdicts in\n * the round, so a reviewer that failed on candidate B but succeeded on candidate A\n * still satisfies quorum — and then this function divided by `own.length` PER\n * CANDIDATE. A 3-lens mean and a 1-lens mean were compared directly and fed the\n * shortlist fallback, which is \"one reviewer's opinion presented as consensus\"\n * surviving inside a panel that passed quorum.\n *\n * Compared as a SET of charter refs, not a count. That is the same lesson the\n * quorum check records against itself: a count matches when the wrong reviewer\n * answered twice, and `charterRef` — not `roleRef` — is what a verdict carries.\n */\n private computeCandidateAggregates(\n rubric: EvaluationRubric,\n candidates: DeliberationCandidateInput[],\n verdicts: RubricVerdict[],\n requiredLenses: ReadonlySet<string>,\n ): Map<string, number> {\n const aggregates = new Map<string, number>();\n for (const candidate of candidates) {\n const own = verdicts.filter((verdict) => verdict.candidateRef === candidate.ref);\n const scoredBy = new Set(own.map((verdict) => verdict.reviewerCharterRef));\n const missing = [...requiredLenses].filter((charterRef) => !scoredBy.has(charterRef));\n if (own.length === 0 || missing.length > 0) {\n // Rank last, never invent — and never average a subset into a comparable number.\n aggregates.set(candidate.ref, ActorsSystemBackendService.UNRANKABLE_AGGREGATE);\n continue;\n }\n const sum = own.reduce((total, verdict) => total + aggregateWeightedScore(rubric, verdict), 0);\n aggregates.set(candidate.ref, sum / own.length);\n }\n return aggregates;\n }\n\n private async invokeCoordinatorRound(\n plan: DeliberationPlan,\n rubric: EvaluationRubric,\n candidates: DeliberationCandidateInput[],\n verdicts: RubricVerdict[],\n aggregates: Map<string, number>,\n roundNumber: number,\n traceContext?: AgentTraceContext,\n ): Promise<DeliberationCoordinatorRoundOutput> {\n const prompt = [\n plan.briefContext,\n '',\n this.renderRubricForPrompt(rubric),\n '',\n this.renderVerdictsForPrompt(candidates, verdicts, aggregates),\n '',\n `# Your task — coordinate round ${roundNumber} of ${plan.roundBudget}`,\n 'Decide: `finalize` (the outcome is settled — a clear winner exists or another round would '\n + `not change it) or \\`revise_shortlist\\` (shortlist the strongest AT MOST ${plan.shortlistSize} `\n + 'candidate ref(s) for a critique-driven revision round). Echo candidate refs EXACTLY. On '\n + 'finalize, `shortlistRefs` is an empty array. Ground the rationale in the verdicts; dissent '\n + 'among reviewers is signal, not noise.',\n ].join('\\n');\n\n const output = await this.invokeDeliberationStructured<DeliberationCoordinatorRoundOutput>(\n plan.coordinator.agentRef,\n prompt,\n DeliberationCoordinatorRoundOutputSchema,\n (raw) => {\n const parsed = DeliberationCoordinatorRoundOutputStrictSchema.safeParse(raw);\n return parsed.success\n ? { ok: true, value: parsed.data }\n : { ok: false, error: formatZodIssuesForRetryPrompt(parsed.error.issues) };\n },\n `coordinator-round-${roundNumber}`,\n traceContext,\n );\n if (output === null) {\n // Coordinator failed twice — deterministic fallback: revise the top-K\n // (or finalize when this is the last round; the loop handles budget).\n this.logDebug('Coordinator round output failed twice — deterministic fallback', {\n deliberationRef: plan.deliberationRef, roundNumber,\n });\n return {\n directive: DeliberationRoundDirective.REVISE_SHORTLIST,\n shortlistRefs: this.topKByAggregate(candidates, aggregates, plan.shortlistSize),\n rationale: 'Coordinator output failed validation twice — deterministic top-K fallback applied.',\n };\n }\n return output;\n }\n\n /** Validate the coordinator's shortlist echo; fallback = top-K by aggregate. */\n /**\n * How the panel's lenses split on the winner — deterministic, from the final round's\n * verdicts.\n *\n * Counts DISTINCT lenses, keyed on `charterRef`, rather than verdicts.\n *\n * Honest about its own reach: with the panel floor refusing duplicate charters and the\n * orchestrator issuing exactly one call per reviewer×candidate, one lens cannot produce\n * two verdicts for one candidate today — so this Set is DEFENCE, not a live guard, and\n * no test can distinguish it from a length. It is kept because the alternative encodes\n * \"a verdict is a lens\", which is the assumption the floor above had to be corrected\n * for, and because a future retry-with-fallback path would make it live.\n *\n * Deliberately not asked of the coordinator. A model can round \"one accepted, one\n * wanted revision\" into \"the panel agreed\", and this number exists precisely so a\n * reader does not have to trust that prose.\n */\n private static computeConcurrence(winnerRef: string, verdicts: RubricVerdict[]): DeliberationConcurrence {\n const byLens = new Map<string, DeliberationRecommendation>();\n for (const verdict of verdicts) {\n if (verdict.candidateRef === winnerRef) byLens.set(verdict.reviewerCharterRef, verdict.recommendation);\n }\n const recommendations = [...byLens.values()];\n return {\n winnerRef,\n lensCount: byLens.size,\n byRecommendation: {\n accept: recommendations.filter((value) => value === DeliberationRecommendation.ACCEPT).length,\n revise: recommendations.filter((value) => value === DeliberationRecommendation.REVISE).length,\n reject: recommendations.filter((value) => value === DeliberationRecommendation.REJECT).length,\n },\n };\n }\n\n private resolveShortlist(\n plan: DeliberationPlan,\n candidates: DeliberationCandidateInput[],\n aggregates: Map<string, number>,\n proposedRefs: string[],\n ): string[] {\n const known = new Set(candidates.map((candidate) => candidate.ref));\n const valid = [...new Set(proposedRefs)].filter((ref) => known.has(ref)).slice(0, plan.shortlistSize);\n if (valid.length > 0) return valid;\n return this.topKByAggregate(candidates, aggregates, plan.shortlistSize);\n }\n\n private topKByAggregate(\n candidates: DeliberationCandidateInput[],\n aggregates: Map<string, number>,\n k: number,\n ): string[] {\n return [...candidates]\n .sort((a, b) => (aggregates.get(b.ref) ?? -1) - (aggregates.get(a.ref) ?? -1))\n .slice(0, Math.max(1, k))\n .map((candidate) => candidate.ref);\n }\n\n /**\n * Deterministic revision-prompt compilation (RF-4): the candidate's own\n * critiques from EVERY reviewer, verbatim. TEXT producers revise the\n * draft; IMAGE producers regenerate — the seam is identical.\n */\n private compileRevisionPrompt(candidate: DeliberationCandidateInput, verdicts: RubricVerdict[]): string {\n const critiques = verdicts\n .filter((verdict) => verdict.candidateRef === candidate.ref)\n .flatMap((verdict) => verdict.critiques.map((critique) =>\n `- [${verdict.reviewerCharterRef}] ${critique.targetAspect}: ${critique.critique} → ${critique.suggestion}`));\n return [\n `Revise candidate \\`${candidate.ref}\\` addressing EVERY panel critique below. Keep everything `\n + 'the panel did not challenge — this is a revision, not a rewrite.',\n '',\n '# Panel critiques',\n critiques.length > 0 ? critiques.join('\\n') : '- (none recorded — tighten overall craft)',\n ].join('\\n');\n }\n\n private async invokeSynthesis(\n plan: DeliberationPlan,\n rubric: EvaluationRubric,\n candidates: DeliberationCandidateInput[],\n verdicts: RubricVerdict[],\n aggregates: Map<string, number>,\n traceContext?: AgentTraceContext,\n ): Promise<DeliberationSynthesis> {\n const prompt = [\n plan.briefContext,\n '',\n this.renderRubricForPrompt(rubric),\n '',\n this.renderVerdictsForPrompt(candidates, verdicts, aggregates),\n '',\n '# Your task — final synthesis',\n 'Name the winning candidate ref (echo EXACTLY one of the refs above), the rationale grounded '\n + 'in the verdicts and rubric, and preserve every real dissent verbatim as '\n + '`{charterRef, position}` entries (empty array when the panel is unanimous). You are the '\n + 'manager: decide, do not average.',\n ].join('\\n');\n\n const reviewerRefs = new Set(plan.reviewers.map((reviewer) => reviewer.profile.charterRef));\n const output = await this.invokeDeliberationStructured<DeliberationSynthesis>(\n plan.coordinator.agentRef,\n prompt,\n DeliberationSynthesisSchema,\n (raw) => {\n const parsed = DeliberationSynthesisStrictSchema.safeParse(raw);\n return parsed.success\n ? { ok: true, value: parsed.data }\n : { ok: false, error: formatZodIssuesForRetryPrompt(parsed.error.issues) };\n },\n 'synthesis',\n traceContext,\n );\n if (output === null) {\n const fallbackWinner = this.topKByAggregate(candidates, aggregates, 1)[0];\n return {\n winnerRef: fallbackWinner,\n rationale: 'Coordinator synthesis failed validation twice — deterministic top-aggregate fallback applied.',\n dissent: [],\n };\n }\n // Echo-validate the winner; filter dissent to real panel members.\n const known = new Set(candidates.map((candidate) => candidate.ref));\n const winnerRef = known.has(output.winnerRef)\n ? output.winnerRef\n : this.topKByAggregate(candidates, aggregates, 1)[0];\n return {\n winnerRef,\n rationale: winnerRef === output.winnerRef\n ? output.rationale\n : `${output.rationale} [winnerRef '${output.winnerRef}' did not match a final candidate — deterministic top-aggregate fallback applied]`,\n dissent: output.dissent.filter((entry) => reviewerRefs.has(entry.charterRef)),\n };\n }\n\n private renderRubricForPrompt(rubric: EvaluationRubric): string {\n const criteria = rubric.criteria.map((criterion) =>\n `- \\`${criterion.ref}\\` (weight ${criterion.weight}): ${criterion.description} `\n + `[0 = ${criterion.scaleAnchors.low} · 100 = ${criterion.scaleAnchors.high}]`);\n return `# Evaluation rubric (constant for this deliberation)\\n${criteria.join('\\n')}`;\n }\n\n private renderVerdictsForPrompt(\n candidates: DeliberationCandidateInput[],\n verdicts: RubricVerdict[],\n aggregates: Map<string, number>,\n ): string {\n const blocks = candidates.map((candidate) => {\n const own = verdicts.filter((verdict) => verdict.candidateRef === candidate.ref);\n const aggregate = aggregates.get(candidate.ref);\n const lines = own.map((verdict) => {\n const scores = verdict.scores.map((score) => `${score.criterionRef}=${score.score}`).join(', ');\n return ` - [${verdict.reviewerCharterRef}] ${verdict.recommendation} (${scores}) — ${verdict.overallNote}`;\n });\n return `## Candidate \\`${candidate.ref}\\` — deterministic weighted aggregate: ${aggregate === undefined || aggregate < 0 ? 'n/a (no surviving verdicts)' : aggregate.toFixed(1)}\\n${lines.join('\\n') || ' - (no surviving verdicts)'}`;\n });\n return `# Panel verdicts\\n${blocks.join('\\n')}`;\n }\n}\n\n/**\n * Compact Zod issue formatting for retry prompts + errors.\n *\n * Deliberately UNBOUNDED (unlike `summarizeZodIssues`'s default cap): the\n * output is fed back to a model as the correction instruction, so eliding\n * issues would ask it to fix a partial list. Delegates the per-issue rendering\n * to the canonical formatter in `@wildo-ai/saas-models` so path and root-label\n * semantics match every other surface.\n */\nfunction formatZodIssuesForRetryPrompt(issues: ReadonlyArray<FormattableZodIssue>): string {\n return summarizeZodIssues(issues, { limit: ALL_ZOD_ISSUES });\n}\n\n"]}
@@ -6,6 +6,7 @@ import { ExternalProvidersRegistryBackendService } from '../../external-provider
6
6
  import { BackendProviderRegistryBackendService } from '../../external-providers/services/backend-provider-registry.backend.service';
7
7
  import { PromptCompilerBackendService } from './prompt-compiler.backend.service';
8
8
  import { FlowsActors_Agent, FlowsActors_Agent_Invocation, type AgentTraceabilityPolicy, type AgentTraceContext, type AgentCallTraceSink } from '@wildo-ai/saas-models';
9
+ import { CodingAgent_EndOfTurnClassification } from '@wildo-ai/external-connectors-models';
9
10
  import type { FunctionToolExecutionContext } from '../../flows-actors/models/function-tools.backend.definitions';
10
11
  /**
11
12
  * Backend-only authority supplied by the installed host for an Agent call.
@@ -37,6 +38,45 @@ export interface AgentInvocationHostContext {
37
38
  }) => void;
38
39
  /** Operator-initiated cancellation of a coding session. Cooperative first, kill second. */
39
40
  codingSessionAbortSignal?: AbortSignal;
41
+ /**
42
+ * Judge what a coding agent's END-OF-TURN message actually meant, so the turn
43
+ * ladder can auto-continue a self-imposed pause and park a genuine question.
44
+ *
45
+ * The JUDGMENT is host authority, not engine mechanism: it is an auxiliary LLM
46
+ * call, and the host (the companion) owns model resolution and the deliberation
47
+ * infrastructure. The engine owns the LADDER — when to call this, how many
48
+ * continuations to allow, how to record the result — and it FAILS OPEN: if this
49
+ * is absent, throws, or times out, the turn is treated as complete. An
50
+ * autonomous coding lane must never hang, or discard a mutated workspace, on an
51
+ * auxiliary call. Absence therefore reproduces the pre-ladder single-turn
52
+ * behaviour exactly, which is why every non-coding caller can ignore it.
53
+ */
54
+ classifyCodingTurnEnd?: (input: {
55
+ readonly finalMessage: string;
56
+ readonly turnIndex: number;
57
+ }) => Promise<CodingAgent_EndOfTurnClassification>;
58
+ /**
59
+ * Live phase transitions for a coding session — distinct from
60
+ * {@link onCodingSessionEvent}, which relays the agent's own frames. This fires
61
+ * when the LADDER changes state: a new turn starting, or the session parking on
62
+ * a question. Best-effort, like the event sink: never allowed to fail the run.
63
+ */
64
+ onCodingSessionStateChange?: (state: CodingSessionLadderState) => void;
65
+ }
66
+ /** The ladder phases a live coding session transitions through. */
67
+ export declare enum CodingSessionLadderPhase {
68
+ /** A turn is executing. */
69
+ RUNNING = "running",
70
+ /** The session parked on a question and is waiting for an operator answer. */
71
+ AWAITING_INPUT = "awaiting_input"
72
+ }
73
+ /** A phase transition in the turn ladder, surfaced to the host for live relay. */
74
+ export interface CodingSessionLadderState {
75
+ readonly phase: CodingSessionLadderPhase;
76
+ /** 1-based index of the turn this state refers to. */
77
+ readonly turnIndex: number;
78
+ /** The agent's question, present only when `phase` is `AWAITING_INPUT`. */
79
+ readonly question?: string;
40
80
  }
41
81
  /**
42
82
  * Thrown by {@link AgentsBackendService.invokeAgentStreaming} when honest token
@@ -244,7 +284,7 @@ export declare class AgentsBackendService {
244
284
  * Get AI SDK provider client configured with API key.
245
285
  *
246
286
  * Looks up the provider's `LLM_PROVIDER` runtime contract on the
247
- * backend provider registry, narrows by `kind: 'llm'`, and invokes the
287
+ * backend provider registry, narrows by `kind: ProviderProtocolRuntimeKind.LLM`, and invokes the
248
288
  * `sdkFactory` declared on the contract. Per the framework principle
249
289
  * (provider behavior lives on the provider module), there is NO
250
290
  * `switch (providerRef)` here: adding a new LLM provider only requires
@@ -316,6 +356,33 @@ export declare class AgentsBackendService {
316
356
  * agent does when told nothing.
317
357
  */
318
358
  private resolveAgentClientProtocolSessionMeta;
359
+ /**
360
+ * What THIS agent's provider declares about escalating before it mutates.
361
+ *
362
+ * Read from the ACP runtime contract on the provider binding — never branched
363
+ * on `providerRef`, and deliberately not taken from the projected
364
+ * `AgentClientProtocol_Profile`: this is a measured PROVIDER FACT about an
365
+ * agent's behaviour, not application-authored policy, and it must not sit
366
+ * anywhere an application configuration could merge over it.
367
+ *
368
+ * `undefined` means the provider has no ACP binding at all, which the caller
369
+ * has already refused by the time this runs.
370
+ */
371
+ private resolveAgentClientProtocolPermissionEscalation;
372
+ /**
373
+ * Can Wildo's in-flight guards fire for the session this run is about to open?
374
+ *
375
+ * Answered from the provider's declaration AND from the environment actually
376
+ * composed for the child, because for a conditionally-escalating agent those
377
+ * are two different facts: the agent escalates only if the pointer to its
378
+ * permission configuration really arrives, and a declaration that it "must be
379
+ * supplied" is not evidence that anything supplied it.
380
+ *
381
+ * The environment is inspected rather than trusted for the same reason the
382
+ * runner judges a permission request rather than the agent's session mode:
383
+ * the thing that decides behaviour is what the child receives.
384
+ */
385
+ private resolveAgentClientProtocolInFlightGuardAvailability;
319
386
  private executeAgentViaACP;
320
387
  private extractCLITextOutput;
321
388
  /**
@@ -357,6 +424,45 @@ export declare class AgentsBackendService {
357
424
  * adapter translates the abort into the TIMEOUT failure kind the retry policy already understands.
358
425
  */
359
426
  private static readonly STRUCTURED_GENERATION_DEADLINE_MS;
427
+ /**
428
+ * The one prompt sent to auto-continue a coding agent past a self-imposed
429
+ * pause. Named here rather than improvised at the call site so a run's
430
+ * continuations are all identical and auditable, and so the wording — which
431
+ * tells the agent to keep working AND to stop only when genuinely done or
432
+ * genuinely blocked — lives in exactly one place.
433
+ */
434
+ private static readonly CODING_AUTO_CONTINUE_PROMPT;
435
+ /** Characters of an end-of-turn message kept on a continuation record for audit. */
436
+ private static readonly CONTINUATION_MESSAGE_TAIL_CHARS;
437
+ /**
438
+ * Drive a coding session turn-by-turn: continue a self-imposed pause, park a
439
+ * genuine question, settle on completion — bounded by the profile's
440
+ * continuation budget.
441
+ *
442
+ * The MECHANISM lives here; the JUDGMENT (`classify`) is the host's. The whole
443
+ * loop fails toward settlement: any terminal stop reason, an exhausted budget,
444
+ * or a classifier that is absent or throws all end the run with what the agent
445
+ * has produced rather than hanging. A `NEEDS_INPUT` classification is the only
446
+ * path that returns a `suspension`, and the caller must not read that as a
447
+ * completed result.
448
+ */
449
+ private driveCodingTurnLadder;
450
+ /**
451
+ * Run the host's end-of-turn classifier, mapping every failure to
452
+ * `CLASSIFIER_UNAVAILABLE` so the ladder can settle rather than hang.
453
+ *
454
+ * The whole point of a separate method: the fail-open contract is one place,
455
+ * and an unexpected classifier value (a host returning a string outside the
456
+ * enum) degrades the same way a throw does.
457
+ */
458
+ private classifyCodingTurnEndSafely;
459
+ /**
460
+ * Combine per-turn usage into a session total: token counts and cost SUM
461
+ * across turns; the context-window pair is a snapshot, so the latest turn's
462
+ * value wins. Absence stays absence — a field nobody reported must not read as
463
+ * zero, per the usage contract.
464
+ */
465
+ private mergeCodingUsage;
360
466
  private buildBaseOptions;
361
467
  /**
362
468
  * Execute GENERATE_TEXT operation
@@ -1 +1 @@
1
- {"version":3,"file":"agents.backend.service.d.ts","sourceRoot":"","sources":["../../../../../src/flows-actors/services/agents.backend.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agents.backend.service.d.ts","sourceRoot":"","sources":["../../../../../src/flows-actors/services/agents.backend.service.ts"],"names":[],"mappings":"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"}