@wildo-ai/saas-backend-lib 1.1.0 → 1.1.2

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 (265) hide show
  1. package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.d.ts +14 -3
  2. package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.d.ts.map +1 -1
  3. package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.js +115 -22
  4. package/dist/esm/base-classes/services/controllers/controller-resource.backend.service.js.map +1 -1
  5. package/dist/esm/base-classes/services/controllers/controllers-registry-handler.backend.service.d.ts +3 -1
  6. package/dist/esm/base-classes/services/controllers/controllers-registry-handler.backend.service.d.ts.map +1 -1
  7. package/dist/esm/base-classes/services/controllers/controllers-registry-handler.backend.service.js +8 -3
  8. package/dist/esm/base-classes/services/controllers/controllers-registry-handler.backend.service.js.map +1 -1
  9. package/dist/esm/base-classes/services/repositories/field-clearing-partition.backend.d.ts +11 -0
  10. package/dist/esm/base-classes/services/repositories/field-clearing-partition.backend.d.ts.map +1 -1
  11. package/dist/esm/base-classes/services/repositories/field-clearing-partition.backend.js +11 -2
  12. package/dist/esm/base-classes/services/repositories/field-clearing-partition.backend.js.map +1 -1
  13. package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.d.ts +1 -0
  14. package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.d.ts.map +1 -1
  15. package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.js +6 -1
  16. package/dist/esm/base-classes/services/repositories/http-api/http-api-resource-repository.backend.service.js.map +1 -1
  17. package/dist/esm/base-classes/services/repositories/http-api/odata-query-compiler.backend.d.ts.map +1 -1
  18. package/dist/esm/base-classes/services/repositories/http-api/odata-query-compiler.backend.js +16 -0
  19. package/dist/esm/base-classes/services/repositories/http-api/odata-query-compiler.backend.js.map +1 -1
  20. package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.d.ts +20 -6
  21. package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.d.ts.map +1 -1
  22. package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.js +88 -32
  23. package/dist/esm/base-classes/services/repositories/infrastructure-tier-contract.backend.js.map +1 -1
  24. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-repository.backend.service.d.ts +3 -1
  25. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-repository.backend.service.d.ts.map +1 -1
  26. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-repository.backend.service.js +32 -7
  27. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-repository.backend.service.js.map +1 -1
  28. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-source.backend.port.d.ts +8 -5
  29. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-source.backend.port.d.ts.map +1 -1
  30. package/dist/esm/base-classes/services/repositories/introspection/introspection-resource-source.backend.port.js.map +1 -1
  31. package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.d.ts +31 -0
  32. package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.d.ts.map +1 -1
  33. package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.js +127 -5
  34. package/dist/esm/base-classes/services/repositories/postgresql-resource-repository.backend.service.js.map +1 -1
  35. package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.d.ts +71 -1
  36. package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.d.ts.map +1 -1
  37. package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.js +62 -2
  38. package/dist/esm/base-classes/services/repositories/repositories-registry-handler.backend.service.js.map +1 -1
  39. package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.d.ts +21 -0
  40. package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.d.ts.map +1 -1
  41. package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.js +126 -4
  42. package/dist/esm/base-classes/services/repositories/repository-resource.backend.service.js.map +1 -1
  43. package/dist/esm/base-classes/services/services/resource-operation-implementation-coverage.backend.utils.d.ts +3 -26
  44. package/dist/esm/base-classes/services/services/resource-operation-implementation-coverage.backend.utils.d.ts.map +1 -1
  45. package/dist/esm/base-classes/services/services/resource-operation-implementation-coverage.backend.utils.js +3 -68
  46. package/dist/esm/base-classes/services/services/resource-operation-implementation-coverage.backend.utils.js.map +1 -1
  47. package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.d.ts.map +1 -1
  48. package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.js +4 -2
  49. package/dist/esm/base-classes/services/services/services-registry-handler.backend.service.js.map +1 -1
  50. package/dist/esm/billing/services/custom-impl/billing-account.mutations.custom-impl.backend.service.js +6 -6
  51. package/dist/esm/billing/services/custom-impl/billing-account.mutations.custom-impl.backend.service.js.map +1 -1
  52. package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.d.ts +38 -0
  53. package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.d.ts.map +1 -1
  54. package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.js +40 -0
  55. package/dist/esm/compliance/audit-trails/services/audit-event-dispatcher.backend.service.js.map +1 -1
  56. package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.d.ts +20 -0
  57. package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.d.ts.map +1 -1
  58. package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.js +28 -0
  59. package/dist/esm/compliance/audit-trails/services/audit-logs.backend.service.js.map +1 -1
  60. package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.d.ts +12 -0
  61. package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.d.ts.map +1 -0
  62. package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.js +118 -0
  63. package/dist/esm/compliance/audit-trails/services/siem-export-config-cache-invalidation.custom-impl.backend.service.js.map +1 -0
  64. package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.d.ts.map +1 -1
  65. package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.js +8 -5
  66. package/dist/esm/compliance/audit-trails/services/siem-webhook-delivery.backend.service.js.map +1 -1
  67. package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.d.ts.map +1 -1
  68. package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.js +14 -0
  69. package/dist/esm/compliance/audit-trails/services/utils/ocsf-activity-mapping.backend.utils.js.map +1 -1
  70. package/dist/esm/config/custom/application-config-controller.backend.service.d.ts.map +1 -1
  71. package/dist/esm/config/custom/application-config-controller.backend.service.js +7 -1
  72. package/dist/esm/config/custom/application-config-controller.backend.service.js.map +1 -1
  73. package/dist/esm/config/models/app-config.backend.schemas.d.ts +4 -0
  74. package/dist/esm/config/models/app-config.backend.schemas.d.ts.map +1 -1
  75. package/dist/esm/config/services/app-configuration.backend.utils.d.ts +10 -1
  76. package/dist/esm/config/services/app-configuration.backend.utils.d.ts.map +1 -1
  77. package/dist/esm/config/services/app-configuration.backend.utils.js +13 -2
  78. package/dist/esm/config/services/app-configuration.backend.utils.js.map +1 -1
  79. package/dist/esm/data-seeding/services/shared/data-seed-scope-iteration.shared.utils.d.ts +2 -2
  80. package/dist/esm/data-seeding/services/shared/data-seed-scope-iteration.shared.utils.js +2 -2
  81. package/dist/esm/data-seeding/services/shared/data-seed-scope-iteration.shared.utils.js.map +1 -1
  82. package/dist/esm/databases/models/filter.backend.schemas.js +2 -2
  83. package/dist/esm/databases/models/filter.backend.schemas.js.map +1 -1
  84. package/dist/esm/databases/services/aggregation/aggregation-authorization.backend.service.d.ts.map +1 -1
  85. package/dist/esm/databases/services/aggregation/aggregation-authorization.backend.service.js +20 -1
  86. package/dist/esm/databases/services/aggregation/aggregation-authorization.backend.service.js.map +1 -1
  87. package/dist/esm/databases/services/redis.service.d.ts +27 -0
  88. package/dist/esm/databases/services/redis.service.d.ts.map +1 -1
  89. package/dist/esm/databases/services/redis.service.js +29 -0
  90. package/dist/esm/databases/services/redis.service.js.map +1 -1
  91. package/dist/esm/errors/services/error-handler.backend.service.d.ts.map +1 -1
  92. package/dist/esm/errors/services/error-handler.backend.service.js +5 -0
  93. package/dist/esm/errors/services/error-handler.backend.service.js.map +1 -1
  94. package/dist/esm/external-data/controllers/external-data-admin.backend.contracts.d.ts +41 -0
  95. package/dist/esm/external-data/controllers/external-data-admin.backend.contracts.d.ts.map +1 -0
  96. package/dist/esm/external-data/controllers/external-data-admin.backend.contracts.js +40 -0
  97. package/dist/esm/external-data/controllers/external-data-admin.backend.contracts.js.map +1 -0
  98. package/dist/esm/external-data/controllers/external-data-admin.backend.controller.d.ts +64 -0
  99. package/dist/esm/external-data/controllers/external-data-admin.backend.controller.d.ts.map +1 -0
  100. package/dist/esm/external-data/controllers/external-data-admin.backend.controller.js +193 -0
  101. package/dist/esm/external-data/controllers/external-data-admin.backend.controller.js.map +1 -0
  102. package/dist/esm/external-data/external-data-pipeline-run.backend.service.d.ts +13 -2
  103. package/dist/esm/external-data/external-data-pipeline-run.backend.service.d.ts.map +1 -1
  104. package/dist/esm/external-data/external-data-pipeline-run.backend.service.js +8 -2
  105. package/dist/esm/external-data/external-data-pipeline-run.backend.service.js.map +1 -1
  106. package/dist/esm/external-data/external-data-transform.backend.d.ts.map +1 -1
  107. package/dist/esm/external-data/external-data-transform.backend.js +7 -1
  108. package/dist/esm/external-data/external-data-transform.backend.js.map +1 -1
  109. package/dist/esm/external-data/models/external-data-pipeline-state.backend.schemas.d.ts +2 -0
  110. package/dist/esm/external-data/models/external-data-pipeline-state.backend.schemas.d.ts.map +1 -1
  111. package/dist/esm/external-data/models/external-data-pipeline-state.backend.schemas.js +13 -0
  112. package/dist/esm/external-data/models/external-data-pipeline-state.backend.schemas.js.map +1 -1
  113. package/dist/esm/external-providers/services/external-providers-registry.backend.service.d.ts +14 -0
  114. package/dist/esm/external-providers/services/external-providers-registry.backend.service.d.ts.map +1 -1
  115. package/dist/esm/external-providers/services/external-providers-registry.backend.service.js +6 -0
  116. package/dist/esm/external-providers/services/external-providers-registry.backend.service.js.map +1 -1
  117. package/dist/esm/files/controllers/file.controller.d.ts +24 -1
  118. package/dist/esm/files/controllers/file.controller.d.ts.map +1 -1
  119. package/dist/esm/files/controllers/file.controller.js +66 -2
  120. package/dist/esm/files/controllers/file.controller.js.map +1 -1
  121. package/dist/esm/files/handlers/file-upload-route-locals.backend.types.d.ts +17 -0
  122. package/dist/esm/files/handlers/file-upload-route-locals.backend.types.d.ts.map +1 -0
  123. package/dist/esm/files/handlers/file-upload-route-locals.backend.types.js +1 -0
  124. package/dist/esm/files/handlers/file-upload-route-locals.backend.types.js.map +1 -0
  125. package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.d.ts +5 -1
  126. package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.d.ts.map +1 -1
  127. package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.js +42 -3
  128. package/dist/esm/files/handlers/resource-file-upload-handler.backend.service.js.map +1 -1
  129. package/dist/esm/files/services/file-operation-handler.backend.service.d.ts +18 -0
  130. package/dist/esm/files/services/file-operation-handler.backend.service.d.ts.map +1 -1
  131. package/dist/esm/files/services/file-operation-handler.backend.service.js +36 -28
  132. package/dist/esm/files/services/file-operation-handler.backend.service.js.map +1 -1
  133. package/dist/esm/files/services/file-upload-grant.backend.service.d.ts +163 -0
  134. package/dist/esm/files/services/file-upload-grant.backend.service.d.ts.map +1 -0
  135. package/dist/esm/files/services/file-upload-grant.backend.service.js +442 -0
  136. package/dist/esm/files/services/file-upload-grant.backend.service.js.map +1 -0
  137. package/dist/esm/files/services/files.backend.service.d.ts +19 -0
  138. package/dist/esm/files/services/files.backend.service.d.ts.map +1 -1
  139. package/dist/esm/files/services/files.backend.service.js +78 -15
  140. package/dist/esm/files/services/files.backend.service.js.map +1 -1
  141. package/dist/esm/files/utils/file-uploader.utils.d.ts.map +1 -1
  142. package/dist/esm/files/utils/file-uploader.utils.js +12 -0
  143. package/dist/esm/files/utils/file-uploader.utils.js.map +1 -1
  144. package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.js +5 -5
  145. package/dist/esm/flows-actors/a2a/services/a2a-task-cancellation.backend.service.js.map +1 -1
  146. package/dist/esm/flows-actors/services/agents.backend.service.d.ts +79 -0
  147. package/dist/esm/flows-actors/services/agents.backend.service.d.ts.map +1 -1
  148. package/dist/esm/flows-actors/services/agents.backend.service.js +319 -42
  149. package/dist/esm/flows-actors/services/agents.backend.service.js.map +1 -1
  150. package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.d.ts +151 -41
  151. package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.d.ts.map +1 -1
  152. package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.js +300 -139
  153. package/dist/esm/flows-actors/utils/acp-session-runner.backend.utils.js.map +1 -1
  154. package/dist/esm/index.d.ts +4 -1
  155. package/dist/esm/index.d.ts.map +1 -1
  156. package/dist/esm/index.js +14 -1
  157. package/dist/esm/index.js.map +1 -1
  158. package/dist/esm/inject/models/container.d.ts.map +1 -1
  159. package/dist/esm/inject/models/container.js +4 -0
  160. package/dist/esm/inject/models/container.js.map +1 -1
  161. package/dist/esm/inject/models/service-types.d.ts +3 -0
  162. package/dist/esm/inject/models/service-types.d.ts.map +1 -1
  163. package/dist/esm/inject/models/service-types.js +2 -0
  164. package/dist/esm/inject/models/service-types.js.map +1 -1
  165. package/dist/esm/mcp/controllers/mcp.controller.d.ts.map +1 -1
  166. package/dist/esm/mcp/controllers/mcp.controller.js +12 -4
  167. package/dist/esm/mcp/controllers/mcp.controller.js.map +1 -1
  168. package/dist/esm/mcp/models/mcp-tool.backend.schemas.d.ts +34 -0
  169. package/dist/esm/mcp/models/mcp-tool.backend.schemas.d.ts.map +1 -1
  170. package/dist/esm/mcp/models/mcp-tool.backend.schemas.js +42 -0
  171. package/dist/esm/mcp/models/mcp-tool.backend.schemas.js.map +1 -1
  172. package/dist/esm/mcp/services/mcp-server.backend.service.d.ts +29 -1
  173. package/dist/esm/mcp/services/mcp-server.backend.service.d.ts.map +1 -1
  174. package/dist/esm/mcp/services/mcp-server.backend.service.js +131 -3
  175. package/dist/esm/mcp/services/mcp-server.backend.service.js.map +1 -1
  176. package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.d.ts +64 -2
  177. package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.d.ts.map +1 -1
  178. package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.js +130 -6
  179. package/dist/esm/mcp/services/mcp-tool-adapter.backend.service.js.map +1 -1
  180. package/dist/esm/notifications/services/notifications-dispatcher.backend.service.d.ts +9 -0
  181. package/dist/esm/notifications/services/notifications-dispatcher.backend.service.d.ts.map +1 -1
  182. package/dist/esm/notifications/services/notifications-dispatcher.backend.service.js +11 -36
  183. package/dist/esm/notifications/services/notifications-dispatcher.backend.service.js.map +1 -1
  184. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.d.ts.map +1 -1
  185. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.js +9 -7
  186. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.backend.service.js.map +1 -1
  187. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.utils.d.ts +5 -5
  188. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.utils.d.ts.map +1 -1
  189. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.utils.js +14 -13
  190. package/dist/esm/notifications/webhooks/outbound/batches/m2m-webhook-delivery.batch.utils.js.map +1 -1
  191. package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.d.ts +2 -1
  192. package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.d.ts.map +1 -1
  193. package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.js +2 -2
  194. package/dist/esm/notifications/webhooks/outbound/m2m-webhook-signed-request.backend.utils.js.map +1 -1
  195. package/dist/esm/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service.d.ts.map +1 -1
  196. package/dist/esm/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service.js +9 -7
  197. package/dist/esm/notifications/webhooks/outbound/services/webhook-config-test-endpoint.custom-impl.backend.service.js.map +1 -1
  198. package/dist/esm/organizations/services/organization-unit-custom-implementation.backend.service.d.ts.map +1 -1
  199. package/dist/esm/organizations/services/organization-unit-custom-implementation.backend.service.js +4 -1
  200. package/dist/esm/organizations/services/organization-unit-custom-implementation.backend.service.js.map +1 -1
  201. package/dist/esm/requests/service/websocket.service.d.ts.map +1 -1
  202. package/dist/esm/requests/service/websocket.service.js +56 -7
  203. package/dist/esm/requests/service/websocket.service.js.map +1 -1
  204. package/dist/esm/resources/models/custom-service-implementations.backend.definition.d.ts.map +1 -1
  205. package/dist/esm/resources/models/custom-service-implementations.backend.definition.js +2 -0
  206. package/dist/esm/resources/models/custom-service-implementations.backend.definition.js.map +1 -1
  207. package/dist/esm/resources/services/resource-id.backend.service.js +3 -3
  208. package/dist/esm/resources/services/resource-id.backend.service.js.map +1 -1
  209. package/dist/esm/resources/services/resources-registry.backend.service.js +1 -1
  210. package/dist/esm/resources/services/resources-registry.backend.service.js.map +1 -1
  211. package/dist/esm/runtime/services/execution-context-creator.backend.service.d.ts.map +1 -1
  212. package/dist/esm/runtime/services/execution-context-creator.backend.service.js +13 -7
  213. package/dist/esm/runtime/services/execution-context-creator.backend.service.js.map +1 -1
  214. package/dist/esm/runtime/services/start-application.backend.service.d.ts +28 -0
  215. package/dist/esm/runtime/services/start-application.backend.service.d.ts.map +1 -1
  216. package/dist/esm/runtime/services/start-application.backend.service.js +82 -0
  217. package/dist/esm/runtime/services/start-application.backend.service.js.map +1 -1
  218. package/dist/esm/security/authentications/models/jwt.backend.schemas.d.ts +3 -23
  219. package/dist/esm/security/authentications/models/jwt.backend.schemas.d.ts.map +1 -1
  220. package/dist/esm/security/authentications/models/jwt.backend.schemas.js +20 -45
  221. package/dist/esm/security/authentications/models/jwt.backend.schemas.js.map +1 -1
  222. package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.d.ts +9 -1
  223. package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.d.ts.map +1 -1
  224. package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.js +9 -1
  225. package/dist/esm/security/authentications/services/auth-methods/auth-method-management.backend.service.js.map +1 -1
  226. package/dist/esm/security/authentications/services/auth-methods/auth-mfa.backend.service.d.ts.map +1 -1
  227. package/dist/esm/security/authentications/services/auth-methods/auth-mfa.backend.service.js +5 -3
  228. package/dist/esm/security/authentications/services/auth-methods/auth-mfa.backend.service.js.map +1 -1
  229. package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.d.ts +25 -1
  230. package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.d.ts.map +1 -1
  231. package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.js +55 -4
  232. package/dist/esm/security/authentications/services/auth-token-issuer.backend.service.js.map +1 -1
  233. package/dist/esm/security/authorizations/initiator-organization-confinement.backend.d.ts.map +1 -1
  234. package/dist/esm/security/authorizations/initiator-organization-confinement.backend.js +24 -1
  235. package/dist/esm/security/authorizations/initiator-organization-confinement.backend.js.map +1 -1
  236. package/dist/esm/security/authorizations/privileged-access-review.backend.utils.d.ts +117 -0
  237. package/dist/esm/security/authorizations/privileged-access-review.backend.utils.d.ts.map +1 -0
  238. package/dist/esm/security/authorizations/privileged-access-review.backend.utils.js +104 -0
  239. package/dist/esm/security/authorizations/privileged-access-review.backend.utils.js.map +1 -0
  240. package/dist/esm/security/authorizations/services/authorizations.backend.service.d.ts +101 -6
  241. package/dist/esm/security/authorizations/services/authorizations.backend.service.d.ts.map +1 -1
  242. package/dist/esm/security/authorizations/services/authorizations.backend.service.js +210 -30
  243. package/dist/esm/security/authorizations/services/authorizations.backend.service.js.map +1 -1
  244. package/dist/esm/security/consumable-tokens/batches/consumable-tokens-cleanup.batch.backend.service.d.ts +18 -1
  245. package/dist/esm/security/consumable-tokens/batches/consumable-tokens-cleanup.batch.backend.service.d.ts.map +1 -1
  246. package/dist/esm/security/consumable-tokens/batches/consumable-tokens-cleanup.batch.backend.service.js +110 -74
  247. package/dist/esm/security/consumable-tokens/batches/consumable-tokens-cleanup.batch.backend.service.js.map +1 -1
  248. package/dist/esm/security/consumable-tokens/consumable-token-models.exports.d.ts +22 -0
  249. package/dist/esm/security/consumable-tokens/consumable-token-models.exports.d.ts.map +1 -0
  250. package/dist/esm/security/consumable-tokens/consumable-token-models.exports.js +22 -0
  251. package/dist/esm/security/consumable-tokens/consumable-token-models.exports.js.map +1 -0
  252. package/dist/esm/security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas.d.ts +17 -3
  253. package/dist/esm/security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas.d.ts.map +1 -1
  254. package/dist/esm/security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas.js +12 -0
  255. package/dist/esm/security/consumable-tokens/models/consumable-tokens.backend.resources-config.schemas.js.map +1 -1
  256. package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.d.ts +20 -0
  257. package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.d.ts.map +1 -1
  258. package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.js +58 -5
  259. package/dist/esm/security/consumable-tokens/services/consumable-token.backend.service.js.map +1 -1
  260. package/dist/esm/security/jwt/services/jwt.backend.service.d.ts.map +1 -1
  261. package/dist/esm/security/jwt/services/jwt.backend.service.js +1 -18
  262. package/dist/esm/security/jwt/services/jwt.backend.service.js.map +1 -1
  263. package/dist/tsconfig.build.tsbuildinfo +1 -1
  264. package/package.json +15 -9
  265. package/dist/esm/.builder.pid +0 -9
@@ -1 +1 @@
1
- {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../../../src/inject/models/container.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAc,MAAM,WAAW,CAAC;AAClD,OAAO,kBAAkB,CAAC;AA6R1B;;;;;GAKG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,SAAS,CAAY;;IAS7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgazB;;OAEG;IACI,YAAY,IAAI,SAAS;IAIhC;;OAEG;IACI,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC;IAIrC;;OAEG;IACI,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAI5C;;;OAGG;WACW,kBAAkB,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS;CAWnE;AAGD;;;;;GAKG;AACH,wBAAgB,yBAAyB,IAAI,SAAS,CAMrD;AAED,wBAAgB,kBAAkB,IAAI,SAAS,CAK9C;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAGD,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../../../src/inject/models/container.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAc,MAAM,WAAW,CAAC;AAClD,OAAO,kBAAkB,CAAC;AA+R1B;;;;;GAKG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,SAAS,CAAY;;IAS7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAkazB;;OAEG;IACI,YAAY,IAAI,SAAS;IAIhC;;OAEG;IACI,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC;IAIrC;;OAEG;IACI,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAI5C;;;OAGG;WACW,kBAAkB,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS;CAWnE;AAGD;;;;;GAKG;AACH,wBAAgB,yBAAyB,IAAI,SAAS,CAMrD;AAED,wBAAgB,kBAAkB,IAAI,SAAS,CAK9C;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAGD,eAAe,aAAa,CAAC"}
@@ -174,6 +174,7 @@ import { FileController } from '../../files/controllers/file.controller.js';
174
174
  import { FilePopulationBackendService } from '../../files/services/file-population.backend.service.js';
175
175
  import { FileOperationHandlerBackendService } from '../../files/services/file-operation-handler.backend.service.js';
176
176
  import { FileScanningBackendService } from '../../files/services/file-scanning.backend.service.js';
177
+ import { FileUploadGrantBackendService } from '../../files/services/file-upload-grant.backend.service.js';
177
178
  import { ClamAVScannerBackendService } from '../../files/scanning/clamav-scanner.backend.service.js';
178
179
  import { YaraScannerBackendService } from '../../files/scanning/yara-scanner.backend.service.js';
179
180
  import { FileTextExtractionBackendService } from '../../files/services/file-text-extraction.backend.service.js';
@@ -232,6 +233,7 @@ import { AdditiveSeedEngineBackendService } from '../../data-seeding/services/en
232
233
  import { UpgradeSeedEngineBackendService } from '../../data-seeding/services/engines/upgrade-seed-engine.backend.service.js';
233
234
  import { SyncSeedEngineBackendService } from '../../data-seeding/services/engines/sync-seed-engine.backend.service.js';
234
235
  import { ExternalDataPipelineRunBackendService } from '../../external-data/external-data-pipeline-run.backend.service.js';
236
+ import { ExternalDataAdminBackendController } from '../../external-data/controllers/external-data-admin.backend.controller.js';
235
237
  import { LazySeedEngineBackendService } from '../../data-seeding/services/engines/lazy-seed-engine.backend.service.js';
236
238
  import { ManualSeedEngineBackendService } from '../../data-seeding/services/engines/manual-seed-engine.backend.service.js';
237
239
  import { DataSeedScopeResolverRegistryBackendService } from '../../data-seeding/services/data-seed-scope-resolver-registry.backend.service.js';
@@ -546,6 +548,7 @@ export class SaasContainer {
546
548
  this.container.bind(SAAS_SERVICE_TYPES.PdfGenerationOrchestrator).to(PdfGenerationOrchestratorBackendService).inSingletonScope();
547
549
  // File Scanning Services
548
550
  this.container.bind(SAAS_SERVICE_TYPES.FileScanningService).to(FileScanningBackendService).inSingletonScope();
551
+ this.container.bind(SAAS_SERVICE_TYPES.FileUploadGrantService).to(FileUploadGrantBackendService).inSingletonScope();
549
552
  this.container.bind(SAAS_SERVICE_TYPES.ClamAVScannerService).to(ClamAVScannerBackendService).inSingletonScope();
550
553
  this.container.bind(SAAS_SERVICE_TYPES.YaraScannerService).to(YaraScannerBackendService).inSingletonScope();
551
554
  this.container.bind(SAAS_SERVICE_TYPES.FileTextExtractionService).to(FileTextExtractionBackendService).inSingletonScope();
@@ -615,6 +618,7 @@ export class SaasContainer {
615
618
  this.container.bind(SAAS_SERVICE_TYPES.SyncSeedEngine).to(SyncSeedEngineBackendService).inSingletonScope();
616
619
  // External-data pipeline runs load through the SYNC/UPGRADE engines above (partial-resource paper P-2).
617
620
  this.container.bind(SAAS_SERVICE_TYPES.ExternalDataPipelineRunService).to(ExternalDataPipelineRunBackendService).inSingletonScope();
621
+ this.container.bind(SAAS_SERVICE_TYPES.ExternalDataAdminController).to(ExternalDataAdminBackendController).inSingletonScope();
618
622
  this.container.bind(SAAS_SERVICE_TYPES.LazySeedEngine).to(LazySeedEngineBackendService).inSingletonScope();
619
623
  this.container.bind(SAAS_SERVICE_TYPES.ManualSeedEngine).to(ManualSeedEngineBackendService).inSingletonScope();
620
624
  this.container.bind(SAAS_SERVICE_TYPES.DataSeedRegistry).to(DataSeedRegistryBackendService).inSingletonScope();
@@ -1 +1 @@
1
- {"version":3,"file":"container.js","sourceRoot":"","sources":["../../../../../src/inject/models/container.ts"],"names":[],"mappings":"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","sourcesContent":["import { Container, injectable } from 'inversify';\nimport 'reflect-metadata';\nimport { SAAS_SERVICE_TYPES } from './service-types';\n\n// Core Services\nimport { LoggerService } from '~wildo-backend-lib/monitoring/logger/services/logger.service';\nimport { AppConfigurationService } from '~wildo-backend-lib/config/services/app-configuration.backend.service';\nimport { AppConfigurationLoaderService } from '~wildo-backend-lib/config/services/app-configuration-loader.backend.service';\nimport { ApplicationStartupConfigValidatorService } from '~wildo-backend-lib/config/services/application-startup-config-validator.backend.service';\nimport { RedisService } from '~wildo-backend-lib/databases/services/redis.service';\nimport { MongoDBService } from '~wildo-backend-lib/databases/services/mongodb.service';\nimport { PostgreSQLDatabaseBackendService } from '~wildo-backend-lib/databases/services/postgresql-database.backend.service';\nimport { ResourcePersistenceUnitOfWorkBackendService } from '~wildo-backend-lib/databases/services/resource-persistence-unit-of-work.backend.service';\n\n// Authentication & Security Services\nimport { JwtBackendService } from '~wildo-backend-lib/security/jwt/services/jwt.backend.service';\nimport { WildoWorkerBootstrapClientService } from '~wildo-backend-lib/security/jwt/services/wildo-worker-bootstrap-client.backend.service';\nimport { AuthorizationsBackendService } from '~wildo-backend-lib/security/authorizations/services/authorizations.backend.service';\n\n// Audit & Compliance Services\nimport { AuditLogsBackendService } from '~wildo-backend-lib/compliance/audit-trails/services/audit-logs.backend.service';\nimport { SubjectErasureExternalEffectsRegistryBackendService } from '~wildo-backend-lib/compliance/privacy/services/subject-erasure-external-effects.backend.service';\nimport { SubjectSessionRevocationBackendService } from '~wildo-backend-lib/compliance/privacy/services/subject-session-revocation.backend.service';\nimport { AuditEventDispatcherBackendService } from '~wildo-backend-lib/compliance/audit-trails/services/audit-event-dispatcher.backend.service';\nimport { SIEMWebhookDeliveryBackendService } from '~wildo-backend-lib/compliance/audit-trails/services/siem-webhook-delivery.backend.service';\n\n\n// Communication Services\nimport { WebSocketService } from '~wildo-backend-lib/requests/service/websocket.service';\n\n// Error Handling Services\nimport { ErrorHandlerService } from '~wildo-backend-lib/errors/services/error-handler.backend.service';\nimport { ErrorBuilderBackendService } from '~wildo-backend-lib/errors/services/error-builder.backend.service';\nimport { RateLimitBackendService } from '~wildo-backend-lib/errors/services/rate-limit.backend.service';\n\n// Monitoring Services\nimport { MetricsService } from '~wildo-backend-lib/monitoring/observability/services/metrics.service';\nimport { ObservabilityBackendService } from '~wildo-backend-lib/monitoring/observability/services/observability.backend.service';\n\n// Organization Services\nimport { AuthOrganizationConfigurationService } from '~wildo-backend-lib/security/authentications/services/admin-config/auth-organization-configuration.service';\n\n// Repository Services\nimport { ResourceOperationHelperBackendService } from '~wildo-backend-lib/base-classes/services/resource-operations-helper.backend.service';\nimport { RepositoriesRegistryHandlerBackendService } from '~wildo-backend-lib/base-classes/services/repositories/repositories-registry-handler.backend.service';\nimport { ZodToMongooseSchemaConvertorBackendService } from '~wildo-backend-lib/databases/services/zod-to-mongoose-schema-convertor.backend.service';\nimport { ZodToSqlHybridSchemaPlannerBackendService } from '~wildo-backend-lib/databases/services/zod-to-sql-hybrid-schema.planner';\nimport { PostgreSQLFilterBackendService } from '~wildo-backend-lib/databases/services/postgresql-filter.backend.service';\n\n// Database-agnostic Services\nimport { ResourceIdBackendService } from '~wildo-backend-lib/resources/services/resource-id.backend.service';\n\n// Service Layer Services\nimport { ServicesRegistryHandlerBackendService } from '~wildo-backend-lib/base-classes/services/services/services-registry-handler.backend.service';\nimport { SystemAccessBackendService } from '~wildo-backend-lib/base-classes/services/services/system-access.backend.service';\nimport { RuntimePrincipalBackendService } from '~wildo-backend-lib/config/bootstrap/runtime-principal.backend.service';\nimport { RuntimePrincipalAttestationBackendService } from '~wildo-backend-lib/config/bootstrap/runtime-principal-attestation.backend.service';\n\n// Controller Layer Services\nimport { ControllersRegistryHandlerBackendService } from '~wildo-backend-lib/base-classes/services/controllers/controllers-registry-handler.backend.service';\nimport { ApplicationConfigControllerBackendService } from '~wildo-backend-lib/config/custom/application-config-controller.backend.service';\nimport { AuthenticationControllerBackendService } from '~wildo-backend-lib/security/authentications/controllers/authentication-controller.backend.service';\nimport { OAuthProviderControllerBackendService } from '~wildo-backend-lib/security/authentications/controllers/oauth-provider-controller.backend.service';\nimport { OidcAuthorizationCodeBackendService } from '~wildo-backend-lib/security/authentications/services/oidc-authorization-code.backend.service';\nimport { OidcUserClaimsBackendService } from '~wildo-backend-lib/security/authentications/services/oidc-user-claims.backend.service';\nimport { CimdClientMetadataBackendService } from '~wildo-backend-lib/security/authentications/services/cimd-client-metadata.backend.service';\n// === MCP === (external-access MCP-server branch — additive)\nimport { McpToolAdapterBackendService } from '~wildo-backend-lib/mcp/services/mcp-tool-adapter.backend.service';\nimport { McpServerBackendService } from '~wildo-backend-lib/mcp/services/mcp-server.backend.service';\nimport { ResourceServerInstancesRegistryBackendService } from '~wildo-backend-lib/mcp/services/resource-server-instances-registry.backend.service';\nimport { MCPControllerBackendService } from '~wildo-backend-lib/mcp/controllers/mcp.controller';\n// === /MCP ===\nimport { I18nControllerBackendService } from '~wildo-backend-lib/i18n/controllers/i18n-controller.backend.service';\nimport { AuthenticationOrchestratorBackendService } from '~wildo-backend-lib/security/authentications/services/authentication-orchestrator.backend.service';\nimport { AuthExecutionContextFactoryBackendService } from '~wildo-backend-lib/security/authentications/services/auth-execution-context-factory.backend.service';\nimport { AuthSessionStoreBackendService } from '~wildo-backend-lib/security/authentications/services/auth-session-store.backend.service';\nimport { AuthCredentialVerifierBackendService } from '~wildo-backend-lib/security/authentications/services/auth-credential-verifier.backend.service';\nimport { AuthTokenIssuerBackendService } from '~wildo-backend-lib/security/authentications/services/auth-token-issuer.backend.service';\nimport { MachineTokenIssuerBackendService } from '~wildo-backend-lib/security/authentications/services/machine-token-issuer.backend.service';\nimport { OAuthProviderTokenBackendService } from '~wildo-backend-lib/security/authentications/services/oauth-provider-token.backend.service';\nimport { AuthResponseHelperBackendService } from '~wildo-backend-lib/security/authentications/services/utils/auth-response-helper.backend.service';\nimport { AuthUserLookupBackendService } from '~wildo-backend-lib/security/authentications/services/utils/auth-user-lookup.backend.service';\nimport { AuthCredentialOpsBackendService } from '~wildo-backend-lib/security/authentications/services/utils/auth-credential-ops.backend.service';\nimport { AuthJwtGuardBackendService } from '~wildo-backend-lib/security/jwt/services/auth-jwt-guard.backend.service';\nimport { AuthPasswordResetBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/auth-password-reset.backend.service';\nimport { AuthRegistrationBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/auth-registration.backend.service';\nimport { EmailVerificationInitiatorBackendService } from '~wildo-backend-lib/security/authentications/services/email-verification-initiator.backend.service';\nimport { AuthMfaBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/auth-mfa.backend.service';\nimport { AuthPhoneVerificationBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/auth-phone-verification.backend.service';\nimport { OAuth2ConnectionResolverBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service';\nimport { OAuth2AuthenticationBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/oauth2-authentication.backend.service';\nimport { OIDCDiscoveryBackendService } from '~wildo-backend-lib/security/authentications/services/admin-config/oidc-discovery.backend.service';\nimport { DomainToOrgLookupBackendService } from '~wildo-backend-lib/security/authentications/services/admin-config/domain-to-org-lookup.backend.service';\nimport { DomainVerificationBackendService } from '~wildo-backend-lib/security/authentications/services/admin-config/domain-verification.backend.service';\nimport { EnterpriseUserProvisioningBackendService } from '~wildo-backend-lib/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service';\nimport { WebAuthnBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/webauthn.backend.service';\nimport { SCIMControllerBackendService } from '~wildo-backend-lib/security/scim/controllers/scim.backend.controller';\nimport { AuthMethodManagementBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/auth-method-management.backend.service';\nimport { AuthMethodManagementControllerBackendService } from '~wildo-backend-lib/security/authentications/controllers/auth-method-management-controller.backend.service';\nimport { SAMLReplayGuardBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/saml-replay-guard.backend.service';\nimport { SAMLMetadataBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/saml-metadata.backend.service';\nimport { SAMLAssertionValidatorBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/saml-assertion-validator.backend.service';\nimport { SAMLAuthenticationBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/saml-authentication.backend.service';\nimport { HealthControllerBackendService } from '~wildo-backend-lib/runtime/controllers/health-controller.backend.service';\n\n// HTTP Server Services\nimport { HttpServerBackendService } from '~wildo-backend-lib/runtime/services/http-server.backend.service';\n\n// Resource Registry Services\nimport { ResourcesRegistryBackendService } from '~wildo-backend-lib/resources/services/resources-registry.backend.service';\nimport { VirtualFieldsBackendService } from '~wildo-backend-lib/resources/services/virtual-fields.backend.service';\nimport { ResourcePopulationBackendService } from '~wildo-backend-lib/resources/services/resource-population.backend.service';\nimport { ResourceContextBackendService } from '~wildo-backend-lib/resources/services/resource-context.backend.service';\n\n// External Providers Registry Services\nimport { BackendProviderRegistryBackendService } from '~wildo-backend-lib/external-providers/services/backend-provider-registry.backend.service';\nimport { ExternalProvidersRegistryBackendService } from '~wildo-backend-lib/external-providers/services/external-providers-registry.backend.service';\nimport { DefaultFrontendBootstrapBackendService } from '~wildo-backend-lib/external-providers/services/frontend-bootstrap.backend.service';\n\n// Feature System Services\nimport { FeatureDefinitionRegistryBackendService } from '~wildo-backend-lib/features/services/feature-definition-registry.backend.service';\nimport { FeatureResolutionBackendService } from '~wildo-backend-lib/features/services/feature-resolution.backend.service';\nimport { FeatureGateBackendService } from '~wildo-backend-lib/features/services/feature-gate.backend.service';\nimport { FeaturesControllerBackendService } from '~wildo-backend-lib/features/controllers/features.backend.controller';\n\n// Consumable Token Services\nimport { ConsumableTokenBackendService } from '~wildo-backend-lib/security/consumable-tokens/services/consumable-token.backend.service';\nimport { AnonymousSessionBackendService } from '~wildo-backend-lib/security/authentications/services/anonymous-session.backend.service';\n\n// Billing System Services\nimport { BillingFeatureSyncBackendService } from '~wildo-backend-lib/billing/services/back-office/billing-feature-sync.backend.service';\nimport { ProductCatalogSyncBackendService } from '~wildo-backend-lib/billing/services/back-office/product-catalog-sync.backend.service';\nimport { UsageMeteringBackendService } from '~wildo-backend-lib/billing/services/back-office/usage-metering.backend.service';\nimport { BillingStateBackendService } from '~wildo-backend-lib/billing/services/back-office/billing-state.backend.service';\nimport { WebhookHandlerBackendService } from '~wildo-backend-lib/notifications/webhooks/services/webhook-handler.backend.service';\nimport { WebhookAutoControllerBackendService } from '~wildo-backend-lib/notifications/webhooks/controllers/webhook-auto-controller.backend.service';\nimport { PolymorphicLookupBackendService } from '~wildo-backend-lib/notifications/webhooks/services/polymorphic-lookup.backend.service';\n\n// Application Runtime Services\nimport { StartApplicationBackendService } from '~wildo-backend-lib/runtime/services/start-application.backend.service';\nimport { ExecutionContextHandlerBackendService } from '~wildo-backend-lib/runtime/services/execution-context-handler.backend.service';\nimport { ExecutionContextCreatorBackendService } from '~wildo-backend-lib/runtime/services/execution-context-creator.backend.service';\n\n// Notification Services\nimport { NotificationDispatcherService } from '~wildo-backend-lib/notifications/services/notifications-dispatcher.backend.service';\nimport { NotificationBadgeBackendService } from '~wildo-backend-lib/notifications/services/notification-badge.backend.service';\n// M2M Outbound Webhook Services (Phase 3 — m2m-webhook-organization-delivery)\nimport { WebhookConfigBackendService } from '~wildo-backend-lib/notifications/webhooks/outbound/services/webhook-config.backend.service';\nimport { M2MWebhookDispatcherBackendService } from '~wildo-backend-lib/notifications/webhooks/outbound/services/m2m-webhook-dispatcher.backend.service';\nimport { M2MWebhookDeliveryLogRepository } from '~wildo-backend-lib/notifications/webhooks/outbound/services/m2m-webhook-delivery-log.repository';\n\nimport { BatchesCronjobsExecutor_BackendService } from '~wildo-backend-lib/base-classes/services/batches/batches-cronjobs-executor.backend.service';\n// Handlers (placeholders)\nimport { ExternalApiHandlerBackendService } from '~wildo-backend-lib/external-providers/services/external-api-handler.backend.service';\nimport { PlatformMutualizedHandlerBackendService } from '~wildo-backend-lib/requests/service/platform-mutualized-handler.backend.service';\nimport { ServerlessServicesHandlerBackendService } from '~wildo-backend-lib/requests/service/serverless-services-handler.backend.service';\n\nimport { ResourceOperationCustomImplementationRegistryBackendService } from '~wildo-backend-lib/base-classes/services/services/resource-operation-custom-implementation-registry.backend.service';\nimport { I18nBackendService } from '~wildo-backend-lib/i18n/services/i18n.backend.service';\n\n// Flows-Actors Services\nimport { FlowsActorsRegistryService } from '~wildo-backend-lib/flows-actors/services/flows-actors-registry.service';\nimport { FlowsActorsControllerBackendService } from '~wildo-backend-lib/flows-actors/controllers/flows-actors.controller';\nimport { AgentsBackendService } from '~wildo-backend-lib/flows-actors/services/agents.backend.service';\nimport { ConversationalExecutionBackendService } from '~wildo-backend-lib/flows-actors/services/conversational-execution.backend.service';\n// === A2A (external actor exposure) ===\nimport { A2ABackendService } from '~wildo-backend-lib/flows-actors/a2a/services/a2a.backend.service';\nimport { A2ATokenBudgetBackendService } from '~wildo-backend-lib/flows-actors/a2a/services/a2a-token-budget.backend.service';\nimport { A2ATaskBackendService } from '~wildo-backend-lib/flows-actors/a2a/services/a2a-task.backend.service';\nimport { A2APushDeliveryLogRepository } from '~wildo-backend-lib/flows-actors/a2a/services/a2a-push-delivery-log.repository';\nimport { A2APushDispatcherBackendService } from '~wildo-backend-lib/flows-actors/a2a/services/a2a-push-dispatcher.backend.service';\nimport { A2ATaskCancellationBackendService } from '~wildo-backend-lib/flows-actors/a2a/services/a2a-task-cancellation.backend.service';\nimport { A2AControllerBackendService } from '~wildo-backend-lib/flows-actors/a2a/controllers/a2a.controller';\nimport { LlmObservabilityAgentCallTraceSink } from '~wildo-backend-lib/flows-actors/services/llm-observability-agent-call-trace-sink.backend';\nimport { CompositeAuditLogSink } from '~wildo-backend-lib/compliance/audit-trails/services/composite-audit-log-sink.backend';\nimport { AgentTraceabilityLevel, type AgentTraceabilityPolicy } from '@wildo-ai/saas-models';\nimport { ContextCurationBackendService } from '~wildo-backend-lib/flows-actors/services/context-curation.backend.service';\nimport { PromptCompilerBackendService } from '~wildo-backend-lib/flows-actors/services/prompt-compiler.backend.service';\nimport { FlowsBackendService } from '~wildo-backend-lib/flows-actors/services/flows.backend.services';\nimport { ActorsSystemBackendService } from '~wildo-backend-lib/flows-actors/services/actors-system.backend.service';\n\n// File Management Services\nimport { FileConstraintResolverChain } from '~wildo-backend-lib/files/constraints/file-constraint-resolver-chain.backend.service';\nimport { FileValidationService } from '~wildo-backend-lib/files/constraints/file-validation.backend.service';\nimport { ResourceFieldConstraintResolver } from '~wildo-backend-lib/files/constraints/resource-field-constraint-resolver.backend.service';\nimport { FilesBackendService } from '~wildo-backend-lib/files/services/files.backend.service';\nimport { ResourceFileUploadHandlerBackendService } from '~wildo-backend-lib/files/handlers/resource-file-upload-handler.backend.service';\nimport { FileFieldDetectionBackendService } from '~wildo-backend-lib/files/services/file-field-detection.backend.service';\nimport { RagSourceFieldDetectionBackendService } from '~wildo-backend-lib/files/services/rag-source-field-detection.backend.service';\nimport { RagChunkStoreBackendService } from '~wildo-backend-lib/rag/services/rag-chunk-store.backend.service';\nimport { MongodbRagChunkStoreBackendService } from '~wildo-backend-lib/rag/services/mongodb-rag-chunk-store.backend.service';\nimport { PostgresqlRagChunkStoreBackendService } from '~wildo-backend-lib/rag/services/postgresql-rag-chunk-store.backend.service';\nimport { RagIngestionBackendService } from '~wildo-backend-lib/rag/services/rag-ingestion.backend.service';\nimport { RagRetrievalBackendService } from '~wildo-backend-lib/rag/services/rag-retrieval.backend.service';\nimport { EmbeddingsBackendService } from '~wildo-backend-lib/external-providers/services/embeddings.backend.service';\nimport { DocumentExtractionBackendService } from '~wildo-backend-lib/external-providers/services/document-extraction.backend.service';\nimport { FileController } from '~wildo-backend-lib/files/controllers/file.controller';\nimport { FilePopulationBackendService } from '~wildo-backend-lib/files/services/file-population.backend.service';\nimport { FileOperationHandlerBackendService } from '~wildo-backend-lib/files/services/file-operation-handler.backend.service';\nimport { FileScanningBackendService } from '~wildo-backend-lib/files/services/file-scanning.backend.service';\nimport { ClamAVScannerBackendService } from '~wildo-backend-lib/files/scanning/clamav-scanner.backend.service';\nimport { YaraScannerBackendService } from '~wildo-backend-lib/files/scanning/yara-scanner.backend.service';\nimport { FileTextExtractionBackendService } from '~wildo-backend-lib/files/services/file-text-extraction.backend.service';\nimport { WildoManagedStorageProvider } from '~wildo-backend-lib/files/storage/wildo-managed-storage-provider.backend.service';\nimport { LocalDirectoryStorageProvider } from '~wildo-backend-lib/files/storage/local-directory-storage-provider.backend.service';\nimport { FileStorageRouterBackendService } from '~wildo-backend-lib/files/storage/file-storage-router.backend.service';\nimport { FileStoragePathResolverBackendService } from '~wildo-backend-lib/files/storage/file-storage-path-resolver.backend.service';\nimport { PdfTemplateBindingBackendService } from '~wildo-backend-lib/pdf-templates/services/pdf-template-binding.backend.service';\nimport { PdfGeneratedFileWriterBackendService } from '~wildo-backend-lib/pdf-templates/services/pdf-generated-file-writer.backend.service';\nimport { PdfRendererBackendService } from '~wildo-backend-lib/pdf-templates/services/pdf-renderer.backend.service';\nimport { PdfGenerationOrchestratorBackendService } from '~wildo-backend-lib/pdf-templates/services/pdf-generation-orchestrator.backend.service';\n\n// Queue System Services\nimport { RabbitMQAdapterBackendService } from '~wildo-backend-lib/queue/adapters/rabbitmq-adapter.backend.service';\nimport { QueueBackendService } from '~wildo-backend-lib/queue/queue.backend.service';\nimport { JobExecutorBackendService } from '~wildo-backend-lib/queue/job-executor.backend.service';\nimport { JobStatusTrackingBackendService } from '~wildo-backend-lib/queue/job-status-tracking.backend.service';\nimport { JobPayloadStorageBackendService } from '~wildo-backend-lib/queue/job-payload-storage.backend.service';\nimport { JobConsumerBackendService } from '~wildo-backend-lib/queue/job-consumer.backend.service';\nimport { WorkerShutdownManagerBackendService } from '~wildo-backend-lib/queue/worker-shutdown-manager.backend.service';\nimport { JobCompletionRegistryBackendService } from '~wildo-backend-lib/queue/job-completion-registry.backend.service';\nimport { DomainQueueConsumerBackendService } from '~wildo-backend-lib/queue/domain-queue-consumer.backend.service';\nimport { ScheduledMessageVerifierBackendService } from '~wildo-backend-lib/queue/scheduled-message-verifier.backend.service';\nimport { QueueMonitoringBackendService } from '~wildo-backend-lib/queue/queue-monitoring.backend.service';\nimport { QueueWorkerInitializerBackendService } from '~wildo-backend-lib/queue/queue-worker-initializer.backend.service';\nimport { CronJobSyncBackendService } from '~wildo-backend-lib/queue/cron-job-sync.backend.service';\n\n// Remote Client Services\nimport { AppsCrontabManagerBackendService } from '~wildo-backend-lib/queue/apps-crontabs-manager.backend.service';\nimport { WorkerRemoteClientFactoryBackendService } from '~wildo-backend-lib/applications/services/worker-remote-client-factory.backend.service';\n\n// Aggregation & Chart Services\nimport { MongoAggregationCompilerBackendService } from '~wildo-backend-lib/databases/services/mongo-aggregation.backend.service';\nimport { PostgreSQLAggregationCompilerBackendService } from '~wildo-backend-lib/databases/services/postgresql-aggregation.backend.service';\nimport { AggregationQueryBackendService } from '~wildo-backend-lib/databases/services/aggregation/aggregation-query.backend.service';\nimport { FieldAccessValidatorBackendService } from '~wildo-backend-lib/databases/services/aggregation/field-access-validator.backend.service';\nimport { AggregationAuthorizationBackendService } from '~wildo-backend-lib/databases/services/aggregation/aggregation-authorization.backend.service';\nimport { TimeSeriesDensifierBackendService } from '~wildo-backend-lib/databases/services/aggregation/time-series-densifier.backend.service';\nimport { ComputedMeasureEvaluatorBackendService } from '~wildo-backend-lib/databases/services/aggregation/computed-measure-evaluator.backend.service';\nimport { WindowFunctionProcessorBackendService } from '~wildo-backend-lib/databases/services/aggregation/window-function-processor.backend.service';\nimport { TopNProcessorBackendService } from '~wildo-backend-lib/databases/services/aggregation/topn-processor.backend.service';\nimport { ChartRegistryBackendService } from '~wildo-backend-lib/charts/services/chart-registry.backend.service';\nimport { ChartControllerBackendService } from '~wildo-backend-lib/charts/controllers/chart.backend.controller';\n\n// Analytics & Value Moment Services\nimport { ValueMomentHandlerRegistryBackendService } from '~wildo-backend-lib/monitoring/analytics/services/value-moment-handler-registry.backend.service';\nimport { ValueMomentEngineBackendService } from '~wildo-backend-lib/monitoring/analytics/services/value-moment-engine.backend.service';\nimport { AnalyticsBackendController } from '~wildo-backend-lib/monitoring/analytics/controllers/analytics.backend.controller';\n\n// Guidance System Services\nimport { GuidanceTriggerEvaluatorBackendService } from '~wildo-backend-lib/guidance/services/guidance-trigger-evaluator.backend.service';\n\n// Progression System Services\nimport { MilestoneDefinitionRegistryBackendService } from '~wildo-backend-lib/guidance/services/milestone-definition-registry.backend.service';\nimport { MilestoneConditionRegistryBackendService } from '~wildo-backend-lib/guidance/services/milestone-condition-registry.backend.service';\nimport { MilestoneEvaluatorBackendService } from '~wildo-backend-lib/guidance/services/milestone-evaluator.backend.service';\nimport { LifecycleEvaluatorBackendService } from '~wildo-backend-lib/guidance/services/lifecycle-evaluator.backend.service';\n\n// Data Seeding System Services\nimport { DataSeedRegistryBackendService } from '~wildo-backend-lib/data-seeding/services/data-seed-registry.backend.service';\nimport { DataSeedDispatcherBackendService } from '~wildo-backend-lib/data-seeding/services/data-seed-dispatcher.backend.service';\nimport { AdditiveSeedEngineBackendService } from '~wildo-backend-lib/data-seeding/services/engines/additive-seed-engine.backend.service';\nimport { UpgradeSeedEngineBackendService } from '~wildo-backend-lib/data-seeding/services/engines/upgrade-seed-engine.backend.service';\nimport { SyncSeedEngineBackendService } from '~wildo-backend-lib/data-seeding/services/engines/sync-seed-engine.backend.service';\nimport { ExternalDataPipelineRunBackendService } from '~wildo-backend-lib/external-data/external-data-pipeline-run.backend.service';\nimport { LazySeedEngineBackendService } from '~wildo-backend-lib/data-seeding/services/engines/lazy-seed-engine.backend.service';\nimport { ManualSeedEngineBackendService } from '~wildo-backend-lib/data-seeding/services/engines/manual-seed-engine.backend.service';\nimport { DataSeedScopeResolverRegistryBackendService } from '~wildo-backend-lib/data-seeding/services/data-seed-scope-resolver-registry.backend.service';\nimport { DataSeedingAdminBackendController } from '~wildo-backend-lib/data-seeding/controllers/data-seeding-admin.backend.controller';\n\n// Email System Services\nimport { EmailTemplateValidatorBackendService } from '~wildo-backend-lib/notifications/email/services/email-template-validator.backend.service';\nimport { EmailTemplateCompilerBackendService } from '~wildo-backend-lib/notifications/email/services/email-template-compiler.backend.service';\nimport { EmailTemplateSandboxBackendService } from '~wildo-backend-lib/notifications/email/services/email-template-sandbox.backend.service';\nimport { EmailContextProviderRegistryBackendService } from '~wildo-backend-lib/notifications/email/services/email-context-provider-registry.backend.service';\nimport { EmailTemplateRegistryBackendService } from '~wildo-backend-lib/notifications/email/services/email-template-registry.backend.service';\nimport { EmailBackendService } from '~wildo-backend-lib/notifications/email/services/email.backend.service';\nimport { SMSBackendService } from '~wildo-backend-lib/notifications/sms/services/sms.backend.service';\n\n/**\n * Global container instance for cross-package injection\n * This enables other packages to access backend services\n */\nlet globalContainer: Container | null = null;\n\n\n/**\n * Core SaaS Backend Dependency Injection Container\n *\n * This container provides currently implemented SaaS infrastructure services.\n * Services are bound based on their implementation status and dependencies.\n */\nexport class SaasContainer {\n private container: Container;\n\n constructor() {\n this.container = new Container({\n defaultScope: 'Singleton',\n });\n this.setupCoreServices();\n }\n\n /**\n * Setup currently implemented SaaS infrastructure services\n */\n private setupCoreServices(): void {\n // Configure container options\n\n // Bind the container itself for services that need to resolve dependencies dynamically\n this.container.bind(SAAS_SERVICE_TYPES.Container).toConstantValue(this.container);\n this.container.bind('Container').toConstantValue(this.container);\n\n\n // Core Infrastructure Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.Logger).to(LoggerService).inSingletonScope();\n\n // Database Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.RedisService).to(RedisService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.MongoDBService).to(MongoDBService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PostgreSQLDatabaseService).to(PostgreSQLDatabaseBackendService).inSingletonScope();\n\n // Configuration Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.AppConfigService).to(AppConfigurationService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AppConfigLoaderService).to(AppConfigurationLoaderService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ApplicationStartupConfigValidatorService).to(ApplicationStartupConfigValidatorService).inSingletonScope();\n\n // Authentication & Security Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.JwtBackendService).to(JwtBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.WildoWorkerBootstrapClientService).to(WildoWorkerBootstrapClientService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthorizationsService).to(AuthorizationsBackendService).inSingletonScope();\n\n // Communication Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.WebSocketService).to(WebSocketService).inSingletonScope();\n\n // Error Handling Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ErrorHandlerService).to(ErrorHandlerService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ErrorBuilderService).to(ErrorBuilderBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.RateLimitBackendService).to(RateLimitBackendService).inSingletonScope();\n\n // Audit & Compliance Services - Currently Implemented & Bound\n // SIEM dispatcher + delivery must be bound before AuditLogsService (which depends on dispatcher)\n this.container.bind(SAAS_SERVICE_TYPES.AuditEventDispatcherService).to(AuditEventDispatcherBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SIEMWebhookDeliveryService).to(SIEMWebhookDeliveryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuditLogsService).to(AuditLogsBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SubjectErasureExternalEffectsService).to(SubjectErasureExternalEffectsRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SubjectSessionRevocationService).to(SubjectSessionRevocationBackendService).inSingletonScope();\n\n // Monitoring & Observability Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.MetricsService).to(MetricsService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ObservabilityBackendService).to(ObservabilityBackendService).inSingletonScope();\n\n // Organization Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.AuthOrganizationConfigurationService).to(AuthOrganizationConfigurationService).inSingletonScope();\n\n // Database Converter Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ZodToMongooseSchemaConvertorService).to(ZodToMongooseSchemaConvertorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ZodToSqlHybridSchemaPlannerService).to(ZodToSqlHybridSchemaPlannerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PostgreSQLFilterBackendService).to(PostgreSQLFilterBackendService).inSingletonScope();\n\n // Database-agnostic Services\n this.container.bind(SAAS_SERVICE_TYPES.ResourceIdBackendService).to(ResourceIdBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ResourcePersistenceUnitOfWorkService).to(ResourcePersistenceUnitOfWorkBackendService).inSingletonScope();\n\n // Repository Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ResourceOperationHelperService).to(ResourceOperationHelperBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.RepositoriesRegistryHandlerService).to(RepositoriesRegistryHandlerBackendService).inSingletonScope();\n\n // Service Layer Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ServicesRegistryHandlerService).to(ServicesRegistryHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SystemAccessService).to(SystemAccessBackendService).inSingletonScope();\n // Process-level runtime identity, initialized once at startup. Singleton because a\n // process has exactly one identity for its lifetime.\n this.container.bind(SAAS_SERVICE_TYPES.RuntimePrincipalService).to(RuntimePrincipalBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.RuntimePrincipalAttestationService).to(RuntimePrincipalAttestationBackendService).inSingletonScope();\n\n // Controller Layer Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ControllersRegistryHandlerService).to(ControllersRegistryHandlerBackendService).inSingletonScope();\n\n // Manual Controllers - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ApplicationConfigController).to(ApplicationConfigControllerBackendService).inSingletonScope();\n // Authentication sub-services\n this.container.bind(SAAS_SERVICE_TYPES.AuthSessionStore).to(AuthSessionStoreBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthCredentialVerifier).to(AuthCredentialVerifierBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthTokenIssuer).to(AuthTokenIssuerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.MachineTokenIssuer).to(MachineTokenIssuerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.OAuthProviderToken).to(OAuthProviderTokenBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.OidcAuthorizationCode).to(OidcAuthorizationCodeBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.OidcUserClaims).to(OidcUserClaimsBackendService).inSingletonScope();\n // Singleton on purpose: the CIMD service holds the per-pod client-metadata cache, so a\n // transient binding would give every authorize request a cold cache and turn each one into an\n // outbound fetch of a stranger's URL.\n this.container.bind(SAAS_SERVICE_TYPES.CimdClientMetadata).to(CimdClientMetadataBackendService).inSingletonScope();\n // === MCP === (external-access MCP-server branch — additive)\n this.container.bind(SAAS_SERVICE_TYPES.McpToolAdapter).to(McpToolAdapterBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.McpServer).to(McpServerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ResourceServerInstancesRegistry).to(ResourceServerInstancesRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.MCPController).to(MCPControllerBackendService).inSingletonScope();\n // === /MCP ===\n // Auth controller extraction services (auth-controller-service-migration)\n this.container.bind(SAAS_SERVICE_TYPES.AuthResponseHelperService).to(AuthResponseHelperBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthUserLookupService).to(AuthUserLookupBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthCredentialOpsService).to(AuthCredentialOpsBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthJwtGuardService).to(AuthJwtGuardBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthPasswordResetService).to(AuthPasswordResetBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthRegistrationService).to(AuthRegistrationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EmailVerificationInitiatorService).to(EmailVerificationInitiatorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthMfaService).to(AuthMfaBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthPhoneVerificationService).to(AuthPhoneVerificationBackendService).inSingletonScope();\n // OAuth2 Authentication Services (Step 4)\n // NOTE: Resolver must be bound BEFORE the engine (engine depends on resolver via DI)\n this.container.bind(SAAS_SERVICE_TYPES.OIDCDiscoveryService).to(OIDCDiscoveryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.OAuth2ConnectionResolverService).to(OAuth2ConnectionResolverBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.OAuth2AuthenticationService).to(OAuth2AuthenticationBackendService).inSingletonScope();\n // Enterprise SSO Services (Steps 14-15)\n this.container.bind(SAAS_SERVICE_TYPES.DomainToOrgLookupService).to(DomainToOrgLookupBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.DomainVerificationService).to(DomainVerificationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EnterpriseUserProvisioningService).to(EnterpriseUserProvisioningBackendService).inSingletonScope();\n // WebAuthn/Passkey ceremony service (Phase G1)\n this.container.bind(SAAS_SERVICE_TYPES.WebAuthnService).to(WebAuthnBackendService).inSingletonScope();\n // SCIM Controller (Step 20) — directory provisioning via SCIM 2.0\n this.container.bind(SAAS_SERVICE_TYPES.SCIMController).to(SCIMControllerBackendService).inSingletonScope();\n // SAML 2.0 Protocol Engine (AUTH-2)\n this.container.bind(SAAS_SERVICE_TYPES.SAMLReplayGuardService).to(SAMLReplayGuardBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SAMLMetadataService).to(SAMLMetadataBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SAMLAssertionValidatorService).to(SAMLAssertionValidatorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SAMLAuthenticationService).to(SAMLAuthenticationBackendService).inSingletonScope();\n // Auth method management (#13f)\n this.container.bind(SAAS_SERVICE_TYPES.AuthMethodManagementService).to(AuthMethodManagementBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthMethodManagementController).to(AuthMethodManagementControllerBackendService).inSingletonScope();\n // Auth EC factory (W2.9) + orchestrator\n this.container.bind(SAAS_SERVICE_TYPES.AuthExecutionContextFactory).to(AuthExecutionContextFactoryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthenticationOrchestratorService).to(AuthenticationOrchestratorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthenticationController).to(AuthenticationControllerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.OAuthProviderController).to(OAuthProviderControllerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.I18nController).to(I18nControllerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.HealthController).to(HealthControllerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileController).to(FileController).inSingletonScope();\n\n // HTTP Server Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.HttpServerService).to(HttpServerBackendService).inSingletonScope();\n\n // Resource Registry Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ResourceRegistryService).to(ResourcesRegistryBackendService).inSingletonScope();\n\n // Virtual Fields Services - For decorator-based field handling\n this.container.bind(SAAS_SERVICE_TYPES.VirtualFieldsService).to(VirtualFieldsBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ResourceContextService).to(ResourceContextBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ResourcePopulationService).to(ResourcePopulationBackendService).inSingletonScope();\n\n // Backend Provider Registry - first-class provider modules\n this.container.bind(SAAS_SERVICE_TYPES.BackendProviderRegistryService).to(BackendProviderRegistryBackendService).inSingletonScope();\n\n // External Providers Registry Services - Runtime policy/config/secrets facade\n this.container.bind(SAAS_SERVICE_TYPES.ExternalProvidersRegistryService).to(ExternalProvidersRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FrontendBootstrapBackendService).to(DefaultFrontendBootstrapBackendService).inSingletonScope();\n\n // Feature System Services\n this.container.bind(SAAS_SERVICE_TYPES.FeatureDefinitionRegistryService).to(FeatureDefinitionRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FeatureResolutionService).to(FeatureResolutionBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FeatureGateService).to(FeatureGateBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FeaturesController).to(FeaturesControllerBackendService).inSingletonScope();\n\n // Consumable Token Services\n this.container.bind(SAAS_SERVICE_TYPES.ConsumableTokenService).to(ConsumableTokenBackendService).inSingletonScope();\n\n // Anonymous Session Service (W7.3a)\n this.container.bind(SAAS_SERVICE_TYPES.AnonymousSessionService).to(AnonymousSessionBackendService).inSingletonScope();\n\n // Webhook System Services\n this.container.bind(SAAS_SERVICE_TYPES.WebhookHandlerService).to(WebhookHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.WebhookAutoController).to(WebhookAutoControllerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PolymorphicLookupService).to(PolymorphicLookupBackendService).inSingletonScope();\n\n // Billing System Services\n this.container.bind(SAAS_SERVICE_TYPES.BillingFeatureSyncService).to(BillingFeatureSyncBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ProductCatalogSyncService).to(ProductCatalogSyncBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.UsageMeteringService).to(UsageMeteringBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.BillingStateService).to(BillingStateBackendService).inSingletonScope();\n\n // Application Runtime Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.StartApplicationService).to(StartApplicationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ExecutionContextHandlerService).to(ExecutionContextHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ExecutionContextCreatorBackendService).to(ExecutionContextCreatorBackendService).inSingletonScope();\n\n // M2M Outbound Webhook Services (Phase 3) — bound BEFORE NotificationDispatcherService\n // because the dispatcher takes M2MWebhookDispatcherService as a constructor\n // dependency. Inversify resolution order is dependency-driven (not file\n // order), but binding webhook services first keeps the wire-up explicit.\n this.container.bind(SAAS_SERVICE_TYPES.M2MWebhookDeliveryLogRepository).to(M2MWebhookDeliveryLogRepository).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.WebhookConfigService).to(WebhookConfigBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.M2MWebhookDispatcherService).to(M2MWebhookDispatcherBackendService).inSingletonScope();\n\n // Notification Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.NotificationDispatcherService).to(NotificationDispatcherService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.NotificationBadgeService).to(NotificationBadgeBackendService).inSingletonScope();\n // I18n Service - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.I18nService).to(I18nBackendService).inSingletonScope();\n\n // Requests & Remote Clients - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.AppsCrontabManagerService).to(AppsCrontabManagerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.WorkerRemoteClientFactoryService).to(WorkerRemoteClientFactoryBackendService).inSingletonScope();\n\n // Batch/Cron Jobs - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.BatchesCronjobsExecutorService).to(BatchesCronjobsExecutor_BackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.CronJobSyncService).to(CronJobSyncBackendService).inSingletonScope();\n\n // Handlers - Placeholder implementations\n this.container.bind(SAAS_SERVICE_TYPES.ExternalApiHandlerService).to(ExternalApiHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PlatformMutualizedHandlerService).to(PlatformMutualizedHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ServerlessServicesHandlerService).to(ServerlessServicesHandlerBackendService).inSingletonScope();\n\n // Resource Operation Custom Implementations\n this.container.bind(SAAS_SERVICE_TYPES.ResourceOperationCustomImplementationRegistryService).to(ResourceOperationCustomImplementationRegistryBackendService).inSingletonScope();\n\n\n // Flows-Actors Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.FlowsActorsRegistryService).to(FlowsActorsRegistryService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FlowsActorsController).to(FlowsActorsControllerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AgentsBackendService).to(AgentsBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ConversationalExecutionBackendService).to(ConversationalExecutionBackendService).inSingletonScope();\n // === A2A (external actor exposure) ===\n this.container.bind(SAAS_SERVICE_TYPES.A2AService).to(A2ABackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.A2ATokenBudgetService).to(A2ATokenBudgetBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.A2ATaskService).to(A2ATaskBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.A2ATaskCancellationService).to(A2ATaskCancellationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.A2APushDeliveryLogRepository).to(A2APushDeliveryLogRepository).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.A2APushDispatcherService).to(A2APushDispatcherBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.A2AController).to(A2AControllerBackendService).inSingletonScope();\n // Engine agent-call traceability. The sink + policy are resolved LAZILY against\n // the app's `defineSaaSProviders` selection for `LLM_OBSERVABILITY` — see\n // `LlmObservabilityAgentCallTraceSink`. They MUST be bound eagerly here (a stable\n // reference the dev companion composes into its `CompositeAgentCallTraceSink`, and\n // that `AgentsBackendService` `@optional()`-injects once), but the concrete\n // provider sink (e.g. PostHog) only resolves on the first agent call — by which\n // point the external-providers registry is initialized and the selection is\n // known. No provider selected/configured → the sink no-ops + the policy reads\n // `NONE` (so emission is skipped and output is byte-identical). A tracing\n // consumer — e.g. the companion — `rebind`s both: its filesystem sink composed\n // ON TOP, and a policy that COMPOSES its own level with this live one via\n // `maxAgentTraceabilityLevel` (never a static replacement — a static level\n // would silently kill the LLM-obs capture this policy gates).\n this.container.bind(LlmObservabilityAgentCallTraceSink).toSelf().inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AgentCallTraceSink).toDynamicValue(() =>\n this.container.get(LlmObservabilityAgentCallTraceSink),\n ).inSingletonScope();\n // Engine audit-log fan-out. `CompositeAuditLogSink` resolves EVERY provider\n // declaring `COMPLIANCE_AUDIT_TRAIL` (a FAN_OUT capability) LAZILY — same\n // eager-bind / lazy-resolve rationale as the LLM-obs sink above. Layered on\n // the always-on DB audit store; no audit providers → byte-identical no-op.\n this.container.bind(CompositeAuditLogSink).toSelf().inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuditLogSink).toDynamicValue(() =>\n this.container.get(CompositeAuditLogSink),\n ).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AgentTraceabilityPolicy).toDynamicValue(() => {\n const llmObsSink = this.container.get(LlmObservabilityAgentCallTraceSink);\n // Live level: DEBUG iff an LLM-obs provider is selected + configured, else NONE\n // (the byte-identical \"off\" path). `.level` is read per agent call, by which\n // point the registry is initialized — so the getter, not a snapshot.\n return {\n get level(): AgentTraceabilityLevel {\n return llmObsSink.isActive() ? AgentTraceabilityLevel.DEBUG : AgentTraceabilityLevel.NONE;\n },\n } satisfies AgentTraceabilityPolicy;\n }).inSingletonScope();\n // Best-effort flush on NATURAL process exit only (`beforeExit`), so a short-lived\n // host (CLI / minion) that finishes and lets the event loop drain still ships its\n // queued events. We deliberately do NOT register `SIGTERM` / `SIGINT` handlers: in\n // Node, attaching a signal listener REMOVES the default \"terminate\" behaviour, so a\n // flush-only listener makes the host unkillable by that signal (the supervisor then\n // waits its 10s grace before SIGKILL on every restart). `process.exit`/re-raise from\n // here is also unsafe — this container is shared with hosts that own their own\n // SIGTERM shutdown (e.g. the queue `WorkerShutdownManager` draining in-flight jobs).\n // Signal-driven graceful flush belongs to the host's shutdown coordinator —\n // `ObservabilityBackendService.wireLlmObservabilityFlush()` registers it into\n // `WorkerShutdownManager` for hosts that run the standard (or companion) startup;\n // `posthog-node`'s own periodic flush is the backstop elsewhere. (Getting the\n // sink here resolves the singleton but never triggers provider resolution if no\n // agent call happened — `shutdown()` no-ops when unresolved.)\n process.once('beforeExit', () => {\n void this.container.get(LlmObservabilityAgentCallTraceSink).shutdown?.();\n void this.container.get(CompositeAuditLogSink).shutdown?.();\n });\n this.container.bind(SAAS_SERVICE_TYPES.ContextCurationService).to(ContextCurationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PromptCompilerService).to(PromptCompilerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FlowsBackendService).to(FlowsBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ActorsSystemBackendService).to(ActorsSystemBackendService).inSingletonScope();\n\n // File Management Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ResourceFieldConstraintResolver).to(ResourceFieldConstraintResolver).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileConstraintResolverChain).to(FileConstraintResolverChain).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileValidationService).to(FileValidationService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FilesBackendService).to(FilesBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ResourceFileUploadHandlerService).to(ResourceFileUploadHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileFieldDetectionService).to(FileFieldDetectionBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.RagSourceFieldDetectionService).to(RagSourceFieldDetectionBackendService).inSingletonScope();\n // RAG derived-data tier (plan D3): the adapter-routing chunk store + BOTH of its adapters\n // (D1: vector storage follows the resource's own database, so an application binds the one its\n // resources resolve to and the other stays unreached).\n // Singletons — each adapter caches its one-time provisioning ensure, and the router is stateless.\n this.container.bind(SAAS_SERVICE_TYPES.RagChunkStoreService).to(RagChunkStoreBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PostgresqlRagChunkStoreService).to(PostgresqlRagChunkStoreBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.MongodbRagChunkStoreService).to(MongodbRagChunkStoreBackendService).inSingletonScope();\n // RAG write path (plan §3.c): the ingestion pipeline the service-tier changed-field hook and the\n // hourly reconciliation sweep share. Singleton — stateless beyond its injected collaborators.\n this.container.bind(SAAS_SERVICE_TYPES.RagIngestionService).to(RagIngestionBackendService).inSingletonScope();\n // RAG retrieval (plan D5/D6, Phase 5): the public read surface flows/actors consume in-process.\n // Singleton — stateless beyond its injected collaborators; the embeddings binding resolves per call\n // so a provider configured after boot is picked up without a restart.\n this.container.bind(SAAS_SERVICE_TYPES.RagRetrievalService).to(RagRetrievalBackendService).inSingletonScope();\n // Embeddings execution seam (plan §3.d, DL2): applicability-class provider/model resolution +\n // the one embedTexts path the rag:embedding-drain worker and Phase-5 retrieval share.\n // Singleton — stateless beyond its injected collaborators; the trace sink/policy resolve lazily.\n this.container.bind(SAAS_SERVICE_TYPES.EmbeddingsService).to(EmbeddingsBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.DocumentExtractionService).to(DocumentExtractionBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FilePopulationService).to(FilePopulationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileOperationHandlerService).to(FileOperationHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileStorageProvider_WildoManaged).to(WildoManagedStorageProvider).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileStorageProvider_LocalDirectory).to(LocalDirectoryStorageProvider).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileStorageRouter).to(FileStorageRouterBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileStoragePathResolver).to(FileStoragePathResolverBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PdfTemplateBinding).to(PdfTemplateBindingBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PdfGeneratedFileWriter).to(PdfGeneratedFileWriterBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PdfRenderer).to(PdfRendererBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PdfGenerationOrchestrator).to(PdfGenerationOrchestratorBackendService).inSingletonScope();\n\n // File Scanning Services\n this.container.bind(SAAS_SERVICE_TYPES.FileScanningService).to(FileScanningBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ClamAVScannerService).to(ClamAVScannerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.YaraScannerService).to(YaraScannerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileTextExtractionService).to(FileTextExtractionBackendService).inSingletonScope();\n\n // Queue System Services - RabbitMQ-based async processing\n this.container.bind(SAAS_SERVICE_TYPES.RabbitMQAdapterService).to(RabbitMQAdapterBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.QueueBackendService).to(QueueBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.JobExecutorBackendService).to(JobExecutorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.JobStatusTrackingService).to(JobStatusTrackingBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.JobPayloadStorageService).to(JobPayloadStorageBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.JobConsumerService).to(JobConsumerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.WorkerShutdownManagerService).to(WorkerShutdownManagerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.JobCompletionRegistryService).to(JobCompletionRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.DomainQueueConsumerService).to(DomainQueueConsumerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ScheduledMessageVerifierService).to(ScheduledMessageVerifierBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.QueueMonitoringService).to(QueueMonitoringBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.QueueWorkerInitializerService).to(QueueWorkerInitializerBackendService).inSingletonScope();\n\n // Aggregation & Chart Services\n this.container.bind(SAAS_SERVICE_TYPES.MongoAggregationCompiler).to(MongoAggregationCompilerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PostgreSQLAggregationCompiler).to(PostgreSQLAggregationCompilerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FieldAccessValidator).to(FieldAccessValidatorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AggregationAuthorizationService).to(AggregationAuthorizationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.TimeSeriesDensifier).to(TimeSeriesDensifierBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ComputedMeasureEvaluator).to(ComputedMeasureEvaluatorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.WindowFunctionProcessor).to(WindowFunctionProcessorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.TopNProcessor).to(TopNProcessorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AggregationQueryService).to(AggregationQueryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ChartRegistryService).to(ChartRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ChartController).to(ChartControllerBackendService).inSingletonScope();\n\n // Analytics & Value Moment Services\n this.container.bind(SAAS_SERVICE_TYPES.ValueMomentHandlerRegistry).to(ValueMomentHandlerRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ValueMomentEngine).to(ValueMomentEngineBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AnalyticsController).to(AnalyticsBackendController).inSingletonScope();\n\n // Email System Services - Template rendering and sending\n this.container.bind(SAAS_SERVICE_TYPES.EmailTemplateValidator).to(EmailTemplateValidatorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EmailTemplateCompiler).to(EmailTemplateCompilerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EmailTemplateSandbox).to(EmailTemplateSandboxBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EmailContextProviderRegistry).to(EmailContextProviderRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EmailTemplateRegistry).to(EmailTemplateRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EmailService).to(EmailBackendService).inSingletonScope();\n\n // SMS Service (Phase G2)\n this.container.bind(SAAS_SERVICE_TYPES.SMSService).to(SMSBackendService).inSingletonScope();\n\n // Guidance System Services\n this.container.bind(SAAS_SERVICE_TYPES.GuidanceTriggerEvaluator).to(GuidanceTriggerEvaluatorBackendService).inSingletonScope();\n\n // Progression System Services\n this.container.bind(SAAS_SERVICE_TYPES.MilestoneDefinitionRegistry).to(MilestoneDefinitionRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.MilestoneConditionRegistry).to(MilestoneConditionRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.MilestoneEvaluator).to(MilestoneEvaluatorBackendService).inSingletonScope();\n\n // Lifecycle System Services\n this.container.bind(SAAS_SERVICE_TYPES.LifecycleEvaluator).to(LifecycleEvaluatorBackendService).inSingletonScope();\n\n // Data Seeding System Services\n // Engines bind FIRST so the facade `DataSeedDispatcher` can resolve\n // them via constructor injection. Phase 7 / F-16 deferred portion\n // (per-engine dispatcher split) — Slice 1 introduced AdditiveSeedEngine,\n // Slice 2 added UpgradeSeedEngine (which also exposes the shared\n // reconcile/renames helpers re-used by SYNC engine), Slice 3 adds\n // SyncSeedEngine (composes UpgradeSeedEngine via DI, must bind AFTER\n // UpgradeSeedEngine so InversifyJS resolves the dependency in order).\n // Slice 4 adds LazySeedEngine (composes AdditiveSeedEngine via DI for\n // the per-pass upsert step — bind AFTER AdditiveSeedEngine so the\n // dependency resolves in order).\n // Slice 5 adds ManualSeedEngine (composes ALL four mode engines via\n // DI for per-mode dispatch + LAZY+force/!force fallback paths —\n // bind AFTER all four mode engines so InversifyJS resolves the\n // dependencies in order).\n this.container.bind(SAAS_SERVICE_TYPES.AdditiveSeedEngine).to(AdditiveSeedEngineBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.UpgradeSeedEngine).to(UpgradeSeedEngineBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SyncSeedEngine).to(SyncSeedEngineBackendService).inSingletonScope();\n // External-data pipeline runs load through the SYNC/UPGRADE engines above (partial-resource paper P-2).\n this.container.bind(SAAS_SERVICE_TYPES.ExternalDataPipelineRunService).to(ExternalDataPipelineRunBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.LazySeedEngine).to(LazySeedEngineBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ManualSeedEngine).to(ManualSeedEngineBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.DataSeedRegistry).to(DataSeedRegistryBackendService).inSingletonScope();\n // Phase 7 / Item 47 — Slice 3: cron-driven CUSTOM_RESOLVER strategy registry.\n // Standalone (no engine dependency) — bound alongside `DataSeedRegistry` so\n // both seed registries are visible to the bootstrap helper that hydrates\n // them from `BackendDomainModule`.\n this.container.bind(SAAS_SERVICE_TYPES.DataSeedScopeResolverRegistry).to(DataSeedScopeResolverRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.DataSeedDispatcher).to(DataSeedDispatcherBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.DataSeedingAdminController).to(DataSeedingAdminBackendController).inSingletonScope();\n\n\n\n }\n\n\n /**\n * Get the underlying Inversify container\n */\n public getContainer(): Container {\n return this.container;\n }\n\n /**\n * Get a service by its type symbol\n */\n public get<T>(serviceType: symbol): T {\n return this.container.get<T>(serviceType);\n }\n\n /**\n * Check if a service is bound\n */\n public isBound(serviceType: symbol): boolean {\n return this.container.isBound(serviceType);\n }\n\n /**\n * Setup library injection for cross-package dependencies\n * This is the main method used by applications to setup the container\n */\n public static setupSaasInjection(container?: Container): Container {\n const saasContainer = new SaasContainer();\n\n if (container) {\n // Merge with existing container if provided\n // Implementation will be added as we bind services\n return container;\n }\n\n return saasContainer.getContainer();\n }\n}\n\n\n/**\n * Initialize and configure the Inversify DI container for SaaS backend services\n *\n * This container manages all service dependencies and ensures proper\n * singleton lifecycle management across the application.\n */\nexport function setupSaasBackendInjection(): Container {\n if (!globalContainer) {\n const saasContainer = new SaasContainer();\n globalContainer = saasContainer.getContainer();\n }\n return globalContainer;\n}\n\nexport function getGlobalContainer(): Container {\n if (!globalContainer) {\n return setupSaasBackendInjection();\n }\n return globalContainer;\n}\n\nexport function resetGlobalContainer(): void {\n globalContainer = null;\n}\n\n\nexport default SaasContainer;\n"]}
1
+ {"version":3,"file":"container.js","sourceRoot":"","sources":["../../../../../src/inject/models/container.ts"],"names":[],"mappings":"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","sourcesContent":["import { Container, injectable } from 'inversify';\nimport 'reflect-metadata';\nimport { SAAS_SERVICE_TYPES } from './service-types';\n\n// Core Services\nimport { LoggerService } from '~wildo-backend-lib/monitoring/logger/services/logger.service';\nimport { AppConfigurationService } from '~wildo-backend-lib/config/services/app-configuration.backend.service';\nimport { AppConfigurationLoaderService } from '~wildo-backend-lib/config/services/app-configuration-loader.backend.service';\nimport { ApplicationStartupConfigValidatorService } from '~wildo-backend-lib/config/services/application-startup-config-validator.backend.service';\nimport { RedisService } from '~wildo-backend-lib/databases/services/redis.service';\nimport { MongoDBService } from '~wildo-backend-lib/databases/services/mongodb.service';\nimport { PostgreSQLDatabaseBackendService } from '~wildo-backend-lib/databases/services/postgresql-database.backend.service';\nimport { ResourcePersistenceUnitOfWorkBackendService } from '~wildo-backend-lib/databases/services/resource-persistence-unit-of-work.backend.service';\n\n// Authentication & Security Services\nimport { JwtBackendService } from '~wildo-backend-lib/security/jwt/services/jwt.backend.service';\nimport { WildoWorkerBootstrapClientService } from '~wildo-backend-lib/security/jwt/services/wildo-worker-bootstrap-client.backend.service';\nimport { AuthorizationsBackendService } from '~wildo-backend-lib/security/authorizations/services/authorizations.backend.service';\n\n// Audit & Compliance Services\nimport { AuditLogsBackendService } from '~wildo-backend-lib/compliance/audit-trails/services/audit-logs.backend.service';\nimport { SubjectErasureExternalEffectsRegistryBackendService } from '~wildo-backend-lib/compliance/privacy/services/subject-erasure-external-effects.backend.service';\nimport { SubjectSessionRevocationBackendService } from '~wildo-backend-lib/compliance/privacy/services/subject-session-revocation.backend.service';\nimport { AuditEventDispatcherBackendService } from '~wildo-backend-lib/compliance/audit-trails/services/audit-event-dispatcher.backend.service';\nimport { SIEMWebhookDeliveryBackendService } from '~wildo-backend-lib/compliance/audit-trails/services/siem-webhook-delivery.backend.service';\n\n\n// Communication Services\nimport { WebSocketService } from '~wildo-backend-lib/requests/service/websocket.service';\n\n// Error Handling Services\nimport { ErrorHandlerService } from '~wildo-backend-lib/errors/services/error-handler.backend.service';\nimport { ErrorBuilderBackendService } from '~wildo-backend-lib/errors/services/error-builder.backend.service';\nimport { RateLimitBackendService } from '~wildo-backend-lib/errors/services/rate-limit.backend.service';\n\n// Monitoring Services\nimport { MetricsService } from '~wildo-backend-lib/monitoring/observability/services/metrics.service';\nimport { ObservabilityBackendService } from '~wildo-backend-lib/monitoring/observability/services/observability.backend.service';\n\n// Organization Services\nimport { AuthOrganizationConfigurationService } from '~wildo-backend-lib/security/authentications/services/admin-config/auth-organization-configuration.service';\n\n// Repository Services\nimport { ResourceOperationHelperBackendService } from '~wildo-backend-lib/base-classes/services/resource-operations-helper.backend.service';\nimport { RepositoriesRegistryHandlerBackendService } from '~wildo-backend-lib/base-classes/services/repositories/repositories-registry-handler.backend.service';\nimport { ZodToMongooseSchemaConvertorBackendService } from '~wildo-backend-lib/databases/services/zod-to-mongoose-schema-convertor.backend.service';\nimport { ZodToSqlHybridSchemaPlannerBackendService } from '~wildo-backend-lib/databases/services/zod-to-sql-hybrid-schema.planner';\nimport { PostgreSQLFilterBackendService } from '~wildo-backend-lib/databases/services/postgresql-filter.backend.service';\n\n// Database-agnostic Services\nimport { ResourceIdBackendService } from '~wildo-backend-lib/resources/services/resource-id.backend.service';\n\n// Service Layer Services\nimport { ServicesRegistryHandlerBackendService } from '~wildo-backend-lib/base-classes/services/services/services-registry-handler.backend.service';\nimport { SystemAccessBackendService } from '~wildo-backend-lib/base-classes/services/services/system-access.backend.service';\nimport { RuntimePrincipalBackendService } from '~wildo-backend-lib/config/bootstrap/runtime-principal.backend.service';\nimport { RuntimePrincipalAttestationBackendService } from '~wildo-backend-lib/config/bootstrap/runtime-principal-attestation.backend.service';\n\n// Controller Layer Services\nimport { ControllersRegistryHandlerBackendService } from '~wildo-backend-lib/base-classes/services/controllers/controllers-registry-handler.backend.service';\nimport { ApplicationConfigControllerBackendService } from '~wildo-backend-lib/config/custom/application-config-controller.backend.service';\nimport { AuthenticationControllerBackendService } from '~wildo-backend-lib/security/authentications/controllers/authentication-controller.backend.service';\nimport { OAuthProviderControllerBackendService } from '~wildo-backend-lib/security/authentications/controllers/oauth-provider-controller.backend.service';\nimport { OidcAuthorizationCodeBackendService } from '~wildo-backend-lib/security/authentications/services/oidc-authorization-code.backend.service';\nimport { OidcUserClaimsBackendService } from '~wildo-backend-lib/security/authentications/services/oidc-user-claims.backend.service';\nimport { CimdClientMetadataBackendService } from '~wildo-backend-lib/security/authentications/services/cimd-client-metadata.backend.service';\n// === MCP === (external-access MCP-server branch — additive)\nimport { McpToolAdapterBackendService } from '~wildo-backend-lib/mcp/services/mcp-tool-adapter.backend.service';\nimport { McpServerBackendService } from '~wildo-backend-lib/mcp/services/mcp-server.backend.service';\nimport { ResourceServerInstancesRegistryBackendService } from '~wildo-backend-lib/mcp/services/resource-server-instances-registry.backend.service';\nimport { MCPControllerBackendService } from '~wildo-backend-lib/mcp/controllers/mcp.controller';\n// === /MCP ===\nimport { I18nControllerBackendService } from '~wildo-backend-lib/i18n/controllers/i18n-controller.backend.service';\nimport { AuthenticationOrchestratorBackendService } from '~wildo-backend-lib/security/authentications/services/authentication-orchestrator.backend.service';\nimport { AuthExecutionContextFactoryBackendService } from '~wildo-backend-lib/security/authentications/services/auth-execution-context-factory.backend.service';\nimport { AuthSessionStoreBackendService } from '~wildo-backend-lib/security/authentications/services/auth-session-store.backend.service';\nimport { AuthCredentialVerifierBackendService } from '~wildo-backend-lib/security/authentications/services/auth-credential-verifier.backend.service';\nimport { AuthTokenIssuerBackendService } from '~wildo-backend-lib/security/authentications/services/auth-token-issuer.backend.service';\nimport { MachineTokenIssuerBackendService } from '~wildo-backend-lib/security/authentications/services/machine-token-issuer.backend.service';\nimport { OAuthProviderTokenBackendService } from '~wildo-backend-lib/security/authentications/services/oauth-provider-token.backend.service';\nimport { AuthResponseHelperBackendService } from '~wildo-backend-lib/security/authentications/services/utils/auth-response-helper.backend.service';\nimport { AuthUserLookupBackendService } from '~wildo-backend-lib/security/authentications/services/utils/auth-user-lookup.backend.service';\nimport { AuthCredentialOpsBackendService } from '~wildo-backend-lib/security/authentications/services/utils/auth-credential-ops.backend.service';\nimport { AuthJwtGuardBackendService } from '~wildo-backend-lib/security/jwt/services/auth-jwt-guard.backend.service';\nimport { AuthPasswordResetBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/auth-password-reset.backend.service';\nimport { AuthRegistrationBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/auth-registration.backend.service';\nimport { EmailVerificationInitiatorBackendService } from '~wildo-backend-lib/security/authentications/services/email-verification-initiator.backend.service';\nimport { AuthMfaBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/auth-mfa.backend.service';\nimport { AuthPhoneVerificationBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/auth-phone-verification.backend.service';\nimport { OAuth2ConnectionResolverBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/oauth2-connection-resolver.backend.service';\nimport { OAuth2AuthenticationBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/oauth2-authentication.backend.service';\nimport { OIDCDiscoveryBackendService } from '~wildo-backend-lib/security/authentications/services/admin-config/oidc-discovery.backend.service';\nimport { DomainToOrgLookupBackendService } from '~wildo-backend-lib/security/authentications/services/admin-config/domain-to-org-lookup.backend.service';\nimport { DomainVerificationBackendService } from '~wildo-backend-lib/security/authentications/services/admin-config/domain-verification.backend.service';\nimport { EnterpriseUserProvisioningBackendService } from '~wildo-backend-lib/security/authentications/services/admin-config/enterprise-user-provisioning.backend.service';\nimport { WebAuthnBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/webauthn.backend.service';\nimport { SCIMControllerBackendService } from '~wildo-backend-lib/security/scim/controllers/scim.backend.controller';\nimport { AuthMethodManagementBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/auth-method-management.backend.service';\nimport { AuthMethodManagementControllerBackendService } from '~wildo-backend-lib/security/authentications/controllers/auth-method-management-controller.backend.service';\nimport { SAMLReplayGuardBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/saml-replay-guard.backend.service';\nimport { SAMLMetadataBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/saml-metadata.backend.service';\nimport { SAMLAssertionValidatorBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/saml-assertion-validator.backend.service';\nimport { SAMLAuthenticationBackendService } from '~wildo-backend-lib/security/authentications/services/auth-methods/saml-authentication.backend.service';\nimport { HealthControllerBackendService } from '~wildo-backend-lib/runtime/controllers/health-controller.backend.service';\n\n// HTTP Server Services\nimport { HttpServerBackendService } from '~wildo-backend-lib/runtime/services/http-server.backend.service';\n\n// Resource Registry Services\nimport { ResourcesRegistryBackendService } from '~wildo-backend-lib/resources/services/resources-registry.backend.service';\nimport { VirtualFieldsBackendService } from '~wildo-backend-lib/resources/services/virtual-fields.backend.service';\nimport { ResourcePopulationBackendService } from '~wildo-backend-lib/resources/services/resource-population.backend.service';\nimport { ResourceContextBackendService } from '~wildo-backend-lib/resources/services/resource-context.backend.service';\n\n// External Providers Registry Services\nimport { BackendProviderRegistryBackendService } from '~wildo-backend-lib/external-providers/services/backend-provider-registry.backend.service';\nimport { ExternalProvidersRegistryBackendService } from '~wildo-backend-lib/external-providers/services/external-providers-registry.backend.service';\nimport { DefaultFrontendBootstrapBackendService } from '~wildo-backend-lib/external-providers/services/frontend-bootstrap.backend.service';\n\n// Feature System Services\nimport { FeatureDefinitionRegistryBackendService } from '~wildo-backend-lib/features/services/feature-definition-registry.backend.service';\nimport { FeatureResolutionBackendService } from '~wildo-backend-lib/features/services/feature-resolution.backend.service';\nimport { FeatureGateBackendService } from '~wildo-backend-lib/features/services/feature-gate.backend.service';\nimport { FeaturesControllerBackendService } from '~wildo-backend-lib/features/controllers/features.backend.controller';\n\n// Consumable Token Services\nimport { ConsumableTokenBackendService } from '~wildo-backend-lib/security/consumable-tokens/services/consumable-token.backend.service';\nimport { AnonymousSessionBackendService } from '~wildo-backend-lib/security/authentications/services/anonymous-session.backend.service';\n\n// Billing System Services\nimport { BillingFeatureSyncBackendService } from '~wildo-backend-lib/billing/services/back-office/billing-feature-sync.backend.service';\nimport { ProductCatalogSyncBackendService } from '~wildo-backend-lib/billing/services/back-office/product-catalog-sync.backend.service';\nimport { UsageMeteringBackendService } from '~wildo-backend-lib/billing/services/back-office/usage-metering.backend.service';\nimport { BillingStateBackendService } from '~wildo-backend-lib/billing/services/back-office/billing-state.backend.service';\nimport { WebhookHandlerBackendService } from '~wildo-backend-lib/notifications/webhooks/services/webhook-handler.backend.service';\nimport { WebhookAutoControllerBackendService } from '~wildo-backend-lib/notifications/webhooks/controllers/webhook-auto-controller.backend.service';\nimport { PolymorphicLookupBackendService } from '~wildo-backend-lib/notifications/webhooks/services/polymorphic-lookup.backend.service';\n\n// Application Runtime Services\nimport { StartApplicationBackendService } from '~wildo-backend-lib/runtime/services/start-application.backend.service';\nimport { ExecutionContextHandlerBackendService } from '~wildo-backend-lib/runtime/services/execution-context-handler.backend.service';\nimport { ExecutionContextCreatorBackendService } from '~wildo-backend-lib/runtime/services/execution-context-creator.backend.service';\n\n// Notification Services\nimport { NotificationDispatcherService } from '~wildo-backend-lib/notifications/services/notifications-dispatcher.backend.service';\nimport { NotificationBadgeBackendService } from '~wildo-backend-lib/notifications/services/notification-badge.backend.service';\n// M2M Outbound Webhook Services (Phase 3 — m2m-webhook-organization-delivery)\nimport { WebhookConfigBackendService } from '~wildo-backend-lib/notifications/webhooks/outbound/services/webhook-config.backend.service';\nimport { M2MWebhookDispatcherBackendService } from '~wildo-backend-lib/notifications/webhooks/outbound/services/m2m-webhook-dispatcher.backend.service';\nimport { M2MWebhookDeliveryLogRepository } from '~wildo-backend-lib/notifications/webhooks/outbound/services/m2m-webhook-delivery-log.repository';\n\nimport { BatchesCronjobsExecutor_BackendService } from '~wildo-backend-lib/base-classes/services/batches/batches-cronjobs-executor.backend.service';\n// Handlers (placeholders)\nimport { ExternalApiHandlerBackendService } from '~wildo-backend-lib/external-providers/services/external-api-handler.backend.service';\nimport { PlatformMutualizedHandlerBackendService } from '~wildo-backend-lib/requests/service/platform-mutualized-handler.backend.service';\nimport { ServerlessServicesHandlerBackendService } from '~wildo-backend-lib/requests/service/serverless-services-handler.backend.service';\n\nimport { ResourceOperationCustomImplementationRegistryBackendService } from '~wildo-backend-lib/base-classes/services/services/resource-operation-custom-implementation-registry.backend.service';\nimport { I18nBackendService } from '~wildo-backend-lib/i18n/services/i18n.backend.service';\n\n// Flows-Actors Services\nimport { FlowsActorsRegistryService } from '~wildo-backend-lib/flows-actors/services/flows-actors-registry.service';\nimport { FlowsActorsControllerBackendService } from '~wildo-backend-lib/flows-actors/controllers/flows-actors.controller';\nimport { AgentsBackendService } from '~wildo-backend-lib/flows-actors/services/agents.backend.service';\nimport { ConversationalExecutionBackendService } from '~wildo-backend-lib/flows-actors/services/conversational-execution.backend.service';\n// === A2A (external actor exposure) ===\nimport { A2ABackendService } from '~wildo-backend-lib/flows-actors/a2a/services/a2a.backend.service';\nimport { A2ATokenBudgetBackendService } from '~wildo-backend-lib/flows-actors/a2a/services/a2a-token-budget.backend.service';\nimport { A2ATaskBackendService } from '~wildo-backend-lib/flows-actors/a2a/services/a2a-task.backend.service';\nimport { A2APushDeliveryLogRepository } from '~wildo-backend-lib/flows-actors/a2a/services/a2a-push-delivery-log.repository';\nimport { A2APushDispatcherBackendService } from '~wildo-backend-lib/flows-actors/a2a/services/a2a-push-dispatcher.backend.service';\nimport { A2ATaskCancellationBackendService } from '~wildo-backend-lib/flows-actors/a2a/services/a2a-task-cancellation.backend.service';\nimport { A2AControllerBackendService } from '~wildo-backend-lib/flows-actors/a2a/controllers/a2a.controller';\nimport { LlmObservabilityAgentCallTraceSink } from '~wildo-backend-lib/flows-actors/services/llm-observability-agent-call-trace-sink.backend';\nimport { CompositeAuditLogSink } from '~wildo-backend-lib/compliance/audit-trails/services/composite-audit-log-sink.backend';\nimport { AgentTraceabilityLevel, type AgentTraceabilityPolicy } from '@wildo-ai/saas-models';\nimport { ContextCurationBackendService } from '~wildo-backend-lib/flows-actors/services/context-curation.backend.service';\nimport { PromptCompilerBackendService } from '~wildo-backend-lib/flows-actors/services/prompt-compiler.backend.service';\nimport { FlowsBackendService } from '~wildo-backend-lib/flows-actors/services/flows.backend.services';\nimport { ActorsSystemBackendService } from '~wildo-backend-lib/flows-actors/services/actors-system.backend.service';\n\n// File Management Services\nimport { FileConstraintResolverChain } from '~wildo-backend-lib/files/constraints/file-constraint-resolver-chain.backend.service';\nimport { FileValidationService } from '~wildo-backend-lib/files/constraints/file-validation.backend.service';\nimport { ResourceFieldConstraintResolver } from '~wildo-backend-lib/files/constraints/resource-field-constraint-resolver.backend.service';\nimport { FilesBackendService } from '~wildo-backend-lib/files/services/files.backend.service';\nimport { ResourceFileUploadHandlerBackendService } from '~wildo-backend-lib/files/handlers/resource-file-upload-handler.backend.service';\nimport { FileFieldDetectionBackendService } from '~wildo-backend-lib/files/services/file-field-detection.backend.service';\nimport { RagSourceFieldDetectionBackendService } from '~wildo-backend-lib/files/services/rag-source-field-detection.backend.service';\nimport { RagChunkStoreBackendService } from '~wildo-backend-lib/rag/services/rag-chunk-store.backend.service';\nimport { MongodbRagChunkStoreBackendService } from '~wildo-backend-lib/rag/services/mongodb-rag-chunk-store.backend.service';\nimport { PostgresqlRagChunkStoreBackendService } from '~wildo-backend-lib/rag/services/postgresql-rag-chunk-store.backend.service';\nimport { RagIngestionBackendService } from '~wildo-backend-lib/rag/services/rag-ingestion.backend.service';\nimport { RagRetrievalBackendService } from '~wildo-backend-lib/rag/services/rag-retrieval.backend.service';\nimport { EmbeddingsBackendService } from '~wildo-backend-lib/external-providers/services/embeddings.backend.service';\nimport { DocumentExtractionBackendService } from '~wildo-backend-lib/external-providers/services/document-extraction.backend.service';\nimport { FileController } from '~wildo-backend-lib/files/controllers/file.controller';\nimport { FilePopulationBackendService } from '~wildo-backend-lib/files/services/file-population.backend.service';\nimport { FileOperationHandlerBackendService } from '~wildo-backend-lib/files/services/file-operation-handler.backend.service';\nimport { FileScanningBackendService } from '~wildo-backend-lib/files/services/file-scanning.backend.service';\nimport { FileUploadGrantBackendService } from '~wildo-backend-lib/files/services/file-upload-grant.backend.service';\nimport { ClamAVScannerBackendService } from '~wildo-backend-lib/files/scanning/clamav-scanner.backend.service';\nimport { YaraScannerBackendService } from '~wildo-backend-lib/files/scanning/yara-scanner.backend.service';\nimport { FileTextExtractionBackendService } from '~wildo-backend-lib/files/services/file-text-extraction.backend.service';\nimport { WildoManagedStorageProvider } from '~wildo-backend-lib/files/storage/wildo-managed-storage-provider.backend.service';\nimport { LocalDirectoryStorageProvider } from '~wildo-backend-lib/files/storage/local-directory-storage-provider.backend.service';\nimport { FileStorageRouterBackendService } from '~wildo-backend-lib/files/storage/file-storage-router.backend.service';\nimport { FileStoragePathResolverBackendService } from '~wildo-backend-lib/files/storage/file-storage-path-resolver.backend.service';\nimport { PdfTemplateBindingBackendService } from '~wildo-backend-lib/pdf-templates/services/pdf-template-binding.backend.service';\nimport { PdfGeneratedFileWriterBackendService } from '~wildo-backend-lib/pdf-templates/services/pdf-generated-file-writer.backend.service';\nimport { PdfRendererBackendService } from '~wildo-backend-lib/pdf-templates/services/pdf-renderer.backend.service';\nimport { PdfGenerationOrchestratorBackendService } from '~wildo-backend-lib/pdf-templates/services/pdf-generation-orchestrator.backend.service';\n\n// Queue System Services\nimport { RabbitMQAdapterBackendService } from '~wildo-backend-lib/queue/adapters/rabbitmq-adapter.backend.service';\nimport { QueueBackendService } from '~wildo-backend-lib/queue/queue.backend.service';\nimport { JobExecutorBackendService } from '~wildo-backend-lib/queue/job-executor.backend.service';\nimport { JobStatusTrackingBackendService } from '~wildo-backend-lib/queue/job-status-tracking.backend.service';\nimport { JobPayloadStorageBackendService } from '~wildo-backend-lib/queue/job-payload-storage.backend.service';\nimport { JobConsumerBackendService } from '~wildo-backend-lib/queue/job-consumer.backend.service';\nimport { WorkerShutdownManagerBackendService } from '~wildo-backend-lib/queue/worker-shutdown-manager.backend.service';\nimport { JobCompletionRegistryBackendService } from '~wildo-backend-lib/queue/job-completion-registry.backend.service';\nimport { DomainQueueConsumerBackendService } from '~wildo-backend-lib/queue/domain-queue-consumer.backend.service';\nimport { ScheduledMessageVerifierBackendService } from '~wildo-backend-lib/queue/scheduled-message-verifier.backend.service';\nimport { QueueMonitoringBackendService } from '~wildo-backend-lib/queue/queue-monitoring.backend.service';\nimport { QueueWorkerInitializerBackendService } from '~wildo-backend-lib/queue/queue-worker-initializer.backend.service';\nimport { CronJobSyncBackendService } from '~wildo-backend-lib/queue/cron-job-sync.backend.service';\n\n// Remote Client Services\nimport { AppsCrontabManagerBackendService } from '~wildo-backend-lib/queue/apps-crontabs-manager.backend.service';\nimport { WorkerRemoteClientFactoryBackendService } from '~wildo-backend-lib/applications/services/worker-remote-client-factory.backend.service';\n\n// Aggregation & Chart Services\nimport { MongoAggregationCompilerBackendService } from '~wildo-backend-lib/databases/services/mongo-aggregation.backend.service';\nimport { PostgreSQLAggregationCompilerBackendService } from '~wildo-backend-lib/databases/services/postgresql-aggregation.backend.service';\nimport { AggregationQueryBackendService } from '~wildo-backend-lib/databases/services/aggregation/aggregation-query.backend.service';\nimport { FieldAccessValidatorBackendService } from '~wildo-backend-lib/databases/services/aggregation/field-access-validator.backend.service';\nimport { AggregationAuthorizationBackendService } from '~wildo-backend-lib/databases/services/aggregation/aggregation-authorization.backend.service';\nimport { TimeSeriesDensifierBackendService } from '~wildo-backend-lib/databases/services/aggregation/time-series-densifier.backend.service';\nimport { ComputedMeasureEvaluatorBackendService } from '~wildo-backend-lib/databases/services/aggregation/computed-measure-evaluator.backend.service';\nimport { WindowFunctionProcessorBackendService } from '~wildo-backend-lib/databases/services/aggregation/window-function-processor.backend.service';\nimport { TopNProcessorBackendService } from '~wildo-backend-lib/databases/services/aggregation/topn-processor.backend.service';\nimport { ChartRegistryBackendService } from '~wildo-backend-lib/charts/services/chart-registry.backend.service';\nimport { ChartControllerBackendService } from '~wildo-backend-lib/charts/controllers/chart.backend.controller';\n\n// Analytics & Value Moment Services\nimport { ValueMomentHandlerRegistryBackendService } from '~wildo-backend-lib/monitoring/analytics/services/value-moment-handler-registry.backend.service';\nimport { ValueMomentEngineBackendService } from '~wildo-backend-lib/monitoring/analytics/services/value-moment-engine.backend.service';\nimport { AnalyticsBackendController } from '~wildo-backend-lib/monitoring/analytics/controllers/analytics.backend.controller';\n\n// Guidance System Services\nimport { GuidanceTriggerEvaluatorBackendService } from '~wildo-backend-lib/guidance/services/guidance-trigger-evaluator.backend.service';\n\n// Progression System Services\nimport { MilestoneDefinitionRegistryBackendService } from '~wildo-backend-lib/guidance/services/milestone-definition-registry.backend.service';\nimport { MilestoneConditionRegistryBackendService } from '~wildo-backend-lib/guidance/services/milestone-condition-registry.backend.service';\nimport { MilestoneEvaluatorBackendService } from '~wildo-backend-lib/guidance/services/milestone-evaluator.backend.service';\nimport { LifecycleEvaluatorBackendService } from '~wildo-backend-lib/guidance/services/lifecycle-evaluator.backend.service';\n\n// Data Seeding System Services\nimport { DataSeedRegistryBackendService } from '~wildo-backend-lib/data-seeding/services/data-seed-registry.backend.service';\nimport { DataSeedDispatcherBackendService } from '~wildo-backend-lib/data-seeding/services/data-seed-dispatcher.backend.service';\nimport { AdditiveSeedEngineBackendService } from '~wildo-backend-lib/data-seeding/services/engines/additive-seed-engine.backend.service';\nimport { UpgradeSeedEngineBackendService } from '~wildo-backend-lib/data-seeding/services/engines/upgrade-seed-engine.backend.service';\nimport { SyncSeedEngineBackendService } from '~wildo-backend-lib/data-seeding/services/engines/sync-seed-engine.backend.service';\nimport { ExternalDataPipelineRunBackendService } from '~wildo-backend-lib/external-data/external-data-pipeline-run.backend.service';\nimport { ExternalDataAdminBackendController } from '~wildo-backend-lib/external-data/controllers/external-data-admin.backend.controller';\nimport { LazySeedEngineBackendService } from '~wildo-backend-lib/data-seeding/services/engines/lazy-seed-engine.backend.service';\nimport { ManualSeedEngineBackendService } from '~wildo-backend-lib/data-seeding/services/engines/manual-seed-engine.backend.service';\nimport { DataSeedScopeResolverRegistryBackendService } from '~wildo-backend-lib/data-seeding/services/data-seed-scope-resolver-registry.backend.service';\nimport { DataSeedingAdminBackendController } from '~wildo-backend-lib/data-seeding/controllers/data-seeding-admin.backend.controller';\n\n// Email System Services\nimport { EmailTemplateValidatorBackendService } from '~wildo-backend-lib/notifications/email/services/email-template-validator.backend.service';\nimport { EmailTemplateCompilerBackendService } from '~wildo-backend-lib/notifications/email/services/email-template-compiler.backend.service';\nimport { EmailTemplateSandboxBackendService } from '~wildo-backend-lib/notifications/email/services/email-template-sandbox.backend.service';\nimport { EmailContextProviderRegistryBackendService } from '~wildo-backend-lib/notifications/email/services/email-context-provider-registry.backend.service';\nimport { EmailTemplateRegistryBackendService } from '~wildo-backend-lib/notifications/email/services/email-template-registry.backend.service';\nimport { EmailBackendService } from '~wildo-backend-lib/notifications/email/services/email.backend.service';\nimport { SMSBackendService } from '~wildo-backend-lib/notifications/sms/services/sms.backend.service';\n\n/**\n * Global container instance for cross-package injection\n * This enables other packages to access backend services\n */\nlet globalContainer: Container | null = null;\n\n\n/**\n * Core SaaS Backend Dependency Injection Container\n *\n * This container provides currently implemented SaaS infrastructure services.\n * Services are bound based on their implementation status and dependencies.\n */\nexport class SaasContainer {\n private container: Container;\n\n constructor() {\n this.container = new Container({\n defaultScope: 'Singleton',\n });\n this.setupCoreServices();\n }\n\n /**\n * Setup currently implemented SaaS infrastructure services\n */\n private setupCoreServices(): void {\n // Configure container options\n\n // Bind the container itself for services that need to resolve dependencies dynamically\n this.container.bind(SAAS_SERVICE_TYPES.Container).toConstantValue(this.container);\n this.container.bind('Container').toConstantValue(this.container);\n\n\n // Core Infrastructure Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.Logger).to(LoggerService).inSingletonScope();\n\n // Database Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.RedisService).to(RedisService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.MongoDBService).to(MongoDBService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PostgreSQLDatabaseService).to(PostgreSQLDatabaseBackendService).inSingletonScope();\n\n // Configuration Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.AppConfigService).to(AppConfigurationService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AppConfigLoaderService).to(AppConfigurationLoaderService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ApplicationStartupConfigValidatorService).to(ApplicationStartupConfigValidatorService).inSingletonScope();\n\n // Authentication & Security Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.JwtBackendService).to(JwtBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.WildoWorkerBootstrapClientService).to(WildoWorkerBootstrapClientService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthorizationsService).to(AuthorizationsBackendService).inSingletonScope();\n\n // Communication Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.WebSocketService).to(WebSocketService).inSingletonScope();\n\n // Error Handling Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ErrorHandlerService).to(ErrorHandlerService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ErrorBuilderService).to(ErrorBuilderBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.RateLimitBackendService).to(RateLimitBackendService).inSingletonScope();\n\n // Audit & Compliance Services - Currently Implemented & Bound\n // SIEM dispatcher + delivery must be bound before AuditLogsService (which depends on dispatcher)\n this.container.bind(SAAS_SERVICE_TYPES.AuditEventDispatcherService).to(AuditEventDispatcherBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SIEMWebhookDeliveryService).to(SIEMWebhookDeliveryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuditLogsService).to(AuditLogsBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SubjectErasureExternalEffectsService).to(SubjectErasureExternalEffectsRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SubjectSessionRevocationService).to(SubjectSessionRevocationBackendService).inSingletonScope();\n\n // Monitoring & Observability Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.MetricsService).to(MetricsService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ObservabilityBackendService).to(ObservabilityBackendService).inSingletonScope();\n\n // Organization Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.AuthOrganizationConfigurationService).to(AuthOrganizationConfigurationService).inSingletonScope();\n\n // Database Converter Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ZodToMongooseSchemaConvertorService).to(ZodToMongooseSchemaConvertorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ZodToSqlHybridSchemaPlannerService).to(ZodToSqlHybridSchemaPlannerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PostgreSQLFilterBackendService).to(PostgreSQLFilterBackendService).inSingletonScope();\n\n // Database-agnostic Services\n this.container.bind(SAAS_SERVICE_TYPES.ResourceIdBackendService).to(ResourceIdBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ResourcePersistenceUnitOfWorkService).to(ResourcePersistenceUnitOfWorkBackendService).inSingletonScope();\n\n // Repository Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ResourceOperationHelperService).to(ResourceOperationHelperBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.RepositoriesRegistryHandlerService).to(RepositoriesRegistryHandlerBackendService).inSingletonScope();\n\n // Service Layer Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ServicesRegistryHandlerService).to(ServicesRegistryHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SystemAccessService).to(SystemAccessBackendService).inSingletonScope();\n // Process-level runtime identity, initialized once at startup. Singleton because a\n // process has exactly one identity for its lifetime.\n this.container.bind(SAAS_SERVICE_TYPES.RuntimePrincipalService).to(RuntimePrincipalBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.RuntimePrincipalAttestationService).to(RuntimePrincipalAttestationBackendService).inSingletonScope();\n\n // Controller Layer Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ControllersRegistryHandlerService).to(ControllersRegistryHandlerBackendService).inSingletonScope();\n\n // Manual Controllers - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ApplicationConfigController).to(ApplicationConfigControllerBackendService).inSingletonScope();\n // Authentication sub-services\n this.container.bind(SAAS_SERVICE_TYPES.AuthSessionStore).to(AuthSessionStoreBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthCredentialVerifier).to(AuthCredentialVerifierBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthTokenIssuer).to(AuthTokenIssuerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.MachineTokenIssuer).to(MachineTokenIssuerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.OAuthProviderToken).to(OAuthProviderTokenBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.OidcAuthorizationCode).to(OidcAuthorizationCodeBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.OidcUserClaims).to(OidcUserClaimsBackendService).inSingletonScope();\n // Singleton on purpose: the CIMD service holds the per-pod client-metadata cache, so a\n // transient binding would give every authorize request a cold cache and turn each one into an\n // outbound fetch of a stranger's URL.\n this.container.bind(SAAS_SERVICE_TYPES.CimdClientMetadata).to(CimdClientMetadataBackendService).inSingletonScope();\n // === MCP === (external-access MCP-server branch — additive)\n this.container.bind(SAAS_SERVICE_TYPES.McpToolAdapter).to(McpToolAdapterBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.McpServer).to(McpServerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ResourceServerInstancesRegistry).to(ResourceServerInstancesRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.MCPController).to(MCPControllerBackendService).inSingletonScope();\n // === /MCP ===\n // Auth controller extraction services (auth-controller-service-migration)\n this.container.bind(SAAS_SERVICE_TYPES.AuthResponseHelperService).to(AuthResponseHelperBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthUserLookupService).to(AuthUserLookupBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthCredentialOpsService).to(AuthCredentialOpsBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthJwtGuardService).to(AuthJwtGuardBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthPasswordResetService).to(AuthPasswordResetBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthRegistrationService).to(AuthRegistrationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EmailVerificationInitiatorService).to(EmailVerificationInitiatorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthMfaService).to(AuthMfaBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthPhoneVerificationService).to(AuthPhoneVerificationBackendService).inSingletonScope();\n // OAuth2 Authentication Services (Step 4)\n // NOTE: Resolver must be bound BEFORE the engine (engine depends on resolver via DI)\n this.container.bind(SAAS_SERVICE_TYPES.OIDCDiscoveryService).to(OIDCDiscoveryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.OAuth2ConnectionResolverService).to(OAuth2ConnectionResolverBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.OAuth2AuthenticationService).to(OAuth2AuthenticationBackendService).inSingletonScope();\n // Enterprise SSO Services (Steps 14-15)\n this.container.bind(SAAS_SERVICE_TYPES.DomainToOrgLookupService).to(DomainToOrgLookupBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.DomainVerificationService).to(DomainVerificationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EnterpriseUserProvisioningService).to(EnterpriseUserProvisioningBackendService).inSingletonScope();\n // WebAuthn/Passkey ceremony service (Phase G1)\n this.container.bind(SAAS_SERVICE_TYPES.WebAuthnService).to(WebAuthnBackendService).inSingletonScope();\n // SCIM Controller (Step 20) — directory provisioning via SCIM 2.0\n this.container.bind(SAAS_SERVICE_TYPES.SCIMController).to(SCIMControllerBackendService).inSingletonScope();\n // SAML 2.0 Protocol Engine (AUTH-2)\n this.container.bind(SAAS_SERVICE_TYPES.SAMLReplayGuardService).to(SAMLReplayGuardBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SAMLMetadataService).to(SAMLMetadataBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SAMLAssertionValidatorService).to(SAMLAssertionValidatorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SAMLAuthenticationService).to(SAMLAuthenticationBackendService).inSingletonScope();\n // Auth method management (#13f)\n this.container.bind(SAAS_SERVICE_TYPES.AuthMethodManagementService).to(AuthMethodManagementBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthMethodManagementController).to(AuthMethodManagementControllerBackendService).inSingletonScope();\n // Auth EC factory (W2.9) + orchestrator\n this.container.bind(SAAS_SERVICE_TYPES.AuthExecutionContextFactory).to(AuthExecutionContextFactoryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthenticationOrchestratorService).to(AuthenticationOrchestratorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuthenticationController).to(AuthenticationControllerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.OAuthProviderController).to(OAuthProviderControllerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.I18nController).to(I18nControllerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.HealthController).to(HealthControllerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileController).to(FileController).inSingletonScope();\n\n // HTTP Server Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.HttpServerService).to(HttpServerBackendService).inSingletonScope();\n\n // Resource Registry Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ResourceRegistryService).to(ResourcesRegistryBackendService).inSingletonScope();\n\n // Virtual Fields Services - For decorator-based field handling\n this.container.bind(SAAS_SERVICE_TYPES.VirtualFieldsService).to(VirtualFieldsBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ResourceContextService).to(ResourceContextBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ResourcePopulationService).to(ResourcePopulationBackendService).inSingletonScope();\n\n // Backend Provider Registry - first-class provider modules\n this.container.bind(SAAS_SERVICE_TYPES.BackendProviderRegistryService).to(BackendProviderRegistryBackendService).inSingletonScope();\n\n // External Providers Registry Services - Runtime policy/config/secrets facade\n this.container.bind(SAAS_SERVICE_TYPES.ExternalProvidersRegistryService).to(ExternalProvidersRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FrontendBootstrapBackendService).to(DefaultFrontendBootstrapBackendService).inSingletonScope();\n\n // Feature System Services\n this.container.bind(SAAS_SERVICE_TYPES.FeatureDefinitionRegistryService).to(FeatureDefinitionRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FeatureResolutionService).to(FeatureResolutionBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FeatureGateService).to(FeatureGateBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FeaturesController).to(FeaturesControllerBackendService).inSingletonScope();\n\n // Consumable Token Services\n this.container.bind(SAAS_SERVICE_TYPES.ConsumableTokenService).to(ConsumableTokenBackendService).inSingletonScope();\n\n // Anonymous Session Service (W7.3a)\n this.container.bind(SAAS_SERVICE_TYPES.AnonymousSessionService).to(AnonymousSessionBackendService).inSingletonScope();\n\n // Webhook System Services\n this.container.bind(SAAS_SERVICE_TYPES.WebhookHandlerService).to(WebhookHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.WebhookAutoController).to(WebhookAutoControllerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PolymorphicLookupService).to(PolymorphicLookupBackendService).inSingletonScope();\n\n // Billing System Services\n this.container.bind(SAAS_SERVICE_TYPES.BillingFeatureSyncService).to(BillingFeatureSyncBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ProductCatalogSyncService).to(ProductCatalogSyncBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.UsageMeteringService).to(UsageMeteringBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.BillingStateService).to(BillingStateBackendService).inSingletonScope();\n\n // Application Runtime Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.StartApplicationService).to(StartApplicationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ExecutionContextHandlerService).to(ExecutionContextHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ExecutionContextCreatorBackendService).to(ExecutionContextCreatorBackendService).inSingletonScope();\n\n // M2M Outbound Webhook Services (Phase 3) — bound BEFORE NotificationDispatcherService\n // because the dispatcher takes M2MWebhookDispatcherService as a constructor\n // dependency. Inversify resolution order is dependency-driven (not file\n // order), but binding webhook services first keeps the wire-up explicit.\n this.container.bind(SAAS_SERVICE_TYPES.M2MWebhookDeliveryLogRepository).to(M2MWebhookDeliveryLogRepository).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.WebhookConfigService).to(WebhookConfigBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.M2MWebhookDispatcherService).to(M2MWebhookDispatcherBackendService).inSingletonScope();\n\n // Notification Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.NotificationDispatcherService).to(NotificationDispatcherService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.NotificationBadgeService).to(NotificationBadgeBackendService).inSingletonScope();\n // I18n Service - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.I18nService).to(I18nBackendService).inSingletonScope();\n\n // Requests & Remote Clients - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.AppsCrontabManagerService).to(AppsCrontabManagerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.WorkerRemoteClientFactoryService).to(WorkerRemoteClientFactoryBackendService).inSingletonScope();\n\n // Batch/Cron Jobs - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.BatchesCronjobsExecutorService).to(BatchesCronjobsExecutor_BackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.CronJobSyncService).to(CronJobSyncBackendService).inSingletonScope();\n\n // Handlers - Placeholder implementations\n this.container.bind(SAAS_SERVICE_TYPES.ExternalApiHandlerService).to(ExternalApiHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PlatformMutualizedHandlerService).to(PlatformMutualizedHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ServerlessServicesHandlerService).to(ServerlessServicesHandlerBackendService).inSingletonScope();\n\n // Resource Operation Custom Implementations\n this.container.bind(SAAS_SERVICE_TYPES.ResourceOperationCustomImplementationRegistryService).to(ResourceOperationCustomImplementationRegistryBackendService).inSingletonScope();\n\n\n // Flows-Actors Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.FlowsActorsRegistryService).to(FlowsActorsRegistryService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FlowsActorsController).to(FlowsActorsControllerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AgentsBackendService).to(AgentsBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ConversationalExecutionBackendService).to(ConversationalExecutionBackendService).inSingletonScope();\n // === A2A (external actor exposure) ===\n this.container.bind(SAAS_SERVICE_TYPES.A2AService).to(A2ABackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.A2ATokenBudgetService).to(A2ATokenBudgetBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.A2ATaskService).to(A2ATaskBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.A2ATaskCancellationService).to(A2ATaskCancellationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.A2APushDeliveryLogRepository).to(A2APushDeliveryLogRepository).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.A2APushDispatcherService).to(A2APushDispatcherBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.A2AController).to(A2AControllerBackendService).inSingletonScope();\n // Engine agent-call traceability. The sink + policy are resolved LAZILY against\n // the app's `defineSaaSProviders` selection for `LLM_OBSERVABILITY` — see\n // `LlmObservabilityAgentCallTraceSink`. They MUST be bound eagerly here (a stable\n // reference the dev companion composes into its `CompositeAgentCallTraceSink`, and\n // that `AgentsBackendService` `@optional()`-injects once), but the concrete\n // provider sink (e.g. PostHog) only resolves on the first agent call — by which\n // point the external-providers registry is initialized and the selection is\n // known. No provider selected/configured → the sink no-ops + the policy reads\n // `NONE` (so emission is skipped and output is byte-identical). A tracing\n // consumer — e.g. the companion — `rebind`s both: its filesystem sink composed\n // ON TOP, and a policy that COMPOSES its own level with this live one via\n // `maxAgentTraceabilityLevel` (never a static replacement — a static level\n // would silently kill the LLM-obs capture this policy gates).\n this.container.bind(LlmObservabilityAgentCallTraceSink).toSelf().inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AgentCallTraceSink).toDynamicValue(() =>\n this.container.get(LlmObservabilityAgentCallTraceSink),\n ).inSingletonScope();\n // Engine audit-log fan-out. `CompositeAuditLogSink` resolves EVERY provider\n // declaring `COMPLIANCE_AUDIT_TRAIL` (a FAN_OUT capability) LAZILY — same\n // eager-bind / lazy-resolve rationale as the LLM-obs sink above. Layered on\n // the always-on DB audit store; no audit providers → byte-identical no-op.\n this.container.bind(CompositeAuditLogSink).toSelf().inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AuditLogSink).toDynamicValue(() =>\n this.container.get(CompositeAuditLogSink),\n ).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AgentTraceabilityPolicy).toDynamicValue(() => {\n const llmObsSink = this.container.get(LlmObservabilityAgentCallTraceSink);\n // Live level: DEBUG iff an LLM-obs provider is selected + configured, else NONE\n // (the byte-identical \"off\" path). `.level` is read per agent call, by which\n // point the registry is initialized — so the getter, not a snapshot.\n return {\n get level(): AgentTraceabilityLevel {\n return llmObsSink.isActive() ? AgentTraceabilityLevel.DEBUG : AgentTraceabilityLevel.NONE;\n },\n } satisfies AgentTraceabilityPolicy;\n }).inSingletonScope();\n // Best-effort flush on NATURAL process exit only (`beforeExit`), so a short-lived\n // host (CLI / minion) that finishes and lets the event loop drain still ships its\n // queued events. We deliberately do NOT register `SIGTERM` / `SIGINT` handlers: in\n // Node, attaching a signal listener REMOVES the default \"terminate\" behaviour, so a\n // flush-only listener makes the host unkillable by that signal (the supervisor then\n // waits its 10s grace before SIGKILL on every restart). `process.exit`/re-raise from\n // here is also unsafe — this container is shared with hosts that own their own\n // SIGTERM shutdown (e.g. the queue `WorkerShutdownManager` draining in-flight jobs).\n // Signal-driven graceful flush belongs to the host's shutdown coordinator —\n // `ObservabilityBackendService.wireLlmObservabilityFlush()` registers it into\n // `WorkerShutdownManager` for hosts that run the standard (or companion) startup;\n // `posthog-node`'s own periodic flush is the backstop elsewhere. (Getting the\n // sink here resolves the singleton but never triggers provider resolution if no\n // agent call happened — `shutdown()` no-ops when unresolved.)\n process.once('beforeExit', () => {\n void this.container.get(LlmObservabilityAgentCallTraceSink).shutdown?.();\n void this.container.get(CompositeAuditLogSink).shutdown?.();\n });\n this.container.bind(SAAS_SERVICE_TYPES.ContextCurationService).to(ContextCurationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PromptCompilerService).to(PromptCompilerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FlowsBackendService).to(FlowsBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ActorsSystemBackendService).to(ActorsSystemBackendService).inSingletonScope();\n\n // File Management Services - Currently Implemented & Bound\n this.container.bind(SAAS_SERVICE_TYPES.ResourceFieldConstraintResolver).to(ResourceFieldConstraintResolver).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileConstraintResolverChain).to(FileConstraintResolverChain).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileValidationService).to(FileValidationService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FilesBackendService).to(FilesBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ResourceFileUploadHandlerService).to(ResourceFileUploadHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileFieldDetectionService).to(FileFieldDetectionBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.RagSourceFieldDetectionService).to(RagSourceFieldDetectionBackendService).inSingletonScope();\n // RAG derived-data tier (plan D3): the adapter-routing chunk store + BOTH of its adapters\n // (D1: vector storage follows the resource's own database, so an application binds the one its\n // resources resolve to and the other stays unreached).\n // Singletons — each adapter caches its one-time provisioning ensure, and the router is stateless.\n this.container.bind(SAAS_SERVICE_TYPES.RagChunkStoreService).to(RagChunkStoreBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PostgresqlRagChunkStoreService).to(PostgresqlRagChunkStoreBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.MongodbRagChunkStoreService).to(MongodbRagChunkStoreBackendService).inSingletonScope();\n // RAG write path (plan §3.c): the ingestion pipeline the service-tier changed-field hook and the\n // hourly reconciliation sweep share. Singleton — stateless beyond its injected collaborators.\n this.container.bind(SAAS_SERVICE_TYPES.RagIngestionService).to(RagIngestionBackendService).inSingletonScope();\n // RAG retrieval (plan D5/D6, Phase 5): the public read surface flows/actors consume in-process.\n // Singleton — stateless beyond its injected collaborators; the embeddings binding resolves per call\n // so a provider configured after boot is picked up without a restart.\n this.container.bind(SAAS_SERVICE_TYPES.RagRetrievalService).to(RagRetrievalBackendService).inSingletonScope();\n // Embeddings execution seam (plan §3.d, DL2): applicability-class provider/model resolution +\n // the one embedTexts path the rag:embedding-drain worker and Phase-5 retrieval share.\n // Singleton — stateless beyond its injected collaborators; the trace sink/policy resolve lazily.\n this.container.bind(SAAS_SERVICE_TYPES.EmbeddingsService).to(EmbeddingsBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.DocumentExtractionService).to(DocumentExtractionBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FilePopulationService).to(FilePopulationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileOperationHandlerService).to(FileOperationHandlerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileStorageProvider_WildoManaged).to(WildoManagedStorageProvider).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileStorageProvider_LocalDirectory).to(LocalDirectoryStorageProvider).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileStorageRouter).to(FileStorageRouterBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileStoragePathResolver).to(FileStoragePathResolverBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PdfTemplateBinding).to(PdfTemplateBindingBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PdfGeneratedFileWriter).to(PdfGeneratedFileWriterBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PdfRenderer).to(PdfRendererBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PdfGenerationOrchestrator).to(PdfGenerationOrchestratorBackendService).inSingletonScope();\n\n // File Scanning Services\n this.container.bind(SAAS_SERVICE_TYPES.FileScanningService).to(FileScanningBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileUploadGrantService).to(FileUploadGrantBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ClamAVScannerService).to(ClamAVScannerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.YaraScannerService).to(YaraScannerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FileTextExtractionService).to(FileTextExtractionBackendService).inSingletonScope();\n\n // Queue System Services - RabbitMQ-based async processing\n this.container.bind(SAAS_SERVICE_TYPES.RabbitMQAdapterService).to(RabbitMQAdapterBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.QueueBackendService).to(QueueBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.JobExecutorBackendService).to(JobExecutorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.JobStatusTrackingService).to(JobStatusTrackingBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.JobPayloadStorageService).to(JobPayloadStorageBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.JobConsumerService).to(JobConsumerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.WorkerShutdownManagerService).to(WorkerShutdownManagerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.JobCompletionRegistryService).to(JobCompletionRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.DomainQueueConsumerService).to(DomainQueueConsumerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ScheduledMessageVerifierService).to(ScheduledMessageVerifierBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.QueueMonitoringService).to(QueueMonitoringBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.QueueWorkerInitializerService).to(QueueWorkerInitializerBackendService).inSingletonScope();\n\n // Aggregation & Chart Services\n this.container.bind(SAAS_SERVICE_TYPES.MongoAggregationCompiler).to(MongoAggregationCompilerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.PostgreSQLAggregationCompiler).to(PostgreSQLAggregationCompilerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.FieldAccessValidator).to(FieldAccessValidatorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AggregationAuthorizationService).to(AggregationAuthorizationBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.TimeSeriesDensifier).to(TimeSeriesDensifierBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ComputedMeasureEvaluator).to(ComputedMeasureEvaluatorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.WindowFunctionProcessor).to(WindowFunctionProcessorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.TopNProcessor).to(TopNProcessorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AggregationQueryService).to(AggregationQueryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ChartRegistryService).to(ChartRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ChartController).to(ChartControllerBackendService).inSingletonScope();\n\n // Analytics & Value Moment Services\n this.container.bind(SAAS_SERVICE_TYPES.ValueMomentHandlerRegistry).to(ValueMomentHandlerRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ValueMomentEngine).to(ValueMomentEngineBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.AnalyticsController).to(AnalyticsBackendController).inSingletonScope();\n\n // Email System Services - Template rendering and sending\n this.container.bind(SAAS_SERVICE_TYPES.EmailTemplateValidator).to(EmailTemplateValidatorBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EmailTemplateCompiler).to(EmailTemplateCompilerBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EmailTemplateSandbox).to(EmailTemplateSandboxBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EmailContextProviderRegistry).to(EmailContextProviderRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EmailTemplateRegistry).to(EmailTemplateRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.EmailService).to(EmailBackendService).inSingletonScope();\n\n // SMS Service (Phase G2)\n this.container.bind(SAAS_SERVICE_TYPES.SMSService).to(SMSBackendService).inSingletonScope();\n\n // Guidance System Services\n this.container.bind(SAAS_SERVICE_TYPES.GuidanceTriggerEvaluator).to(GuidanceTriggerEvaluatorBackendService).inSingletonScope();\n\n // Progression System Services\n this.container.bind(SAAS_SERVICE_TYPES.MilestoneDefinitionRegistry).to(MilestoneDefinitionRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.MilestoneConditionRegistry).to(MilestoneConditionRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.MilestoneEvaluator).to(MilestoneEvaluatorBackendService).inSingletonScope();\n\n // Lifecycle System Services\n this.container.bind(SAAS_SERVICE_TYPES.LifecycleEvaluator).to(LifecycleEvaluatorBackendService).inSingletonScope();\n\n // Data Seeding System Services\n // Engines bind FIRST so the facade `DataSeedDispatcher` can resolve\n // them via constructor injection. Phase 7 / F-16 deferred portion\n // (per-engine dispatcher split) — Slice 1 introduced AdditiveSeedEngine,\n // Slice 2 added UpgradeSeedEngine (which also exposes the shared\n // reconcile/renames helpers re-used by SYNC engine), Slice 3 adds\n // SyncSeedEngine (composes UpgradeSeedEngine via DI, must bind AFTER\n // UpgradeSeedEngine so InversifyJS resolves the dependency in order).\n // Slice 4 adds LazySeedEngine (composes AdditiveSeedEngine via DI for\n // the per-pass upsert step — bind AFTER AdditiveSeedEngine so the\n // dependency resolves in order).\n // Slice 5 adds ManualSeedEngine (composes ALL four mode engines via\n // DI for per-mode dispatch + LAZY+force/!force fallback paths —\n // bind AFTER all four mode engines so InversifyJS resolves the\n // dependencies in order).\n this.container.bind(SAAS_SERVICE_TYPES.AdditiveSeedEngine).to(AdditiveSeedEngineBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.UpgradeSeedEngine).to(UpgradeSeedEngineBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.SyncSeedEngine).to(SyncSeedEngineBackendService).inSingletonScope();\n // External-data pipeline runs load through the SYNC/UPGRADE engines above (partial-resource paper P-2).\n this.container.bind(SAAS_SERVICE_TYPES.ExternalDataPipelineRunService).to(ExternalDataPipelineRunBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ExternalDataAdminController).to(ExternalDataAdminBackendController).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.LazySeedEngine).to(LazySeedEngineBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.ManualSeedEngine).to(ManualSeedEngineBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.DataSeedRegistry).to(DataSeedRegistryBackendService).inSingletonScope();\n // Phase 7 / Item 47 — Slice 3: cron-driven CUSTOM_RESOLVER strategy registry.\n // Standalone (no engine dependency) — bound alongside `DataSeedRegistry` so\n // both seed registries are visible to the bootstrap helper that hydrates\n // them from `BackendDomainModule`.\n this.container.bind(SAAS_SERVICE_TYPES.DataSeedScopeResolverRegistry).to(DataSeedScopeResolverRegistryBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.DataSeedDispatcher).to(DataSeedDispatcherBackendService).inSingletonScope();\n this.container.bind(SAAS_SERVICE_TYPES.DataSeedingAdminController).to(DataSeedingAdminBackendController).inSingletonScope();\n\n\n\n }\n\n\n /**\n * Get the underlying Inversify container\n */\n public getContainer(): Container {\n return this.container;\n }\n\n /**\n * Get a service by its type symbol\n */\n public get<T>(serviceType: symbol): T {\n return this.container.get<T>(serviceType);\n }\n\n /**\n * Check if a service is bound\n */\n public isBound(serviceType: symbol): boolean {\n return this.container.isBound(serviceType);\n }\n\n /**\n * Setup library injection for cross-package dependencies\n * This is the main method used by applications to setup the container\n */\n public static setupSaasInjection(container?: Container): Container {\n const saasContainer = new SaasContainer();\n\n if (container) {\n // Merge with existing container if provided\n // Implementation will be added as we bind services\n return container;\n }\n\n return saasContainer.getContainer();\n }\n}\n\n\n/**\n * Initialize and configure the Inversify DI container for SaaS backend services\n *\n * This container manages all service dependencies and ensures proper\n * singleton lifecycle management across the application.\n */\nexport function setupSaasBackendInjection(): Container {\n if (!globalContainer) {\n const saasContainer = new SaasContainer();\n globalContainer = saasContainer.getContainer();\n }\n return globalContainer;\n}\n\nexport function getGlobalContainer(): Container {\n if (!globalContainer) {\n return setupSaasBackendInjection();\n }\n return globalContainer;\n}\n\nexport function resetGlobalContainer(): void {\n globalContainer = null;\n}\n\n\nexport default SaasContainer;\n"]}
@@ -169,6 +169,7 @@ export declare const SAAS_SERVICE_TYPES: {
169
169
  readonly FilePopulationService: symbol;
170
170
  readonly FileOperationHandlerService: symbol;
171
171
  readonly FileScanningService: symbol;
172
+ readonly FileUploadGrantService: symbol;
172
173
  readonly ClamAVScannerService: symbol;
173
174
  readonly YaraScannerService: symbol;
174
175
  readonly FileTextExtractionService: symbol;
@@ -293,6 +294,8 @@ export declare const SAAS_SERVICE_TYPES: {
293
294
  * mode selection carrying the "a partial run orphans NOTHING" guard.
294
295
  */
295
296
  readonly ExternalDataPipelineRunService: symbol;
297
+ /** Operator door onto external-data pipelines (list + run-now). Root-mounted under /internal. */
298
+ readonly ExternalDataAdminController: symbol;
296
299
  /**
297
300
  * Phase 7 / F-16 deferred portion (per-engine dispatcher split, Slice 4).
298
301
  * Owns the LAZY mode execution path (P5 + P6 audit findings F-1, F-4,