@futdevpro/nts-dynamo 1.15.68 → 1.15.71

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 (928) hide show
  1. package/.c8rc.json +26 -26
  2. package/.copilot/patterns.json +7 -7
  3. package/.cursor/rules/__assistant_guide.mdc +30 -30
  4. package/.cursor/rules/__main.mdc +64 -64
  5. package/.cursor/rules/_ag_backend-structure.mdc +85 -85
  6. package/.cursor/rules/_ag_backend.mdc +16 -16
  7. package/.cursor/rules/_ag_debug.mdc +7 -7
  8. package/.cursor/rules/_ag_documentation_writing_rules.mdc +372 -372
  9. package/.cursor/rules/_ag_file-refactoring.mdc +113 -113
  10. package/.cursor/rules/_ag_fixes_rules.mdc +5 -5
  11. package/.cursor/rules/_ag_frontend-structure.mdc +86 -86
  12. package/.cursor/rules/_ag_frontend.mdc +39 -39
  13. package/.cursor/rules/_ag_import-rules.mdc +44 -44
  14. package/.cursor/rules/_ag_naming.mdc +115 -115
  15. package/.cursor/rules/_ag_running_commands.mdc +4 -4
  16. package/.cursor/rules/_ag_server-controller.mdc +5 -5
  17. package/.cursor/rules/_ag_should-be.mdc +6 -6
  18. package/.cursor/rules/_ag_swearing.mdc +47 -47
  19. package/.cursor/rules/ai_development_guide.md +60 -60
  20. package/.cursor/rules/ai_directives.md +114 -114
  21. package/.cursor/rules/cursor-rules.md +160 -160
  22. package/.cursor/rules/default-command.mdc +464 -464
  23. package/.cursor/rules/error_code_pattern.md +39 -39
  24. package/.cursor/rules/saved rule mcp server use.md +15 -15
  25. package/.dynamo/logs/cicd-pipeline/output.log +2782 -0
  26. package/.dynamo/logs/cicd-pipeline/status.json +94 -0
  27. package/.dynamo/pipeline.cicd.config.json +180 -180
  28. package/.dynamo/version-bump.config.json +5 -5
  29. package/.github/workflows/main.yml +438 -438
  30. package/.husky/pre-commit +3 -3
  31. package/.vscode/settings.json +10 -10
  32. package/HOWTO.md +15 -15
  33. package/LICENSE +21 -21
  34. package/README.md +678 -678
  35. package/__documentations/2026-04-28-logs-module.md +49 -49
  36. package/__documentations/2026-05-17-oai-compatible-providers.md +229 -229
  37. package/__documentations/2026-05-17-static-client-serving-howto.md +144 -144
  38. package/__documentations/2026-06-01-fr041-cors-middleware.md +96 -96
  39. package/__documentations/2026-06-01-fr047-p2p3-function-calling.md +81 -81
  40. package/__documentations/2026-06-15-fr193-memory-guard.md +73 -73
  41. package/__documentations/nts-integration-tests-2026-03-17.md +26 -26
  42. package/_specifications/BACKLOG.md +92 -92
  43. package/_specifications/TODO.md +15 -15
  44. package/_specifications/agent.md +138 -138
  45. package/build/_collections/archive.util.d.ts +12 -12
  46. package/build/_collections/archive.util.js +18 -18
  47. package/build/_collections/atlas-default-db-options.const.d.ts +2 -2
  48. package/build/_collections/atlas-default-db-options.const.js +9 -9
  49. package/build/_collections/default-fallback-cache-max-age.const.d.ts +2 -2
  50. package/build/_collections/default-fallback-cache-max-age.const.js +5 -5
  51. package/build/_collections/default-not-found-page.const.d.ts +5 -5
  52. package/build/_collections/default-not-found-page.const.js +24 -24
  53. package/build/_collections/default-socket-path.const.d.ts +2 -2
  54. package/build/_collections/default-socket-path.const.js +5 -5
  55. package/build/_collections/get-environment-settings.util.d.ts +2 -2
  56. package/build/_collections/get-environment-settings.util.js +43 -43
  57. package/build/_collections/global-settings.const.d.ts +6 -6
  58. package/build/_collections/global-settings.const.js +69 -69
  59. package/build/_collections/mongo-reconnect-guard.util.d.ts +73 -73
  60. package/build/_collections/mongo-reconnect-guard.util.js +110 -110
  61. package/build/_collections/star.controller.d.ts +7 -7
  62. package/build/_collections/star.controller.js +97 -97
  63. package/build/_enums/data-model-type.enum.d.ts +13 -13
  64. package/build/_enums/data-model-type.enum.js +17 -17
  65. package/build/_enums/data-service-function.enum.d.ts +18 -18
  66. package/build/_enums/data-service-function.enum.js +24 -24
  67. package/build/_enums/predefined-data-types.enum.d.ts +15 -15
  68. package/build/_enums/predefined-data-types.enum.js +19 -19
  69. package/build/_enums/route-security.enum.d.ts +11 -11
  70. package/build/_enums/route-security.enum.js +15 -15
  71. package/build/_models/control-models/api-call-params.control-model.d.ts +79 -79
  72. package/build/_models/control-models/api-call-params.control-model.js +101 -101
  73. package/build/_models/control-models/app-ext-system-controls.control-model.d.ts +6 -6
  74. package/build/_models/control-models/app-ext-system-controls.control-model.js +10 -10
  75. package/build/_models/control-models/app-params.control-model.d.ts +51 -51
  76. package/build/_models/control-models/app-params.control-model.js +119 -119
  77. package/build/_models/control-models/app-system-controls.control-model.d.ts +7 -7
  78. package/build/_models/control-models/app-system-controls.control-model.js +11 -11
  79. package/build/_models/control-models/endpoint-params.control-model.d.ts +114 -114
  80. package/build/_models/control-models/endpoint-params.control-model.js +442 -442
  81. package/build/_models/control-models/http-settings.control-model.d.ts +17 -17
  82. package/build/_models/control-models/http-settings.control-model.js +34 -34
  83. package/build/_models/control-models/system-control.control-model.d.ts +5 -5
  84. package/build/_models/control-models/system-control.control-model.js +11 -11
  85. package/build/_models/interfaces/certification-settings.interface.d.ts +5 -5
  86. package/build/_models/interfaces/certification-settings.interface.js +2 -2
  87. package/build/_models/interfaces/compare-data-options.interface.d.ts +26 -26
  88. package/build/_models/interfaces/compare-data-options.interface.js +2 -2
  89. package/build/_models/interfaces/compare-data-result.interface.d.ts +12 -12
  90. package/build/_models/interfaces/compare-data-result.interface.js +2 -2
  91. package/build/_models/interfaces/cors-settings.interface.d.ts +51 -51
  92. package/build/_models/interfaces/cors-settings.interface.js +2 -2
  93. package/build/_models/interfaces/environment-settings.interface.d.ts +34 -34
  94. package/build/_models/interfaces/environment-settings.interface.js +2 -2
  95. package/build/_models/interfaces/global-log-settings.interface.d.ts +145 -145
  96. package/build/_models/interfaces/global-log-settings.interface.js +2 -2
  97. package/build/_models/interfaces/global-service-settings.interface.d.ts +30 -30
  98. package/build/_models/interfaces/global-service-settings.interface.js +2 -2
  99. package/build/_models/interfaces/global-settings.interface.d.ts +161 -161
  100. package/build/_models/interfaces/global-settings.interface.js +2 -2
  101. package/build/_models/interfaces/routing-module-settings.interface.d.ts +19 -19
  102. package/build/_models/interfaces/routing-module-settings.interface.js +2 -2
  103. package/build/_models/interfaces/static-client-settings.interface.d.ts +28 -28
  104. package/build/_models/interfaces/static-client-settings.interface.js +2 -2
  105. package/build/_models/types/db-update.type.d.ts +129 -129
  106. package/build/_models/types/db-update.type.js +2 -2
  107. package/build/_modules/admin-auth/_models/admin-api-key-config.interface.d.ts +31 -31
  108. package/build/_modules/admin-auth/_models/admin-api-key-config.interface.js +2 -2
  109. package/build/_modules/admin-auth/admin-api-key.auth-service.d.ts +89 -89
  110. package/build/_modules/admin-auth/admin-api-key.auth-service.js +194 -194
  111. package/build/_modules/admin-auth/index.d.ts +2 -2
  112. package/build/_modules/admin-auth/index.js +5 -5
  113. package/build/_modules/ai/_models/ai-input-interfaces.d.ts +53 -53
  114. package/build/_modules/ai/_models/ai-input-interfaces.js +5 -5
  115. package/build/_modules/ai/_models/ai-test-generation-result.interface.d.ts +16 -16
  116. package/build/_modules/ai/_models/ai-test-generation-result.interface.js +2 -2
  117. package/build/_modules/ai/_models/interfaces/dynts-ai-cost-event-callback.interface.d.ts +13 -13
  118. package/build/_modules/ai/_models/interfaces/dynts-ai-cost-event-callback.interface.js +2 -2
  119. package/build/_modules/ai/_models/interfaces/dynts-ai-cost-event.interface.d.ts +49 -49
  120. package/build/_modules/ai/_models/interfaces/dynts-ai-cost-event.interface.js +2 -2
  121. package/build/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.d.ts +35 -35
  122. package/build/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.js +117 -117
  123. package/build/_modules/ai/_modules/anthropic/index.d.ts +2 -2
  124. package/build/_modules/ai/_modules/anthropic/index.js +7 -7
  125. package/build/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.d.ts +84 -84
  126. package/build/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.js +467 -467
  127. package/build/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.d.ts +109 -109
  128. package/build/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.js +418 -418
  129. package/build/_modules/ai/_modules/document-ai/_collections/dai-document.util.d.ts +28 -28
  130. package/build/_modules/ai/_modules/document-ai/_collections/dai-document.util.js +73 -73
  131. package/build/_modules/ai/_modules/document-ai/_enums/dai-compare-result-type.enum.d.ts +6 -6
  132. package/build/_modules/ai/_modules/document-ai/_enums/dai-compare-result-type.enum.js +10 -10
  133. package/build/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-chunk.data-model.d.ts +51 -51
  134. package/build/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-chunk.data-model.js +132 -132
  135. package/build/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-page.data-model.d.ts +47 -47
  136. package/build/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-page.data-model.js +136 -136
  137. package/build/_modules/ai/_modules/document-ai/_models/data-models/dai-document.data-model.d.ts +17 -17
  138. package/build/_modules/ai/_modules/document-ai/_models/data-models/dai-document.data-model.js +76 -76
  139. package/build/_modules/ai/_modules/document-ai/_models/interfaces/dai-code-chunk.interface.d.ts +49 -49
  140. package/build/_modules/ai/_modules/document-ai/_models/interfaces/dai-code-chunk.interface.js +2 -2
  141. package/build/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-chunk-compare-result.interface.d.ts +8 -8
  142. package/build/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-chunk-compare-result.interface.js +2 -2
  143. package/build/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-page-compare-result.interface.d.ts +11 -11
  144. package/build/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-page-compare-result.interface.js +2 -2
  145. package/build/_modules/ai/_modules/document-ai/_models/interfaces/dai-document-compare-result.interface.d.ts +12 -12
  146. package/build/_modules/ai/_modules/document-ai/_models/interfaces/dai-document-compare-result.interface.js +2 -2
  147. package/build/_modules/ai/_modules/document-ai/index.d.ts +12 -12
  148. package/build/_modules/ai/_modules/document-ai/index.js +27 -27
  149. package/build/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.d.ts +34 -34
  150. package/build/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.js +128 -128
  151. package/build/_modules/ai/_modules/fdp-ai/index.d.ts +2 -2
  152. package/build/_modules/ai/_modules/fdp-ai/index.js +7 -7
  153. package/build/_modules/ai/_modules/open-ai/_collections/oai-global-settings.const.d.ts +2 -2
  154. package/build/_modules/ai/_modules/open-ai/_collections/oai-global-settings.const.js +8 -8
  155. package/build/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests-hu.conts.d.ts +2 -2
  156. package/build/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests-hu.conts.js +74 -74
  157. package/build/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests.conts.d.ts +2 -2
  158. package/build/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests.conts.js +67 -67
  159. package/build/_modules/ai/_modules/open-ai/_enums/oai-gpt-message-role.enum.js +42 -42
  160. package/build/_modules/ai/_modules/open-ai/_models/interfaces/oai-global-settings.interface.d.ts +5 -5
  161. package/build/_modules/ai/_modules/open-ai/_models/interfaces/oai-global-settings.interface.js +2 -2
  162. package/build/_modules/ai/_modules/open-ai/_models/interfaces/oai-gpt-message.interface.js +6 -6
  163. package/build/_modules/ai/_modules/open-ai/_models/interfaces/oai-llm-predefined-requests.interface.d.ts +51 -51
  164. package/build/_modules/ai/_modules/open-ai/_models/interfaces/oai-llm-predefined-requests.interface.js +2 -2
  165. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-chunk-data.service.d.ts +21 -21
  166. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-chunk-data.service.js +187 -187
  167. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-page.data-service.d.ts +26 -26
  168. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-page.data-service.js +278 -278
  169. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.d.ts +22 -22
  170. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.js +322 -322
  171. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.d.ts +119 -119
  172. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.js +480 -480
  173. package/build/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.d.ts +25 -25
  174. package/build/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.js +103 -103
  175. package/build/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.d.ts +169 -169
  176. package/build/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.js +479 -479
  177. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.d.ts +201 -201
  178. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.js +579 -579
  179. package/build/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.d.ts +39 -39
  180. package/build/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.js +110 -110
  181. package/build/_modules/ai/_modules/open-ai/index.d.ts +14 -14
  182. package/build/_modules/ai/_modules/open-ai/index.js +55 -55
  183. package/build/_modules/ai/_services/ai-embedding-mock.service.d.ts +80 -80
  184. package/build/_modules/ai/_services/ai-embedding-mock.service.js +166 -166
  185. package/build/_modules/ai/_services/ai-embedding-provider.registry.d.ts +51 -51
  186. package/build/_modules/ai/_services/ai-embedding-provider.registry.js +78 -78
  187. package/build/_modules/ai/_services/ai-embedding.service-base.d.ts +41 -41
  188. package/build/_modules/ai/_services/ai-embedding.service-base.js +11 -11
  189. package/build/_modules/ai/_services/ai-llm-chat.service-base.d.ts +39 -39
  190. package/build/_modules/ai/_services/ai-llm-chat.service-base.js +11 -11
  191. package/build/_modules/ai/_services/ai-llm.service-base.d.ts +132 -132
  192. package/build/_modules/ai/_services/ai-llm.service-base.js +313 -313
  193. package/build/_modules/ai/_services/ai-provider.service-base.d.ts +46 -46
  194. package/build/_modules/ai/_services/ai-provider.service-base.js +43 -43
  195. package/build/_modules/ai/_services/ai-user-key.service-base.d.ts +44 -44
  196. package/build/_modules/ai/_services/ai-user-key.service-base.js +14 -14
  197. package/build/_modules/ai/_services/lmstudio-embedding.control-service.d.ts +110 -110
  198. package/build/_modules/ai/_services/lmstudio-embedding.control-service.js +297 -297
  199. package/build/_modules/ai/index.d.ts +13 -13
  200. package/build/_modules/ai/index.js +22 -22
  201. package/build/_modules/assistant/_collections/ass-global-settings.const.d.ts +2 -2
  202. package/build/_modules/assistant/_collections/ass-global-settings.const.js +14 -14
  203. package/build/_modules/assistant/_collections/ass.util.d.ts +15 -15
  204. package/build/_modules/assistant/_collections/ass.util.js +42 -42
  205. package/build/_modules/assistant/_models/ass-global-settings.interface.d.ts +13 -13
  206. package/build/_modules/assistant/_models/ass-global-settings.interface.js +2 -2
  207. package/build/_modules/assistant/_services/ass-io.control-service.d.ts +19 -19
  208. package/build/_modules/assistant/_services/ass-io.control-service.js +57 -57
  209. package/build/_modules/assistant/_services/ass-main.control-service.d.ts +32 -32
  210. package/build/_modules/assistant/_services/ass-main.control-service.js +65 -65
  211. package/build/_modules/assistant/index.d.ts +6 -6
  212. package/build/_modules/assistant/index.js +18 -18
  213. package/build/_modules/bot/_collections/bot-default-commands.const.d.ts +2 -2
  214. package/build/_modules/bot/_collections/bot-default-commands.const.js +13 -13
  215. package/build/_modules/bot/_collections/bot-global-settings.const.d.ts +2 -2
  216. package/build/_modules/bot/_collections/bot-global-settings.const.js +31 -31
  217. package/build/_modules/bot/_models/bot-channel-wrapper.interface.d.ts +25 -25
  218. package/build/_modules/bot/_models/bot-channel-wrapper.interface.js +38 -38
  219. package/build/_modules/bot/_models/bot-command.interface.d.ts +7 -7
  220. package/build/_modules/bot/_models/bot-command.interface.js +2 -2
  221. package/build/_modules/bot/_models/bot-global-settings.interface.d.ts +85 -85
  222. package/build/_modules/bot/_models/bot-global-settings.interface.js +2 -2
  223. package/build/_modules/bot/_models/bot-last-mention-date.interface.d.ts +6 -6
  224. package/build/_modules/bot/_models/bot-last-mention-date.interface.js +2 -2
  225. package/build/_modules/bot/_models/bot-last-message-date.interface.d.ts +5 -5
  226. package/build/_modules/bot/_models/bot-last-message-date.interface.js +2 -2
  227. package/build/_modules/bot/_models/bot-message-wrapper.interface.d.ts +37 -37
  228. package/build/_modules/bot/_models/bot-message-wrapper.interface.js +54 -54
  229. package/build/_modules/bot/_models/bot-user-wrapper.interface.d.ts +23 -23
  230. package/build/_modules/bot/_models/bot-user-wrapper.interface.js +28 -28
  231. package/build/_modules/bot/_modules/discord-bot/_models/dib-platform.types.js +10 -10
  232. package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.d.ts +69 -69
  233. package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.js +497 -497
  234. package/build/_modules/bot/_modules/discord-bot/index.d.ts +1 -1
  235. package/build/_modules/bot/_modules/discord-bot/index.js +12 -12
  236. package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.d.ts +16 -16
  237. package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.js +42 -42
  238. package/build/_modules/bot/_modules/dynamo-bot/_models/dyb-platform.types.d.ts +9 -9
  239. package/build/_modules/bot/_modules/dynamo-bot/_models/dyb-platform.types.js +2 -2
  240. package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.d.ts +59 -59
  241. package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.js +349 -349
  242. package/build/_modules/bot/_modules/dynamo-bot/index.d.ts +3 -3
  243. package/build/_modules/bot/_modules/dynamo-bot/index.js +15 -15
  244. package/build/_modules/bot/_modules/slack-bot/_models/slb-platform.types.d.ts +6 -6
  245. package/build/_modules/bot/_modules/slack-bot/_models/slb-platform.types.js +2 -2
  246. package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.d.ts +56 -56
  247. package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.js +137 -137
  248. package/build/_modules/bot/_modules/slack-bot/index.d.ts +2 -2
  249. package/build/_modules/bot/_modules/slack-bot/index.js +12 -12
  250. package/build/_modules/bot/_modules/teams-bot/_models/teb-platform.types.d.ts +6 -6
  251. package/build/_modules/bot/_modules/teams-bot/_models/teb-platform.types.js +2 -2
  252. package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.d.ts +56 -56
  253. package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.js +137 -137
  254. package/build/_modules/bot/_modules/teams-bot/index.d.ts +2 -2
  255. package/build/_modules/bot/_modules/teams-bot/index.js +12 -12
  256. package/build/_modules/bot/_services/bot-commands.control-service.d.ts +12 -12
  257. package/build/_modules/bot/_services/bot-commands.control-service.js +117 -117
  258. package/build/_modules/bot/_services/bot-io.control-service.d.ts +23 -23
  259. package/build/_modules/bot/_services/bot-io.control-service.js +226 -226
  260. package/build/_modules/bot/_services/bot-main.control-service.d.ts +35 -35
  261. package/build/_modules/bot/_services/bot-main.control-service.js +195 -195
  262. package/build/_modules/bot/_services/bot-messaging-provider.service-base.d.ts +71 -71
  263. package/build/_modules/bot/_services/bot-messaging-provider.service-base.js +15 -15
  264. package/build/_modules/bot/_services/bot-routines.control-service.d.ts +13 -13
  265. package/build/_modules/bot/_services/bot-routines.control-service.js +59 -59
  266. package/build/_modules/bot/index.d.ts +17 -17
  267. package/build/_modules/bot/index.js +36 -36
  268. package/build/_modules/custom-data/custom-data.controller.d.ts +5 -5
  269. package/build/_modules/custom-data/custom-data.controller.js +56 -56
  270. package/build/_modules/custom-data/custom-data.data-service.d.ts +5 -5
  271. package/build/_modules/custom-data/custom-data.data-service.js +11 -11
  272. package/build/_modules/custom-data/get-custom-data-routing-module.util.d.ts +3 -3
  273. package/build/_modules/custom-data/get-custom-data-routing-module.util.js +16 -16
  274. package/build/_modules/custom-data/index.d.ts +4 -4
  275. package/build/_modules/custom-data/index.js +9 -9
  276. package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.d.ts +58 -58
  277. package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.js +168 -168
  278. package/build/_modules/data-readers/_models/interfaces/dynts-sqlite-reader.interface.d.ts +31 -31
  279. package/build/_modules/data-readers/_models/interfaces/dynts-sqlite-reader.interface.js +7 -7
  280. package/build/_modules/data-readers/index.d.ts +2 -2
  281. package/build/_modules/data-readers/index.js +10 -10
  282. package/build/_modules/defaults/_collections/default-endpoints.util.d.ts +248 -248
  283. package/build/_modules/defaults/_collections/default-endpoints.util.js +386 -386
  284. package/build/_modules/defaults/_models/default-user.data-model.d.ts +19 -19
  285. package/build/_modules/defaults/_models/default-user.data-model.js +72 -72
  286. package/build/_modules/defaults/_services/default-auth.service.d.ts +50 -50
  287. package/build/_modules/defaults/_services/default-auth.service.js +158 -158
  288. package/build/_modules/defaults/_services/default-socket-events.service.d.ts +23 -23
  289. package/build/_modules/defaults/_services/default-socket-events.service.js +60 -60
  290. package/build/_modules/defaults/_services/default-user.data-service.d.ts +24 -24
  291. package/build/_modules/defaults/_services/default-user.data-service.js +87 -87
  292. package/build/_modules/defaults/index.d.ts +5 -5
  293. package/build/_modules/defaults/index.js +17 -17
  294. package/build/_modules/discord-assistant/_collections/dias-global-settings.const.d.ts +2 -2
  295. package/build/_modules/discord-assistant/_collections/dias-global-settings.const.js +16 -16
  296. package/build/_modules/discord-assistant/_collections/dias.util.d.ts +31 -31
  297. package/build/_modules/discord-assistant/_collections/dias.util.js +85 -85
  298. package/build/_modules/discord-assistant/_models/dias-global-settings.interface.d.ts +17 -17
  299. package/build/_modules/discord-assistant/_models/dias-global-settings.interface.js +2 -2
  300. package/build/_modules/discord-assistant/_models/dias-knowledge.data-model.d.ts +8 -8
  301. package/build/_modules/discord-assistant/_models/dias-knowledge.data-model.js +46 -46
  302. package/build/_modules/discord-assistant/_services/dias-chunk.data-service.d.ts +17 -17
  303. package/build/_modules/discord-assistant/_services/dias-chunk.data-service.js +123 -123
  304. package/build/_modules/discord-assistant/_services/dias-io.control-service.d.ts +10 -10
  305. package/build/_modules/discord-assistant/_services/dias-io.control-service.js +49 -49
  306. package/build/_modules/discord-assistant/_services/dias-main.control-service.d.ts +3 -3
  307. package/build/_modules/discord-assistant/_services/dias-main.control-service.js +7 -7
  308. package/build/_modules/discord-assistant/_services/dias.service-base.d.ts +18 -18
  309. package/build/_modules/discord-assistant/_services/dias.service-base.js +46 -46
  310. package/build/_modules/discord-assistant/index.d.ts +11 -11
  311. package/build/_modules/discord-assistant/index.js +24 -24
  312. package/build/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.d.ts +3 -3
  313. package/build/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.js +7 -7
  314. package/build/_modules/discord-assistant-voiced/index.d.ts +2 -2
  315. package/build/_modules/discord-assistant-voiced/index.js +28 -28
  316. package/build/_modules/discord-bot/_collections/dibo-default-commands.const.d.ts +2 -2
  317. package/build/_modules/discord-bot/_collections/dibo-default-commands.const.js +12 -12
  318. package/build/_modules/discord-bot/_collections/dibo-global-settings.conts.d.ts +2 -2
  319. package/build/_modules/discord-bot/_collections/dibo-global-settings.conts.js +43 -43
  320. package/build/_modules/discord-bot/_collections/dibo-operations.util.d.ts +22 -22
  321. package/build/_modules/discord-bot/_collections/dibo-operations.util.js +275 -275
  322. package/build/_modules/discord-bot/_models/dibo-command.interface.d.ts +7 -7
  323. package/build/_modules/discord-bot/_models/dibo-command.interface.js +2 -2
  324. package/build/_modules/discord-bot/_models/dibo-global-settings.interface.d.ts +87 -87
  325. package/build/_modules/discord-bot/_models/dibo-global-settings.interface.js +2 -2
  326. package/build/_modules/discord-bot/_models/dibo-last-mention-date.inteface.d.ts +6 -6
  327. package/build/_modules/discord-bot/_models/dibo-last-mention-date.inteface.js +2 -2
  328. package/build/_modules/discord-bot/_models/dibo-last-message-date.interface.d.ts +5 -5
  329. package/build/_modules/discord-bot/_models/dibo-last-message-date.interface.js +2 -2
  330. package/build/_modules/discord-bot/_services/dibo-commands.control-service.d.ts +11 -11
  331. package/build/_modules/discord-bot/_services/dibo-commands.control-service.js +109 -109
  332. package/build/_modules/discord-bot/_services/dibo-io.control-service.d.ts +21 -21
  333. package/build/_modules/discord-bot/_services/dibo-io.control-service.js +218 -218
  334. package/build/_modules/discord-bot/_services/dibo-main.control-service.d.ts +89 -89
  335. package/build/_modules/discord-bot/_services/dibo-main.control-service.js +363 -363
  336. package/build/_modules/discord-bot/_services/dibo-routines.control-service.d.ts +13 -13
  337. package/build/_modules/discord-bot/_services/dibo-routines.control-service.js +73 -73
  338. package/build/_modules/discord-bot/index.d.ts +11 -11
  339. package/build/_modules/discord-bot/index.js +30 -30
  340. package/build/_modules/local-vector-search/_enums/lvs-search-mode.enum.d.ts +34 -34
  341. package/build/_modules/local-vector-search/_enums/lvs-search-mode.enum.js +38 -38
  342. package/build/_modules/local-vector-search/_models/data-models/lvs-vector-persist.data-model.d.ts +35 -35
  343. package/build/_modules/local-vector-search/_models/data-models/lvs-vector-persist.data-model.js +53 -53
  344. package/build/_modules/local-vector-search/_models/lvs-search-result.interface.d.ts +16 -16
  345. package/build/_modules/local-vector-search/_models/lvs-search-result.interface.js +2 -2
  346. package/build/_modules/local-vector-search/_services/lvs-bm25.util.d.ts +88 -88
  347. package/build/_modules/local-vector-search/_services/lvs-bm25.util.js +189 -189
  348. package/build/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.d.ts +26 -26
  349. package/build/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.js +197 -197
  350. package/build/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.d.ts +145 -145
  351. package/build/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.js +294 -294
  352. package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.d.ts +69 -69
  353. package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.js +122 -122
  354. package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.d.ts +42 -42
  355. package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.js +71 -71
  356. package/build/_modules/local-vector-search/_services/lvs-vector-pool.control-service.d.ts +74 -70
  357. package/build/_modules/local-vector-search/_services/lvs-vector-pool.control-service.d.ts.map +1 -1
  358. package/build/_modules/local-vector-search/_services/lvs-vector-pool.control-service.js +201 -181
  359. package/build/_modules/local-vector-search/_services/lvs-vector-pool.control-service.js.map +1 -1
  360. package/build/_modules/local-vector-search/index.d.ts +8 -8
  361. package/build/_modules/local-vector-search/index.js +15 -15
  362. package/build/_modules/logs/_models/file-log-entry.interface.d.ts +13 -13
  363. package/build/_modules/logs/_models/file-log-entry.interface.js +2 -2
  364. package/build/_modules/logs/_models/file-log-read-result.interface.d.ts +35 -35
  365. package/build/_modules/logs/_models/file-log-read-result.interface.js +2 -2
  366. package/build/_modules/logs/file-log.service.d.ts +132 -132
  367. package/build/_modules/logs/file-log.service.js +444 -444
  368. package/build/_modules/logs/file-logs.controller.d.ts +40 -40
  369. package/build/_modules/logs/file-logs.controller.js +138 -138
  370. package/build/_modules/logs/get-file-logs-routing-module.util.d.ts +31 -31
  371. package/build/_modules/logs/get-file-logs-routing-module.util.js +37 -37
  372. package/build/_modules/logs/get-logs-routing-module.util.d.ts +18 -18
  373. package/build/_modules/logs/get-logs-routing-module.util.js +31 -31
  374. package/build/_modules/logs/index.d.ts +8 -8
  375. package/build/_modules/logs/index.js +15 -15
  376. package/build/_modules/logs/log-buffer.service.d.ts +37 -37
  377. package/build/_modules/logs/log-buffer.service.js +96 -96
  378. package/build/_modules/logs/logs.controller.d.ts +26 -26
  379. package/build/_modules/logs/logs.controller.js +89 -89
  380. package/build/_modules/logs/logs.service.d.ts +39 -39
  381. package/build/_modules/logs/logs.service.js +96 -96
  382. package/build/_modules/mcp/_models/interfaces/dynts-mcp.interface.d.ts +108 -108
  383. package/build/_modules/mcp/_models/interfaces/dynts-mcp.interface.js +13 -13
  384. package/build/_modules/mcp/_services/dynts-mcp-server.service-base.d.ts +70 -70
  385. package/build/_modules/mcp/_services/dynts-mcp-server.service-base.js +98 -98
  386. package/build/_modules/mcp/_services/dynts-mcp.adapter.d.ts +56 -56
  387. package/build/_modules/mcp/_services/dynts-mcp.adapter.js +138 -138
  388. package/build/_modules/mcp/index.d.ts +3 -3
  389. package/build/_modules/mcp/index.js +12 -12
  390. package/build/_modules/messaging/_collections/get-messaging-routing-module.util.d.ts +7 -7
  391. package/build/_modules/messaging/_collections/get-messaging-routing-module.util.js +20 -20
  392. package/build/_modules/messaging/_collections/msg-global-settings.const.d.ts +5 -5
  393. package/build/_modules/messaging/_collections/msg-global-settings.const.js +22 -22
  394. package/build/_modules/messaging/_collections/msg.util.d.ts +24 -24
  395. package/build/_modules/messaging/_collections/msg.util.js +62 -62
  396. package/build/_modules/messaging/_models/msg-global-settings.interface.d.ts +28 -28
  397. package/build/_modules/messaging/_models/msg-global-settings.interface.js +2 -2
  398. package/build/_modules/messaging/_services/msg-conversation.data-service.d.ts +28 -28
  399. package/build/_modules/messaging/_services/msg-conversation.data-service.js +109 -109
  400. package/build/_modules/messaging/_services/msg-events.service.d.ts +61 -61
  401. package/build/_modules/messaging/_services/msg-events.service.js +203 -203
  402. package/build/_modules/messaging/_services/msg-integration.control-service.js +180 -180
  403. package/build/_modules/messaging/_services/msg-main.control-service.d.ts +62 -62
  404. package/build/_modules/messaging/_services/msg-main.control-service.js +428 -428
  405. package/build/_modules/messaging/_services/msg-message.data-service.d.ts +28 -28
  406. package/build/_modules/messaging/_services/msg-message.data-service.js +103 -103
  407. package/build/_modules/messaging/_services/msg.controller.d.ts +12 -12
  408. package/build/_modules/messaging/_services/msg.controller.js +256 -256
  409. package/build/_modules/messaging/index.d.ts +10 -10
  410. package/build/_modules/messaging/index.js +27 -27
  411. package/build/_modules/mock/app-extended-server.mock.d.ts +41 -41
  412. package/build/_modules/mock/app-extended-server.mock.js +169 -169
  413. package/build/_modules/mock/app-integration-test.mock.d.ts +19 -19
  414. package/build/_modules/mock/app-integration-test.mock.js +45 -45
  415. package/build/_modules/mock/app-params.mock.d.ts +2 -2
  416. package/build/_modules/mock/app-params.mock.js +9 -9
  417. package/build/_modules/mock/app-server.mock.d.ts +41 -41
  418. package/build/_modules/mock/app-server.mock.js +148 -148
  419. package/build/_modules/mock/auth-service.mock.d.ts +10 -10
  420. package/build/_modules/mock/auth-service.mock.js +19 -19
  421. package/build/_modules/mock/controller.mock.d.ts +5 -5
  422. package/build/_modules/mock/controller.mock.js +14 -14
  423. package/build/_modules/mock/data-model.mock.d.ts +26 -26
  424. package/build/_modules/mock/data-model.mock.js +72 -72
  425. package/build/_modules/mock/email-service-collection.mock.d.ts +7 -7
  426. package/build/_modules/mock/email-service-collection.mock.js +12 -12
  427. package/build/_modules/mock/email-service.mock.d.ts +4 -4
  428. package/build/_modules/mock/email-service.mock.js +20 -20
  429. package/build/_modules/mock/endpoint.mock.d.ts +8 -8
  430. package/build/_modules/mock/endpoint.mock.js +79 -79
  431. package/build/_modules/mock/socket-client.mock.d.ts +9 -9
  432. package/build/_modules/mock/socket-client.mock.js +38 -38
  433. package/build/_modules/mock/socket-server.mock.d.ts +15 -15
  434. package/build/_modules/mock/socket-server.mock.js +32 -32
  435. package/build/_modules/oauth2/_routes/oauth2.controller.d.ts +16 -16
  436. package/build/_modules/oauth2/_routes/oauth2.controller.js +96 -96
  437. package/build/_modules/oauth2/_services/oauth2.auth-service.d.ts +30 -30
  438. package/build/_modules/oauth2/_services/oauth2.auth-service.js +215 -215
  439. package/build/_modules/oauth2/_services/oauth2.control-service.d.ts +132 -132
  440. package/build/_modules/oauth2/_services/oauth2.control-service.js +576 -576
  441. package/build/_modules/oauth2/index.d.ts +3 -3
  442. package/build/_modules/oauth2/index.js +14 -14
  443. package/build/_modules/rate-limit/_models/rate-limit-config.interface.d.ts +61 -61
  444. package/build/_modules/rate-limit/_models/rate-limit-config.interface.js +2 -2
  445. package/build/_modules/rate-limit/_models/rate-limit-policy.interface.d.ts +15 -15
  446. package/build/_modules/rate-limit/_models/rate-limit-policy.interface.js +2 -2
  447. package/build/_modules/rate-limit/index.d.ts +3 -3
  448. package/build/_modules/rate-limit/index.js +5 -5
  449. package/build/_modules/rate-limit/rate-limit.middleware.d.ts +132 -132
  450. package/build/_modules/rate-limit/rate-limit.middleware.js +289 -289
  451. package/build/_modules/scoped-config/_enums/dynts-scoped-config-level.enum.d.ts +18 -18
  452. package/build/_modules/scoped-config/_enums/dynts-scoped-config-level.enum.js +22 -22
  453. package/build/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.d.ts +43 -43
  454. package/build/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.js +67 -67
  455. package/build/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.d.ts +88 -88
  456. package/build/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.js +11 -11
  457. package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.d.ts +83 -83
  458. package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.js +219 -219
  459. package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.d.ts +53 -53
  460. package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.js +75 -75
  461. package/build/_modules/scoped-config/index.d.ts +5 -5
  462. package/build/_modules/scoped-config/index.js +14 -14
  463. package/build/_modules/server/errors/errors.control-service.d.ts +21 -21
  464. package/build/_modules/server/errors/errors.control-service.js +10 -10
  465. package/build/_modules/server/errors/errors.controller.d.ts +100 -100
  466. package/build/_modules/server/errors/errors.controller.js +355 -355
  467. package/build/_modules/server/errors/errors.data-service.d.ts +64 -64
  468. package/build/_modules/server/errors/errors.data-service.js +628 -628
  469. package/build/_modules/server/index.d.ts +7 -7
  470. package/build/_modules/server/index.js +26 -26
  471. package/build/_modules/server/server-status/server-status-snapshot.control-service.d.ts +4 -4
  472. package/build/_modules/server/server-status/server-status-snapshot.control-service.js +7 -7
  473. package/build/_modules/server/server-status/server-status-snapshot.data-service.d.ts +6 -6
  474. package/build/_modules/server/server-status/server-status-snapshot.data-service.js +22 -22
  475. package/build/_modules/server/server-status/server-status.control-service.d.ts +74 -74
  476. package/build/_modules/server/server-status/server-status.control-service.js +234 -234
  477. package/build/_modules/server/server-status/server-status.controller.d.ts +84 -84
  478. package/build/_modules/server/server-status/server-status.controller.js +172 -172
  479. package/build/_modules/socket/_enums/socket-security.enum.d.ts +10 -10
  480. package/build/_modules/socket/_enums/socket-security.enum.js +14 -14
  481. package/build/_modules/socket/_models/socket-client-service-params.control-model.d.ts +8 -8
  482. package/build/_modules/socket/_models/socket-client-service-params.control-model.js +16 -16
  483. package/build/_modules/socket/_models/socket-presence.control-model.d.ts +25 -25
  484. package/build/_modules/socket/_models/socket-presence.control-model.js +139 -139
  485. package/build/_modules/socket/_models/socket-server-service-params.control-model.d.ts +12 -12
  486. package/build/_modules/socket/_models/socket-server-service-params.control-model.js +20 -20
  487. package/build/_modules/socket/_services/socket-client.service.d.ts +37 -37
  488. package/build/_modules/socket/_services/socket-client.service.js +196 -196
  489. package/build/_modules/socket/_services/socket-server.service.d.ts +94 -94
  490. package/build/_modules/socket/_services/socket-server.service.js +689 -689
  491. package/build/_modules/socket/app-extended.server.d.ts +145 -145
  492. package/build/_modules/socket/app-extended.server.js +506 -506
  493. package/build/_modules/socket/index.d.ts +8 -8
  494. package/build/_modules/socket/index.js +35 -35
  495. package/build/_modules/test/get-test-routing-module.util.d.ts +3 -3
  496. package/build/_modules/test/get-test-routing-module.util.js +16 -16
  497. package/build/_modules/test/index.d.ts +3 -3
  498. package/build/_modules/test/index.js +11 -11
  499. package/build/_modules/test/test.controller.d.ts +5 -5
  500. package/build/_modules/test/test.controller.js +103 -103
  501. package/build/_modules/usage/get-usage-routing-module.util.d.ts +3 -3
  502. package/build/_modules/usage/get-usage-routing-module.util.js +16 -16
  503. package/build/_modules/usage/index.d.ts +4 -4
  504. package/build/_modules/usage/index.js +13 -13
  505. package/build/_modules/usage/usage.controller.d.ts +6 -6
  506. package/build/_modules/usage/usage.controller.js +95 -95
  507. package/build/_modules/usage/usage.data-service.d.ts +17 -17
  508. package/build/_modules/usage/usage.data-service.js +135 -135
  509. package/build/_services/base/api.service-base.d.ts +9 -9
  510. package/build/_services/base/api.service-base.js +46 -46
  511. package/build/_services/base/archive-data.service.d.ts +25 -25
  512. package/build/_services/base/archive-data.service.js +140 -140
  513. package/build/_services/base/data.service.d.ts +381 -381
  514. package/build/_services/base/data.service.js +2068 -2068
  515. package/build/_services/base/db.service.d.ts +393 -393
  516. package/build/_services/base/db.service.js +1256 -1256
  517. package/build/_services/base/singleton.service-base.d.ts +8 -8
  518. package/build/_services/base/singleton.service-base.js +21 -21
  519. package/build/_services/base/singleton.service.d.ts +11 -11
  520. package/build/_services/base/singleton.service.js +31 -31
  521. package/build/_services/core/api.service.d.ts +45 -45
  522. package/build/_services/core/api.service.js +436 -436
  523. package/build/_services/core/auth.service.d.ts +129 -129
  524. package/build/_services/core/auth.service.js +59 -59
  525. package/build/_services/core/email.service.d.ts +77 -77
  526. package/build/_services/core/email.service.js +489 -489
  527. package/build/_services/core/global.service.d.ts +76 -76
  528. package/build/_services/core/global.service.js +370 -370
  529. package/build/_services/core/memory-guard.service.d.ts +110 -110
  530. package/build/_services/core/memory-guard.service.js +197 -197
  531. package/build/_services/core/service-collection.service.d.ts +4 -4
  532. package/build/_services/core/service-collection.service.js +7 -7
  533. package/build/_services/route/controller.service.d.ts +124 -124
  534. package/build/_services/route/controller.service.js +95 -95
  535. package/build/_services/route/routing-module.service.d.ts +80 -80
  536. package/build/_services/route/routing-module.service.js +250 -250
  537. package/build/_services/server/app.server.d.ts +352 -352
  538. package/build/_services/server/app.server.js +1323 -1323
  539. package/build/_services/shared.static-service.d.ts +36 -36
  540. package/build/_services/shared.static-service.js +72 -72
  541. package/build/index.d.ts +43 -43
  542. package/build/index.js +80 -80
  543. package/eslint.config.js +3 -3
  544. package/nodemon.json +24 -24
  545. package/package.json +417 -416
  546. package/pnpm-workspace.yaml +5 -5
  547. package/scripts/run-coverage-tests.js +28 -28
  548. package/spec/support/helpers/spec-reporter-loader.js +359 -359
  549. package/spec/support/helpers/ts-node-helper.js +93 -93
  550. package/spec/support/jasmine.coverage.json +24 -24
  551. package/spec/support/jasmine.json +24 -24
  552. package/src/_collections/archive.util.spec.ts +57 -57
  553. package/src/_collections/archive.util.ts +18 -18
  554. package/src/_collections/atlas-default-db-options.const.ts +9 -9
  555. package/src/_collections/default-fallback-cache-max-age.const.spec.ts +11 -11
  556. package/src/_collections/default-fallback-cache-max-age.const.ts +2 -2
  557. package/src/_collections/default-not-found-page.const.spec.ts +19 -19
  558. package/src/_collections/default-not-found-page.const.ts +22 -22
  559. package/src/_collections/default-socket-path.const.spec.ts +12 -12
  560. package/src/_collections/default-socket-path.const.ts +2 -2
  561. package/src/_collections/get-environment-settings.util.spec.ts +210 -210
  562. package/src/_collections/get-environment-settings.util.ts +48 -48
  563. package/src/_collections/global-settings.const.ts +89 -89
  564. package/src/_collections/mongo-reconnect-guard.util.spec.ts +52 -52
  565. package/src/_collections/mongo-reconnect-guard.util.ts +172 -172
  566. package/src/_collections/sample.env +21 -21
  567. package/src/_collections/star.controller.spec.ts +224 -224
  568. package/src/_collections/star.controller.ts +129 -129
  569. package/src/_enums/data-model-type.enum.ts +14 -14
  570. package/src/_enums/data-service-function.enum.ts +24 -24
  571. package/src/_enums/predefined-data-types.enum.ts +16 -16
  572. package/src/_enums/route-security.enum.ts +12 -12
  573. package/src/_models/control-models/api-call-params.control-model.spec.ts +152 -152
  574. package/src/_models/control-models/api-call-params.control-model.ts +142 -142
  575. package/src/_models/control-models/app-ext-system-controls.control-model.spec.ts +52 -52
  576. package/src/_models/control-models/app-ext-system-controls.control-model.ts +9 -9
  577. package/src/_models/control-models/app-params.control-model.spec.ts +225 -225
  578. package/src/_models/control-models/app-params.control-model.ts +136 -136
  579. package/src/_models/control-models/app-system-controls.control-model.spec.ts +31 -31
  580. package/src/_models/control-models/app-system-controls.control-model.ts +9 -9
  581. package/src/_models/control-models/endpoint-params.control-model.spec.ts +627 -627
  582. package/src/_models/control-models/endpoint-params.control-model.ts +627 -627
  583. package/src/_models/control-models/http-settings.control-model.spec.ts +77 -77
  584. package/src/_models/control-models/http-settings.control-model.ts +37 -37
  585. package/src/_models/control-models/system-control.control-model.spec.ts +27 -27
  586. package/src/_models/control-models/system-control.control-model.ts +12 -12
  587. package/src/_models/interfaces/certification-settings.interface.ts +7 -7
  588. package/src/_models/interfaces/compare-data-options.interface.ts +27 -27
  589. package/src/_models/interfaces/compare-data-result.interface.ts +12 -12
  590. package/src/_models/interfaces/cors-settings.interface.spec.ts +52 -52
  591. package/src/_models/interfaces/cors-settings.interface.ts +56 -56
  592. package/src/_models/interfaces/environment-settings.interface.ts +59 -59
  593. package/src/_models/interfaces/global-log-settings.interface.ts +171 -171
  594. package/src/_models/interfaces/global-service-settings.interface.ts +47 -47
  595. package/src/_models/interfaces/global-settings.interface.ts +185 -185
  596. package/src/_models/interfaces/routing-module-settings.interface.ts +21 -21
  597. package/src/_models/interfaces/static-client-settings.interface.spec.ts +29 -29
  598. package/src/_models/interfaces/static-client-settings.interface.ts +28 -28
  599. package/src/_models/types/db-update.type.ts +100 -100
  600. package/src/_modules/admin-auth/_models/admin-api-key-config.interface.ts +33 -33
  601. package/src/_modules/admin-auth/admin-api-key.auth-service.spec.ts +200 -200
  602. package/src/_modules/admin-auth/admin-api-key.auth-service.ts +220 -220
  603. package/src/_modules/admin-auth/index.ts +2 -2
  604. package/src/_modules/ai/_models/ai-input-interfaces.ts +117 -117
  605. package/src/_modules/ai/_models/ai-test-generation-result.interface.ts +16 -16
  606. package/src/_modules/ai/_models/interfaces/dynts-ai-cost-event-callback.interface.ts +14 -14
  607. package/src/_modules/ai/_models/interfaces/dynts-ai-cost-event.interface.ts +56 -56
  608. package/src/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.ts +138 -138
  609. package/src/_modules/ai/_modules/anthropic/index.ts +5 -5
  610. package/src/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.spec.ts +242 -242
  611. package/src/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.ts +639 -639
  612. package/src/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.spec.ts +295 -295
  613. package/src/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.ts +552 -552
  614. package/src/_modules/ai/_modules/document-ai/_collections/dai-document.util.spec.ts +209 -209
  615. package/src/_modules/ai/_modules/document-ai/_collections/dai-document.util.ts +85 -85
  616. package/src/_modules/ai/_modules/document-ai/_enums/dai-compare-result-type.enum.ts +7 -7
  617. package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-chunk.data-model.ts +146 -146
  618. package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-page.data-model.ts +162 -162
  619. package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-document.data-model.ts +99 -99
  620. package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-code-chunk.interface.ts +68 -68
  621. package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-chunk-compare-result.interface.ts +18 -18
  622. package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-page-compare-result.interface.ts +19 -19
  623. package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-document-compare-result.interface.ts +25 -25
  624. package/src/_modules/ai/_modules/document-ai/index.ts +30 -30
  625. package/src/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.ts +189 -189
  626. package/src/_modules/ai/_modules/fdp-ai/index.ts +5 -5
  627. package/src/_modules/ai/_modules/open-ai/_collections/oai-global-settings.const.ts +9 -9
  628. package/src/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests-hu.conts.ts +82 -82
  629. package/src/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests.conts.ts +75 -75
  630. package/src/_modules/ai/_modules/open-ai/_enums/oai-gpt-message-role.enum.ts +45 -45
  631. package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-global-settings.interface.ts +7 -7
  632. package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-gpt-message.interface.ts +7 -7
  633. package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-llm-predefined-requests.interface.ts +57 -57
  634. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-chunk-data.service.ts +292 -292
  635. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-page.data-service.ts +572 -572
  636. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.spec.ts +342 -342
  637. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.ts +435 -435
  638. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.spec.ts +550 -550
  639. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.ts +630 -630
  640. package/src/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.spec.ts +332 -332
  641. package/src/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.ts +132 -132
  642. package/src/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.spec.ts +462 -462
  643. package/src/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.ts +634 -634
  644. package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.spec.ts +489 -489
  645. package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.tools.spec.ts +173 -173
  646. package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.ts +1033 -1033
  647. package/src/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.ts +157 -157
  648. package/src/_modules/ai/_modules/open-ai/index.ts +74 -74
  649. package/src/_modules/ai/_services/ai-embedding-mock.service.spec.ts +115 -115
  650. package/src/_modules/ai/_services/ai-embedding-mock.service.ts +233 -233
  651. package/src/_modules/ai/_services/ai-embedding-provider.registry.spec.ts +110 -110
  652. package/src/_modules/ai/_services/ai-embedding-provider.registry.ts +114 -114
  653. package/src/_modules/ai/_services/ai-embedding.service-base.spec.ts +98 -98
  654. package/src/_modules/ai/_services/ai-embedding.service-base.ts +48 -48
  655. package/src/_modules/ai/_services/ai-llm-chat.service-base.spec.ts +229 -229
  656. package/src/_modules/ai/_services/ai-llm-chat.service-base.ts +68 -68
  657. package/src/_modules/ai/_services/ai-llm.service-base.spec.ts +250 -250
  658. package/src/_modules/ai/_services/ai-llm.service-base.ts +519 -519
  659. package/src/_modules/ai/_services/ai-provider.service-base.spec.ts +158 -158
  660. package/src/_modules/ai/_services/ai-provider.service-base.ts +67 -67
  661. package/src/_modules/ai/_services/ai-user-key.service-base.ts +59 -59
  662. package/src/_modules/ai/_services/lmstudio-embedding.control-service.spec.ts +197 -197
  663. package/src/_modules/ai/_services/lmstudio-embedding.control-service.ts +399 -399
  664. package/src/_modules/ai/index.ts +23 -23
  665. package/src/_modules/assistant/_collections/ass-global-settings.const.ts +13 -13
  666. package/src/_modules/assistant/_collections/ass.util.spec.ts +176 -176
  667. package/src/_modules/assistant/_collections/ass.util.ts +50 -50
  668. package/src/_modules/assistant/_models/ass-global-settings.interface.ts +15 -15
  669. package/src/_modules/assistant/_services/ass-io.control-service.spec.ts +140 -140
  670. package/src/_modules/assistant/_services/ass-io.control-service.ts +74 -74
  671. package/src/_modules/assistant/_services/ass-main.control-service.spec.ts +192 -192
  672. package/src/_modules/assistant/_services/ass-main.control-service.ts +107 -107
  673. package/src/_modules/assistant/index.ts +19 -19
  674. package/src/_modules/bot/_collections/bot-default-commands.const.ts +12 -12
  675. package/src/_modules/bot/_collections/bot-global-settings.const.ts +39 -39
  676. package/src/_modules/bot/_models/bot-channel-wrapper.interface.ts +62 -62
  677. package/src/_modules/bot/_models/bot-command.interface.ts +8 -8
  678. package/src/_modules/bot/_models/bot-global-settings.interface.ts +96 -96
  679. package/src/_modules/bot/_models/bot-last-mention-date.interface.ts +6 -6
  680. package/src/_modules/bot/_models/bot-last-message-date.interface.ts +5 -5
  681. package/src/_modules/bot/_models/bot-message-wrapper.interface.ts +90 -90
  682. package/src/_modules/bot/_models/bot-user-wrapper.interface.ts +41 -41
  683. package/src/_modules/bot/_modules/discord-bot/_models/dib-platform.types.ts +9 -9
  684. package/src/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.spec.ts +431 -431
  685. package/src/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.ts +641 -641
  686. package/src/_modules/bot/_modules/discord-bot/index.ts +12 -12
  687. package/src/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.spec.ts +160 -160
  688. package/src/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.ts +55 -55
  689. package/src/_modules/bot/_modules/dynamo-bot/_models/dyb-platform.types.ts +15 -15
  690. package/src/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.spec.ts +374 -374
  691. package/src/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.ts +447 -447
  692. package/src/_modules/bot/_modules/dynamo-bot/index.ts +15 -15
  693. package/src/_modules/bot/_modules/slack-bot/_models/slb-platform.types.ts +9 -9
  694. package/src/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.spec.ts +344 -344
  695. package/src/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.ts +197 -197
  696. package/src/_modules/bot/_modules/slack-bot/index.ts +12 -12
  697. package/src/_modules/bot/_modules/teams-bot/_models/teb-platform.types.ts +9 -9
  698. package/src/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.spec.ts +345 -345
  699. package/src/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.ts +197 -197
  700. package/src/_modules/bot/_modules/teams-bot/index.ts +11 -11
  701. package/src/_modules/bot/_services/bot-commands.control-service.spec.ts +116 -116
  702. package/src/_modules/bot/_services/bot-commands.control-service.ts +158 -158
  703. package/src/_modules/bot/_services/bot-io.control-service.spec.ts +285 -285
  704. package/src/_modules/bot/_services/bot-io.control-service.ts +329 -329
  705. package/src/_modules/bot/_services/bot-main.control-service.spec.ts +208 -208
  706. package/src/_modules/bot/_services/bot-main.control-service.ts +489 -489
  707. package/src/_modules/bot/_services/bot-messaging-provider.service-base.spec.ts +349 -349
  708. package/src/_modules/bot/_services/bot-messaging-provider.service-base.ts +158 -158
  709. package/src/_modules/bot/_services/bot-routines.control-service.spec.ts +111 -111
  710. package/src/_modules/bot/_services/bot-routines.control-service.ts +78 -78
  711. package/src/_modules/bot/index.ts +37 -37
  712. package/src/_modules/custom-data/custom-data.controller.spec.ts +49 -49
  713. package/src/_modules/custom-data/custom-data.controller.ts +67 -67
  714. package/src/_modules/custom-data/custom-data.data-service.spec.ts +54 -54
  715. package/src/_modules/custom-data/custom-data.data-service.ts +21 -21
  716. package/src/_modules/custom-data/get-custom-data-routing-module.util.spec.ts +28 -28
  717. package/src/_modules/custom-data/get-custom-data-routing-module.util.ts +24 -24
  718. package/src/_modules/custom-data/index.ts +9 -9
  719. package/src/_modules/data-readers/_collections/dynts-sqlite-reader.util.spec.ts +176 -176
  720. package/src/_modules/data-readers/_collections/dynts-sqlite-reader.util.ts +203 -203
  721. package/src/_modules/data-readers/_models/interfaces/dynts-sqlite-reader.interface.ts +33 -33
  722. package/src/_modules/data-readers/index.ts +11 -11
  723. package/src/_modules/defaults/_collections/default-endpoints.util.ts +487 -487
  724. package/src/_modules/defaults/_models/default-user.data-model.ts +72 -72
  725. package/src/_modules/defaults/_services/default-auth.service.spec.ts +269 -269
  726. package/src/_modules/defaults/_services/default-auth.service.ts +177 -177
  727. package/src/_modules/defaults/_services/default-socket-events.service.spec.ts +42 -42
  728. package/src/_modules/defaults/_services/default-socket-events.service.ts +61 -61
  729. package/src/_modules/defaults/_services/default-user.data-service.spec.ts +187 -187
  730. package/src/_modules/defaults/_services/default-user.data-service.ts +98 -98
  731. package/src/_modules/defaults/index.ts +17 -17
  732. package/src/_modules/discord-assistant/_collections/dias-global-settings.const.ts +19 -19
  733. package/src/_modules/discord-assistant/_collections/dias.util.spec.ts +366 -366
  734. package/src/_modules/discord-assistant/_collections/dias.util.ts +132 -132
  735. package/src/_modules/discord-assistant/_models/dias-global-settings.interface.ts +19 -19
  736. package/src/_modules/discord-assistant/_models/dias-knowledge.data-model.ts +52 -52
  737. package/src/_modules/discord-assistant/_services/dias-chunk.data-service.ts +177 -177
  738. package/src/_modules/discord-assistant/_services/dias-io.control-service.spec.ts +108 -108
  739. package/src/_modules/discord-assistant/_services/dias-io.control-service.ts +69 -69
  740. package/src/_modules/discord-assistant/_services/dias-main.control-service.spec.ts +22 -22
  741. package/src/_modules/discord-assistant/_services/dias-main.control-service.ts +27 -27
  742. package/src/_modules/discord-assistant/_services/dias.service-base.spec.ts +195 -195
  743. package/src/_modules/discord-assistant/_services/dias.service-base.ts +76 -76
  744. package/src/_modules/discord-assistant/index.ts +38 -38
  745. package/src/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.spec.ts +34 -34
  746. package/src/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.ts +11 -11
  747. package/src/_modules/discord-assistant-voiced/index.ts +36 -36
  748. package/src/_modules/discord-bot/_collections/dibo-default-commands.const.ts +16 -16
  749. package/src/_modules/discord-bot/_collections/dibo-global-settings.conts.ts +55 -55
  750. package/src/_modules/discord-bot/_collections/dibo-operations.util.spec.ts +214 -214
  751. package/src/_modules/discord-bot/_collections/dibo-operations.util.ts +387 -387
  752. package/src/_modules/discord-bot/_models/dibo-command.interface.ts +12 -12
  753. package/src/_modules/discord-bot/_models/dibo-global-settings.interface.ts +98 -98
  754. package/src/_modules/discord-bot/_models/dibo-last-mention-date.inteface.ts +7 -7
  755. package/src/_modules/discord-bot/_models/dibo-last-message-date.interface.ts +6 -6
  756. package/src/_modules/discord-bot/_services/dibo-commands.control-service.spec.ts +154 -154
  757. package/src/_modules/discord-bot/_services/dibo-commands.control-service.ts +153 -153
  758. package/src/_modules/discord-bot/_services/dibo-io.control-service.spec.ts +264 -264
  759. package/src/_modules/discord-bot/_services/dibo-io.control-service.ts +306 -306
  760. package/src/_modules/discord-bot/_services/dibo-main.control-service.spec.ts +408 -408
  761. package/src/_modules/discord-bot/_services/dibo-main.control-service.ts +487 -487
  762. package/src/_modules/discord-bot/_services/dibo-routines.control-service.spec.ts +105 -105
  763. package/src/_modules/discord-bot/_services/dibo-routines.control-service.ts +97 -97
  764. package/src/_modules/discord-bot/index.ts +36 -36
  765. package/src/_modules/local-vector-search/_enums/lvs-search-mode.enum.ts +35 -35
  766. package/src/_modules/local-vector-search/_models/data-models/lvs-vector-persist.data-model.ts +60 -60
  767. package/src/_modules/local-vector-search/_models/lvs-search-result.interface.ts +17 -17
  768. package/src/_modules/local-vector-search/_services/lvs-bm25.util.spec.ts +159 -159
  769. package/src/_modules/local-vector-search/_services/lvs-bm25.util.ts +206 -206
  770. package/src/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.spec.ts +418 -418
  771. package/src/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.ts +276 -276
  772. package/src/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.spec.ts +480 -480
  773. package/src/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.ts +416 -416
  774. package/src/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.spec.ts +198 -198
  775. package/src/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.ts +150 -150
  776. package/src/_modules/local-vector-search/_services/lvs-vector-persist.data-service.spec.ts +167 -167
  777. package/src/_modules/local-vector-search/_services/lvs-vector-persist.data-service.ts +108 -108
  778. package/src/_modules/local-vector-search/_services/lvs-vector-pool.control-service.spec.ts +455 -393
  779. package/src/_modules/local-vector-search/_services/lvs-vector-pool.control-service.ts +239 -220
  780. package/src/_modules/local-vector-search/index.ts +16 -16
  781. package/src/_modules/logs/_models/file-log-entry.interface.ts +13 -13
  782. package/src/_modules/logs/_models/file-log-read-result.interface.ts +37 -37
  783. package/src/_modules/logs/file-log.service.spec.ts +341 -341
  784. package/src/_modules/logs/file-log.service.ts +466 -466
  785. package/src/_modules/logs/file-logs.controller.spec.ts +245 -245
  786. package/src/_modules/logs/file-logs.controller.ts +165 -165
  787. package/src/_modules/logs/get-file-logs-routing-module.util.ts +51 -51
  788. package/src/_modules/logs/get-logs-routing-module.util.ts +36 -36
  789. package/src/_modules/logs/index.ts +11 -11
  790. package/src/_modules/logs/log-buffer.service.ts +101 -101
  791. package/src/_modules/logs/logs.controller.ts +109 -109
  792. package/src/_modules/logs/logs.service.ts +100 -100
  793. package/src/_modules/mcp/_models/interfaces/dynts-mcp.interface.ts +111 -111
  794. package/src/_modules/mcp/_services/dynts-mcp-server.service-base.spec.ts +151 -151
  795. package/src/_modules/mcp/_services/dynts-mcp-server.service-base.ts +125 -125
  796. package/src/_modules/mcp/_services/dynts-mcp.adapter.ts +168 -168
  797. package/src/_modules/mcp/index.ts +13 -13
  798. package/src/_modules/messaging/README.md +354 -354
  799. package/src/_modules/messaging/_collections/get-messaging-routing-module.util.ts +26 -26
  800. package/src/_modules/messaging/_collections/msg-global-settings.const.ts +22 -22
  801. package/src/_modules/messaging/_collections/msg.util.spec.ts +226 -226
  802. package/src/_modules/messaging/_collections/msg.util.ts +83 -83
  803. package/src/_modules/messaging/_models/msg-global-settings.interface.ts +37 -37
  804. package/src/_modules/messaging/_services/msg-conversation.data-service.ts +146 -146
  805. package/src/_modules/messaging/_services/msg-events.service.spec.ts +219 -219
  806. package/src/_modules/messaging/_services/msg-events.service.ts +267 -267
  807. package/src/_modules/messaging/_services/msg-integration.control-service.ts +179 -179
  808. package/src/_modules/messaging/_services/msg-main.control-service.spec.ts +147 -147
  809. package/src/_modules/messaging/_services/msg-main.control-service.ts +571 -571
  810. package/src/_modules/messaging/_services/msg-message.data-service.ts +129 -129
  811. package/src/_modules/messaging/_services/msg.controller.spec.ts +201 -201
  812. package/src/_modules/messaging/_services/msg.controller.ts +370 -370
  813. package/src/_modules/messaging/index.ts +30 -30
  814. package/src/_modules/mock/app-extended-server.mock.ts +201 -201
  815. package/src/_modules/mock/app-integration-test.mock.ts +51 -51
  816. package/src/_modules/mock/app-params.mock.spec.ts +21 -21
  817. package/src/_modules/mock/app-params.mock.ts +9 -9
  818. package/src/_modules/mock/app-server.mock.ts +188 -188
  819. package/src/_modules/mock/auth-service.mock.spec.ts +47 -47
  820. package/src/_modules/mock/auth-service.mock.ts +28 -28
  821. package/src/_modules/mock/controller.mock.spec.ts +26 -26
  822. package/src/_modules/mock/controller.mock.ts +16 -16
  823. package/src/_modules/mock/data-model.mock.spec.ts +111 -111
  824. package/src/_modules/mock/data-model.mock.ts +82 -82
  825. package/src/_modules/mock/email-service-collection.mock.spec.ts +24 -24
  826. package/src/_modules/mock/email-service-collection.mock.ts +15 -15
  827. package/src/_modules/mock/email-service.mock.spec.ts +17 -17
  828. package/src/_modules/mock/email-service.mock.ts +20 -20
  829. package/src/_modules/mock/email-template.mock.html +14 -14
  830. package/src/_modules/mock/endpoint.mock.ts +91 -91
  831. package/src/_modules/mock/socket-client.mock.spec.ts +40 -40
  832. package/src/_modules/mock/socket-client.mock.ts +45 -45
  833. package/src/_modules/mock/socket-server.mock.spec.ts +44 -44
  834. package/src/_modules/mock/socket-server.mock.ts +46 -46
  835. package/src/_modules/oauth2/_routes/oauth2.controller.spec.ts +107 -107
  836. package/src/_modules/oauth2/_routes/oauth2.controller.ts +98 -98
  837. package/src/_modules/oauth2/_services/oauth2.auth-service.spec.ts +254 -254
  838. package/src/_modules/oauth2/_services/oauth2.auth-service.ts +232 -232
  839. package/src/_modules/oauth2/_services/oauth2.control-service.spec.ts +585 -585
  840. package/src/_modules/oauth2/_services/oauth2.control-service.ts +653 -653
  841. package/src/_modules/oauth2/index.ts +17 -17
  842. package/src/_modules/rate-limit/_models/rate-limit-config.interface.ts +69 -69
  843. package/src/_modules/rate-limit/_models/rate-limit-policy.interface.ts +16 -16
  844. package/src/_modules/rate-limit/index.ts +3 -3
  845. package/src/_modules/rate-limit/rate-limit.middleware.spec.ts +264 -264
  846. package/src/_modules/rate-limit/rate-limit.middleware.ts +343 -343
  847. package/src/_modules/scoped-config/_enums/dynts-scoped-config-level.enum.ts +22 -22
  848. package/src/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.ts +82 -82
  849. package/src/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.ts +107 -107
  850. package/src/_modules/scoped-config/_services/dynts-scoped-config.control-service.spec.ts +312 -312
  851. package/src/_modules/scoped-config/_services/dynts-scoped-config.control-service.ts +311 -311
  852. package/src/_modules/scoped-config/_services/dynts-scoped-config.data-service.spec.ts +123 -123
  853. package/src/_modules/scoped-config/_services/dynts-scoped-config.data-service.ts +108 -108
  854. package/src/_modules/scoped-config/index.ts +17 -17
  855. package/src/_modules/server/errors/errors.control-service.spec.ts +246 -246
  856. package/src/_modules/server/errors/errors.control-service.ts +100 -100
  857. package/src/_modules/server/errors/errors.controller.spec.ts +249 -249
  858. package/src/_modules/server/errors/errors.controller.ts +489 -489
  859. package/src/_modules/server/errors/errors.data-service.spec.ts +480 -480
  860. package/src/_modules/server/errors/errors.data-service.ts +816 -816
  861. package/src/_modules/server/index.ts +30 -30
  862. package/src/_modules/server/server-status/server-status-snapshot.control-service.spec.ts +70 -70
  863. package/src/_modules/server/server-status/server-status-snapshot.control-service.ts +17 -17
  864. package/src/_modules/server/server-status/server-status-snapshot.data-service.spec.ts +77 -77
  865. package/src/_modules/server/server-status/server-status-snapshot.data-service.ts +37 -37
  866. package/src/_modules/server/server-status/server-status.control-service.spec.ts +584 -584
  867. package/src/_modules/server/server-status/server-status.control-service.ts +396 -396
  868. package/src/_modules/server/server-status/server-status.controller.spec.ts +248 -248
  869. package/src/_modules/server/server-status/server-status.controller.ts +253 -253
  870. package/src/_modules/socket/_enums/socket-security.enum.ts +11 -11
  871. package/src/_modules/socket/_models/socket-client-service-params.control-model.spec.ts +32 -32
  872. package/src/_modules/socket/_models/socket-client-service-params.control-model.ts +22 -22
  873. package/src/_modules/socket/_models/socket-presence.control-model.spec.ts +164 -164
  874. package/src/_modules/socket/_models/socket-presence.control-model.ts +210 -210
  875. package/src/_modules/socket/_models/socket-server-service-params.control-model.spec.ts +46 -46
  876. package/src/_modules/socket/_models/socket-server-service-params.control-model.ts +22 -22
  877. package/src/_modules/socket/_services/socket-client.service.spec.ts +15 -15
  878. package/src/_modules/socket/_services/socket-client.service.ts +260 -260
  879. package/src/_modules/socket/_services/socket-server.service.spec.ts +11 -11
  880. package/src/_modules/socket/_services/socket-server.service.ts +1068 -1068
  881. package/src/_modules/socket/app-extended.integration.spec.ts +85 -85
  882. package/src/_modules/socket/app-extended.server.ts +630 -630
  883. package/src/_modules/socket/index.ts +42 -42
  884. package/src/_modules/test/get-test-routing-module.util.spec.ts +28 -28
  885. package/src/_modules/test/get-test-routing-module.util.ts +23 -23
  886. package/src/_modules/test/index.ts +11 -11
  887. package/src/_modules/test/test.controller.spec.ts +72 -72
  888. package/src/_modules/test/test.controller.ts +115 -115
  889. package/src/_modules/usage/get-usage-routing-module.util.ts +22 -22
  890. package/src/_modules/usage/index.ts +15 -15
  891. package/src/_modules/usage/usage.controller.spec.ts +81 -81
  892. package/src/_modules/usage/usage.controller.ts +126 -126
  893. package/src/_modules/usage/usage.data-service.spec.ts +332 -332
  894. package/src/_modules/usage/usage.data-service.ts +185 -185
  895. package/src/_services/base/api.service-base.spec.ts +125 -125
  896. package/src/_services/base/api.service-base.ts +74 -74
  897. package/src/_services/base/archive-data.service.spec.ts +196 -196
  898. package/src/_services/base/archive-data.service.ts +216 -216
  899. package/src/_services/base/data.service.spec.ts +674 -674
  900. package/src/_services/base/data.service.ts +2719 -2719
  901. package/src/_services/base/db.service.spec.ts +73 -73
  902. package/src/_services/base/db.service.ts +1575 -1575
  903. package/src/_services/base/singleton.service-base.spec.ts +28 -28
  904. package/src/_services/base/singleton.service-base.ts +24 -24
  905. package/src/_services/base/singleton.service.spec.ts +114 -114
  906. package/src/_services/base/singleton.service.ts +38 -38
  907. package/src/_services/core/api.service.spec.ts +140 -140
  908. package/src/_services/core/api.service.ts +607 -607
  909. package/src/_services/core/auth.service.spec.ts +159 -159
  910. package/src/_services/core/auth.service.ts +174 -174
  911. package/src/_services/core/email.service.spec.ts +85 -85
  912. package/src/_services/core/email.service.ts +742 -742
  913. package/src/_services/core/global.service.spec.ts +292 -292
  914. package/src/_services/core/global.service.ts +475 -475
  915. package/src/_services/core/memory-guard.service.spec.ts +165 -165
  916. package/src/_services/core/memory-guard.service.ts +281 -281
  917. package/src/_services/core/service-collection.service.spec.ts +46 -46
  918. package/src/_services/core/service-collection.service.ts +6 -6
  919. package/src/_services/route/controller.service.spec.ts +53 -53
  920. package/src/_services/route/controller.service.ts +148 -148
  921. package/src/_services/route/routing-module.service.spec.ts +98 -98
  922. package/src/_services/route/routing-module.service.ts +330 -330
  923. package/src/_services/server/app.server.ts +1747 -1747
  924. package/src/_services/shared.static-service.spec.ts +99 -99
  925. package/src/_services/shared.static-service.ts +78 -78
  926. package/src/index.ts +96 -96
  927. package/tsconfig.app.json +12 -12
  928. package/tsconfig.json +42 -42
@@ -1,399 +1,399 @@
1
- import { CreateEmbeddingResponse } from 'openai/resources';
2
-
3
- import { DyFM_Error, DyFM_Log } from '@futdevpro/fsm-dynamo';
4
- import { DyFM_AI_Provider, DyFM_AI_ProviderCapabilities, DyFM_AI_Config } from '@futdevpro/fsm-dynamo/ai';
5
- import { DyFM_DAI_EmbeddingInfo } from '@futdevpro/fsm-dynamo/ai/document-ai';
6
-
7
- import { DyNTS_AI_CostEventCallback } from '../_models/interfaces/dynts-ai-cost-event-callback.interface';
8
- import { DyNTS_global_settings } from '../../../_collections/global-settings.const';
9
- import { DyNTS_AI_Embedding_ServiceBase } from './ai-embedding.service-base';
10
-
11
- /**
12
- * Az LM Studio embedding control-service config-set-je. A `baseUrl` az OpenAI-kompatibilis
13
- * lokális endpoint (pl. `http://localhost:1234/v1`), az `apiKey` opcionális (LM Studio default-
14
- * ban nem kér Bearer-t). Az `onCostEvent` a per-call cost-event sink (FR-002, BFR-AM-007).
15
- */
16
- export interface DyNTS_LMStudio_Embedding_Settings {
17
- /** OpenAI-kompatibilis lokális embedding-endpoint base URL-je (pl. `http://localhost:1234/v1`). */
18
- baseUrl: string;
19
- /** Opcionális Bearer token (LM Studio default-ban nem kér). */
20
- apiKey?: string;
21
- /** Per-call cost-event callback (FR-002 / BFR-AM-007). Non-breaking: ha undefined, nincs emit. */
22
- onCostEvent?: DyNTS_AI_CostEventCallback;
23
- }
24
-
25
- /**
26
- * `DyNTS_LMStudio_Embedding_ControlService` (BFR-AM-002) — OpenAI-kompatibilis **lokális** embedding
27
- * adapter `fetch`-en (Node 20 global `fetch`, így a Dynamo NEM hoz be provider-specifikus SDK-t a
28
- * lokális path-hoz). A FAM `FAM_LMStudio_EmbeddingProvider` workaround-ját emeli bedrock-szintre.
29
- *
30
- * A `baseUrl` + `modelId` config-ot a constructor-on kapja (mint a `DyNTS_OAI_Embedding_ControlService`
31
- * a `DyFM_OAI_Settings`-et). A `${baseUrl}/embeddings` POST-ra a `{ model, input }` body-t küldi, a
32
- * `data[].embedding` sorrendje == a `texts` sorrendje.
33
- *
34
- * **Cost-event (BFR-AM-007):** minden sikeres call után `emitCostEvent`-tel jelez (callType
35
- * `embedding-single` / `embedding-batch`, provider `'lm-studio'`). Lokális futás → nincs USD-költség,
36
- * a token-fogyasztás a `usage`-ből (ha az endpoint adja), különben becsült (4 char ≈ 1 token).
37
- */
38
- export class DyNTS_LMStudio_Embedding_ControlService extends DyNTS_AI_Embedding_ServiceBase {
39
-
40
- /** A provider-azonosító a `LocalAI` enum-érték (LM Studio = lokális OpenAI-kompatibilis endpoint). */
41
- readonly aiProvider: DyFM_AI_Provider = DyFM_AI_Provider.LocalAI;
42
-
43
- /** A cost-event provider-string (a `DyNTS_AI_CostEvent.provider` szabad-string mezőjéhez). */
44
- protected readonly costProvider: string = 'lm-studio';
45
-
46
- /** LM Studio (OpenAI-kompatibilis lokális) capability-k: csak embedding-et igénylünk innen. */
47
- readonly capabilities: DyFM_AI_ProviderCapabilities = {
48
- chat: false,
49
- embeddings: true,
50
- imageGeneration: false,
51
- vision: false,
52
- audioGeneration: false,
53
- audioAnalysis: false,
54
- functionCalling: false,
55
- streaming: false,
56
- batchOperations: true,
57
- supportedModelTypes: [],
58
- };
59
-
60
- /** Az OpenAI-kompatibilis endpoint base URL-je (trailing slash-mentes). */
61
- protected baseUrl: string;
62
-
63
- /** Opcionális Bearer token. */
64
- protected apiKey?: string;
65
-
66
- /**
67
- * @param set baseUrl + opc. apiKey + opc. onCostEvent. A `baseUrl` kötelező — ha üres, a
68
- * `DyNTS-LMS-ECS-CFG` hibát dobjuk (lokális endpoint nincs konfigurálva).
69
- */
70
- constructor(set: DyNTS_LMStudio_Embedding_Settings) {
71
- super();
72
-
73
- if (!set?.baseUrl?.trim().length) {
74
- throw new DyFM_Error({
75
- ...this.getDefaultErrorSettings(
76
- 'constructor',
77
- new Error('LM Studio baseUrl is required (OpenAI-compatible local endpoint)'),
78
- 'DyNTS_LMStudio_Embedding_ControlService',
79
- ),
80
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-LMS-ECS-CFG`,
81
- });
82
- }
83
- this.baseUrl = this.trimTrailingSlashes(set.baseUrl.trim());
84
- this.apiKey = set.apiKey;
85
-
86
- if (set.onCostEvent) {
87
- this.onCostEvent = set.onCostEvent;
88
- }
89
- }
90
-
91
- /**
92
- * Az LM Studio client-et nem SDK-val, hanem `fetch`-csel hívjuk; a `setup` a `baseUrl` (és
93
- * opcionálisan az `apiKey`) átkonfigurálását teszi lehetővé (a base-szerződés egységessége miatt).
94
- */
95
- setup(config: DyFM_AI_Config): void {
96
- if (config?.baseURL) {
97
- this.baseUrl = this.trimTrailingSlashes(config.baseURL);
98
- }
99
-
100
- if (config?.apiKey) {
101
- this.apiKey = config.apiKey;
102
- }
103
- }
104
-
105
- /**
106
- * Egy-szöveg embedding (a `createEmbeddings` egyelemű alakja). `fullResponse=true` esetén a
107
- * teljes (OpenAI-alakú) válasz-objektumot adja vissza, különben a tiszta `number[]`-t.
108
- */
109
- async createEmbedding(
110
- set: {
111
- text: string;
112
- model: string;
113
- fullResponse?: boolean;
114
- issuer: string;
115
- }
116
- ): Promise<number[] | CreateEmbeddingResponse> {
117
- try {
118
- if (!set.text) {
119
- throw new DyFM_Error({
120
- ...this.getDefaultErrorSettings('createEmbedding', new Error('text is required'), set.issuer),
121
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-LMS-ECS-CE1`,
122
- });
123
- }
124
-
125
- const start: number = Date.now();
126
- const response: CreateEmbeddingResponse = await this.callEmbeddingsEndpoint(set.model, set.text, set.issuer);
127
- const durationMs: number = Date.now() - start;
128
-
129
- this.emitLmStudioCostEvent('embedding-single', set.model, [ set.text ], response, durationMs, set.issuer);
130
-
131
- if (set.fullResponse) {
132
- return response;
133
- }
134
-
135
- return response.data[0].embedding;
136
- } catch (error) {
137
- if (error instanceof DyFM_Error) {
138
- throw error;
139
- }
140
-
141
- throw new DyFM_Error({
142
- ...this.getDefaultErrorSettings('createEmbedding', error, set.issuer),
143
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-LMS-ECS-CE0`,
144
- });
145
- }
146
- }
147
-
148
- /**
149
- * Batch-embedding az OpenAI-kompatibilis `/embeddings` végpontra. A `texts` sorrendje == a
150
- * visszaadott `number[][]` sorrendje. `fullResponse=true` esetén a teljes válasz-objektum.
151
- */
152
- async createEmbeddings(
153
- set: {
154
- texts: string[];
155
- model: string;
156
- fullResponse?: boolean;
157
- issuer: string;
158
- }
159
- ): Promise<number[][] | CreateEmbeddingResponse> {
160
- try {
161
- if (!set.texts) {
162
- throw new DyFM_Error({
163
- ...this.getDefaultErrorSettings('createEmbeddings', new Error('texts is required'), set.issuer),
164
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-LMS-ECS-CES1`,
165
- });
166
- }
167
-
168
- const start: number = Date.now();
169
- const response: CreateEmbeddingResponse = await this.callEmbeddingsEndpoint(set.model, set.texts, set.issuer);
170
- const durationMs: number = Date.now() - start;
171
-
172
- this.emitLmStudioCostEvent('embedding-batch', set.model, set.texts, response, durationMs, set.issuer);
173
-
174
- if (set.fullResponse) {
175
- return response;
176
- }
177
-
178
- return response.data.map((item) => item.embedding);
179
- } catch (error) {
180
- if (error instanceof DyFM_Error) {
181
- throw error;
182
- }
183
-
184
- throw new DyFM_Error({
185
- ...this.getDefaultErrorSettings('createEmbeddings', error, set.issuer),
186
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-LMS-ECS-CES0`,
187
- });
188
- }
189
- }
190
-
191
- /**
192
- * Embedding model-info (a `DyFM_DAI_EmbeddingInfo` szerződés szerint). A provider `LocalAI`, a
193
- * model a megadott azonosító (a lokális endpoint natív dimenzióját nem ismerjük előre).
194
- */
195
- getEmbeddingInfo(model: string): DyFM_DAI_EmbeddingInfo {
196
- return {
197
- provider: DyFM_AI_Provider.LocalAI,
198
- model: model,
199
- };
200
- }
201
-
202
- /**
203
- * Provider-elérhetőség: egy minimál embedding-próba (rövid token). Ha a hívás dob (endpoint down /
204
- * model hiányzik), `false`. Soha nem propagál hibát (try/catch → false).
205
- */
206
- async testConnection(issuer: string): Promise<boolean> {
207
- try {
208
- const vectors: number[][] | CreateEmbeddingResponse = await this.createEmbeddings({
209
- texts: [ 'ping' ],
210
- model: this.defaultProbeModel(),
211
- fullResponse: false,
212
- issuer: issuer,
213
- });
214
-
215
- return Array.isArray(vectors) && vectors.length === 1 && vectors[0].length > 0;
216
- } catch (error) {
217
- DyFM_Log.error('DyNTS_LMStudio_Embedding_ControlService', 'testConnection', 'Connection test failed', {
218
- error: error,
219
- issuer: issuer,
220
- });
221
-
222
- return false;
223
- }
224
- }
225
-
226
- // =========================================================================
227
- // belső: fetch + parse + cost-event
228
- // =========================================================================
229
-
230
- /**
231
- * Az OpenAI-kompatibilis `/embeddings` POST-hívás `fetch`-csel. A `input` lehet egyetlen string
232
- * vagy string-tömb (mindkettőt az OpenAI-spec megengedi). A választ `CreateEmbeddingResponse`-alakra
233
- * normalizáljuk (a `data[].embedding`-eket kivonatoljuk). HTTP-/parse-hiba deskriptív üzenettel dobódik.
234
- */
235
- protected async callEmbeddingsEndpoint(
236
- model: string,
237
- input: string | string[],
238
- issuer: string,
239
- ): Promise<CreateEmbeddingResponse> {
240
- const url: string = `${this.baseUrl}/embeddings`;
241
- const headers: { [key: string]: string } = { 'Content-Type': 'application/json' };
242
-
243
- if (this.apiKey && this.apiKey.trim().length) {
244
- headers.Authorization = `Bearer ${this.apiKey.trim()}`;
245
- }
246
-
247
- const response: Response = await fetch(url, {
248
- method: 'POST',
249
- headers: headers,
250
- body: JSON.stringify({ model: model, input: input }),
251
- });
252
- const rawText: string = await response.text();
253
-
254
- if (!response.ok) {
255
- throw new Error(
256
- `LM Studio (OpenAI-compatible) embeddings HTTP ${response.status} | url=${url} | `
257
- + `model=${model} | body=${this.snapshot(rawText)} | issuer=${issuer}`,
258
- );
259
- }
260
-
261
- let parsed: unknown;
262
-
263
- try {
264
- parsed = JSON.parse(rawText);
265
- } catch {
266
- throw new Error(
267
- `LM Studio embeddings: non-JSON response | url=${url} | model=${model} | body=${this.snapshot(rawText)}`,
268
- );
269
- }
270
-
271
- const expectedCount: number = Array.isArray(input) ? input.length : 1;
272
-
273
- return this.normalizeResponse(parsed, expectedCount, url, model);
274
- }
275
-
276
- /**
277
- * A nyers (OpenAI-kompatibilis) választ `CreateEmbeddingResponse`-alakra normalizálja: a `data[]`-ból
278
- * a `embedding` tömböket emeli ki (csak véges number-eket), a darabszámot ellenőrzi (1:1 a `texts`-szel),
279
- * és átveszi a `usage`-t ha van (a cost-event token-számához). Hibás/hiányzó mező → deskriptív hiba.
280
- */
281
- protected normalizeResponse(json: unknown, expectedCount: number, url: string, modelId: string): CreateEmbeddingResponse {
282
- if (json === null || typeof json !== 'object' || Array.isArray(json)) {
283
- throw new Error(`LM Studio embeddings: invalid response object | url=${url} | model=${modelId}`);
284
- }
285
- const dataRaw: unknown = Reflect.get(json, 'data');
286
-
287
- if (!Array.isArray(dataRaw)) {
288
- throw new Error(`LM Studio embeddings: missing data array | url=${url} | model=${modelId}`);
289
- }
290
-
291
- const data: CreateEmbeddingResponse['data'] = [];
292
- let index: number = 0;
293
-
294
- for (const item of dataRaw) {
295
- if (item === null || typeof item !== 'object' || Array.isArray(item)) {
296
- continue;
297
- }
298
- const embRaw: unknown = Reflect.get(item, 'embedding');
299
-
300
- if (!Array.isArray(embRaw)) {
301
- continue;
302
- }
303
- const vec: number[] = embRaw.filter((x: unknown): x is number => typeof x === 'number' && Number.isFinite(x));
304
-
305
- if (vec.length) {
306
- data.push({ object: 'embedding', embedding: vec, index: index });
307
- index++;
308
- }
309
- }
310
-
311
- if (data.length !== expectedCount) {
312
- throw new Error(
313
- `LM Studio embeddings: expected ${expectedCount} vectors, got ${data.length} | url=${url} | model=${modelId}`,
314
- );
315
- }
316
-
317
- const usageRaw: unknown = Reflect.get(json, 'usage');
318
- const promptTokens: number = this.readNumber(usageRaw, 'prompt_tokens');
319
- const totalTokens: number = this.readNumber(usageRaw, 'total_tokens');
320
-
321
- return {
322
- object: 'list',
323
- model: modelId,
324
- data: data,
325
- usage: {
326
- prompt_tokens: promptTokens,
327
- total_tokens: totalTokens || promptTokens,
328
- },
329
- };
330
- }
331
-
332
- /**
333
- * Cost-event emit (BFR-AM-007). A token a `usage`-ből (ha az endpoint adta), különben becsült
334
- * (4 char ≈ 1 token, defenzív lokális heurisztika). A provider mindig `'lm-studio'` string.
335
- */
336
- protected emitLmStudioCostEvent(
337
- callType: 'embedding-single' | 'embedding-batch',
338
- model: string,
339
- texts: string[],
340
- response: CreateEmbeddingResponse,
341
- durationMs: number,
342
- issuer: string,
343
- ): void {
344
- const reportedInput: number = response.usage?.prompt_tokens ?? 0;
345
- const input: number = reportedInput || this.estimateTokens(texts);
346
- const total: number = response.usage?.total_tokens || input;
347
-
348
- this.emitCostEvent({
349
- callType: callType,
350
- provider: this.costProvider,
351
- model: model,
352
- tokensUsed: {
353
- input: input,
354
- total: total,
355
- },
356
- durationMs: durationMs,
357
- issuer: issuer,
358
- timestamp: new Date(),
359
- });
360
- }
361
-
362
- /** Becsült token-szám lokális endpoint-hoz (ha nincs `usage`): 4 char ≈ 1 token. */
363
- protected estimateTokens(texts: string[]): number {
364
- let chars: number = 0;
365
-
366
- for (const text of texts) {
367
- chars += (text ?? '').length;
368
- }
369
-
370
- return Math.max(1, Math.ceil(chars / 4));
371
- }
372
-
373
- /** A `testConnection` próba-modellje (env-override-olható, default a FAM-mintára). */
374
- protected defaultProbeModel(): string {
375
- return process.env.LMSTUDIO_EMBEDDING_MODEL || 'nomic-embed-text-v1.5';
376
- }
377
-
378
- /** Trailing `/`-ek levágása (kettős slash elkerülése a `/embeddings` join-nál). */
379
- protected trimTrailingSlashes(value: string): string {
380
- return value.replace(/\/+$/, '');
381
- }
382
-
383
- /** Rövid, biztonságos válasz-snapshot a hiba-üzenethez (max 300 char). */
384
- protected snapshot(value: string): string {
385
- const trimmed: string = (value ?? '').slice(0, 300);
386
-
387
- return trimmed.length === 300 ? `${trimmed}…` : trimmed;
388
- }
389
-
390
- /** Egy number mező típusbiztos kiolvasása egy ismeretlen objektumból (hiány → 0). */
391
- protected readNumber(obj: unknown, key: string): number {
392
- if (obj === null || typeof obj !== 'object') {
393
- return 0;
394
- }
395
- const value: unknown = Reflect.get(obj, key);
396
-
397
- return typeof value === 'number' && Number.isFinite(value) ? value : 0;
398
- }
399
- }
1
+ import { CreateEmbeddingResponse } from 'openai/resources';
2
+
3
+ import { DyFM_Error, DyFM_Log } from '@futdevpro/fsm-dynamo';
4
+ import { DyFM_AI_Provider, DyFM_AI_ProviderCapabilities, DyFM_AI_Config } from '@futdevpro/fsm-dynamo/ai';
5
+ import { DyFM_DAI_EmbeddingInfo } from '@futdevpro/fsm-dynamo/ai/document-ai';
6
+
7
+ import { DyNTS_AI_CostEventCallback } from '../_models/interfaces/dynts-ai-cost-event-callback.interface';
8
+ import { DyNTS_global_settings } from '../../../_collections/global-settings.const';
9
+ import { DyNTS_AI_Embedding_ServiceBase } from './ai-embedding.service-base';
10
+
11
+ /**
12
+ * Az LM Studio embedding control-service config-set-je. A `baseUrl` az OpenAI-kompatibilis
13
+ * lokális endpoint (pl. `http://localhost:1234/v1`), az `apiKey` opcionális (LM Studio default-
14
+ * ban nem kér Bearer-t). Az `onCostEvent` a per-call cost-event sink (FR-002, BFR-AM-007).
15
+ */
16
+ export interface DyNTS_LMStudio_Embedding_Settings {
17
+ /** OpenAI-kompatibilis lokális embedding-endpoint base URL-je (pl. `http://localhost:1234/v1`). */
18
+ baseUrl: string;
19
+ /** Opcionális Bearer token (LM Studio default-ban nem kér). */
20
+ apiKey?: string;
21
+ /** Per-call cost-event callback (FR-002 / BFR-AM-007). Non-breaking: ha undefined, nincs emit. */
22
+ onCostEvent?: DyNTS_AI_CostEventCallback;
23
+ }
24
+
25
+ /**
26
+ * `DyNTS_LMStudio_Embedding_ControlService` (BFR-AM-002) — OpenAI-kompatibilis **lokális** embedding
27
+ * adapter `fetch`-en (Node 20 global `fetch`, így a Dynamo NEM hoz be provider-specifikus SDK-t a
28
+ * lokális path-hoz). A FAM `FAM_LMStudio_EmbeddingProvider` workaround-ját emeli bedrock-szintre.
29
+ *
30
+ * A `baseUrl` + `modelId` config-ot a constructor-on kapja (mint a `DyNTS_OAI_Embedding_ControlService`
31
+ * a `DyFM_OAI_Settings`-et). A `${baseUrl}/embeddings` POST-ra a `{ model, input }` body-t küldi, a
32
+ * `data[].embedding` sorrendje == a `texts` sorrendje.
33
+ *
34
+ * **Cost-event (BFR-AM-007):** minden sikeres call után `emitCostEvent`-tel jelez (callType
35
+ * `embedding-single` / `embedding-batch`, provider `'lm-studio'`). Lokális futás → nincs USD-költség,
36
+ * a token-fogyasztás a `usage`-ből (ha az endpoint adja), különben becsült (4 char ≈ 1 token).
37
+ */
38
+ export class DyNTS_LMStudio_Embedding_ControlService extends DyNTS_AI_Embedding_ServiceBase {
39
+
40
+ /** A provider-azonosító a `LocalAI` enum-érték (LM Studio = lokális OpenAI-kompatibilis endpoint). */
41
+ readonly aiProvider: DyFM_AI_Provider = DyFM_AI_Provider.LocalAI;
42
+
43
+ /** A cost-event provider-string (a `DyNTS_AI_CostEvent.provider` szabad-string mezőjéhez). */
44
+ protected readonly costProvider: string = 'lm-studio';
45
+
46
+ /** LM Studio (OpenAI-kompatibilis lokális) capability-k: csak embedding-et igénylünk innen. */
47
+ readonly capabilities: DyFM_AI_ProviderCapabilities = {
48
+ chat: false,
49
+ embeddings: true,
50
+ imageGeneration: false,
51
+ vision: false,
52
+ audioGeneration: false,
53
+ audioAnalysis: false,
54
+ functionCalling: false,
55
+ streaming: false,
56
+ batchOperations: true,
57
+ supportedModelTypes: [],
58
+ };
59
+
60
+ /** Az OpenAI-kompatibilis endpoint base URL-je (trailing slash-mentes). */
61
+ protected baseUrl: string;
62
+
63
+ /** Opcionális Bearer token. */
64
+ protected apiKey?: string;
65
+
66
+ /**
67
+ * @param set baseUrl + opc. apiKey + opc. onCostEvent. A `baseUrl` kötelező — ha üres, a
68
+ * `DyNTS-LMS-ECS-CFG` hibát dobjuk (lokális endpoint nincs konfigurálva).
69
+ */
70
+ constructor(set: DyNTS_LMStudio_Embedding_Settings) {
71
+ super();
72
+
73
+ if (!set?.baseUrl?.trim().length) {
74
+ throw new DyFM_Error({
75
+ ...this.getDefaultErrorSettings(
76
+ 'constructor',
77
+ new Error('LM Studio baseUrl is required (OpenAI-compatible local endpoint)'),
78
+ 'DyNTS_LMStudio_Embedding_ControlService',
79
+ ),
80
+ errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-LMS-ECS-CFG`,
81
+ });
82
+ }
83
+ this.baseUrl = this.trimTrailingSlashes(set.baseUrl.trim());
84
+ this.apiKey = set.apiKey;
85
+
86
+ if (set.onCostEvent) {
87
+ this.onCostEvent = set.onCostEvent;
88
+ }
89
+ }
90
+
91
+ /**
92
+ * Az LM Studio client-et nem SDK-val, hanem `fetch`-csel hívjuk; a `setup` a `baseUrl` (és
93
+ * opcionálisan az `apiKey`) átkonfigurálását teszi lehetővé (a base-szerződés egységessége miatt).
94
+ */
95
+ setup(config: DyFM_AI_Config): void {
96
+ if (config?.baseURL) {
97
+ this.baseUrl = this.trimTrailingSlashes(config.baseURL);
98
+ }
99
+
100
+ if (config?.apiKey) {
101
+ this.apiKey = config.apiKey;
102
+ }
103
+ }
104
+
105
+ /**
106
+ * Egy-szöveg embedding (a `createEmbeddings` egyelemű alakja). `fullResponse=true` esetén a
107
+ * teljes (OpenAI-alakú) válasz-objektumot adja vissza, különben a tiszta `number[]`-t.
108
+ */
109
+ async createEmbedding(
110
+ set: {
111
+ text: string;
112
+ model: string;
113
+ fullResponse?: boolean;
114
+ issuer: string;
115
+ }
116
+ ): Promise<number[] | CreateEmbeddingResponse> {
117
+ try {
118
+ if (!set.text) {
119
+ throw new DyFM_Error({
120
+ ...this.getDefaultErrorSettings('createEmbedding', new Error('text is required'), set.issuer),
121
+ errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-LMS-ECS-CE1`,
122
+ });
123
+ }
124
+
125
+ const start: number = Date.now();
126
+ const response: CreateEmbeddingResponse = await this.callEmbeddingsEndpoint(set.model, set.text, set.issuer);
127
+ const durationMs: number = Date.now() - start;
128
+
129
+ this.emitLmStudioCostEvent('embedding-single', set.model, [ set.text ], response, durationMs, set.issuer);
130
+
131
+ if (set.fullResponse) {
132
+ return response;
133
+ }
134
+
135
+ return response.data[0].embedding;
136
+ } catch (error) {
137
+ if (error instanceof DyFM_Error) {
138
+ throw error;
139
+ }
140
+
141
+ throw new DyFM_Error({
142
+ ...this.getDefaultErrorSettings('createEmbedding', error, set.issuer),
143
+ errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-LMS-ECS-CE0`,
144
+ });
145
+ }
146
+ }
147
+
148
+ /**
149
+ * Batch-embedding az OpenAI-kompatibilis `/embeddings` végpontra. A `texts` sorrendje == a
150
+ * visszaadott `number[][]` sorrendje. `fullResponse=true` esetén a teljes válasz-objektum.
151
+ */
152
+ async createEmbeddings(
153
+ set: {
154
+ texts: string[];
155
+ model: string;
156
+ fullResponse?: boolean;
157
+ issuer: string;
158
+ }
159
+ ): Promise<number[][] | CreateEmbeddingResponse> {
160
+ try {
161
+ if (!set.texts) {
162
+ throw new DyFM_Error({
163
+ ...this.getDefaultErrorSettings('createEmbeddings', new Error('texts is required'), set.issuer),
164
+ errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-LMS-ECS-CES1`,
165
+ });
166
+ }
167
+
168
+ const start: number = Date.now();
169
+ const response: CreateEmbeddingResponse = await this.callEmbeddingsEndpoint(set.model, set.texts, set.issuer);
170
+ const durationMs: number = Date.now() - start;
171
+
172
+ this.emitLmStudioCostEvent('embedding-batch', set.model, set.texts, response, durationMs, set.issuer);
173
+
174
+ if (set.fullResponse) {
175
+ return response;
176
+ }
177
+
178
+ return response.data.map((item) => item.embedding);
179
+ } catch (error) {
180
+ if (error instanceof DyFM_Error) {
181
+ throw error;
182
+ }
183
+
184
+ throw new DyFM_Error({
185
+ ...this.getDefaultErrorSettings('createEmbeddings', error, set.issuer),
186
+ errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-LMS-ECS-CES0`,
187
+ });
188
+ }
189
+ }
190
+
191
+ /**
192
+ * Embedding model-info (a `DyFM_DAI_EmbeddingInfo` szerződés szerint). A provider `LocalAI`, a
193
+ * model a megadott azonosító (a lokális endpoint natív dimenzióját nem ismerjük előre).
194
+ */
195
+ getEmbeddingInfo(model: string): DyFM_DAI_EmbeddingInfo {
196
+ return {
197
+ provider: DyFM_AI_Provider.LocalAI,
198
+ model: model,
199
+ };
200
+ }
201
+
202
+ /**
203
+ * Provider-elérhetőség: egy minimál embedding-próba (rövid token). Ha a hívás dob (endpoint down /
204
+ * model hiányzik), `false`. Soha nem propagál hibát (try/catch → false).
205
+ */
206
+ async testConnection(issuer: string): Promise<boolean> {
207
+ try {
208
+ const vectors: number[][] | CreateEmbeddingResponse = await this.createEmbeddings({
209
+ texts: [ 'ping' ],
210
+ model: this.defaultProbeModel(),
211
+ fullResponse: false,
212
+ issuer: issuer,
213
+ });
214
+
215
+ return Array.isArray(vectors) && vectors.length === 1 && vectors[0].length > 0;
216
+ } catch (error) {
217
+ DyFM_Log.error('DyNTS_LMStudio_Embedding_ControlService', 'testConnection', 'Connection test failed', {
218
+ error: error,
219
+ issuer: issuer,
220
+ });
221
+
222
+ return false;
223
+ }
224
+ }
225
+
226
+ // =========================================================================
227
+ // belső: fetch + parse + cost-event
228
+ // =========================================================================
229
+
230
+ /**
231
+ * Az OpenAI-kompatibilis `/embeddings` POST-hívás `fetch`-csel. A `input` lehet egyetlen string
232
+ * vagy string-tömb (mindkettőt az OpenAI-spec megengedi). A választ `CreateEmbeddingResponse`-alakra
233
+ * normalizáljuk (a `data[].embedding`-eket kivonatoljuk). HTTP-/parse-hiba deskriptív üzenettel dobódik.
234
+ */
235
+ protected async callEmbeddingsEndpoint(
236
+ model: string,
237
+ input: string | string[],
238
+ issuer: string,
239
+ ): Promise<CreateEmbeddingResponse> {
240
+ const url: string = `${this.baseUrl}/embeddings`;
241
+ const headers: { [key: string]: string } = { 'Content-Type': 'application/json' };
242
+
243
+ if (this.apiKey && this.apiKey.trim().length) {
244
+ headers.Authorization = `Bearer ${this.apiKey.trim()}`;
245
+ }
246
+
247
+ const response: Response = await fetch(url, {
248
+ method: 'POST',
249
+ headers: headers,
250
+ body: JSON.stringify({ model: model, input: input }),
251
+ });
252
+ const rawText: string = await response.text();
253
+
254
+ if (!response.ok) {
255
+ throw new Error(
256
+ `LM Studio (OpenAI-compatible) embeddings HTTP ${response.status} | url=${url} | `
257
+ + `model=${model} | body=${this.snapshot(rawText)} | issuer=${issuer}`,
258
+ );
259
+ }
260
+
261
+ let parsed: unknown;
262
+
263
+ try {
264
+ parsed = JSON.parse(rawText);
265
+ } catch {
266
+ throw new Error(
267
+ `LM Studio embeddings: non-JSON response | url=${url} | model=${model} | body=${this.snapshot(rawText)}`,
268
+ );
269
+ }
270
+
271
+ const expectedCount: number = Array.isArray(input) ? input.length : 1;
272
+
273
+ return this.normalizeResponse(parsed, expectedCount, url, model);
274
+ }
275
+
276
+ /**
277
+ * A nyers (OpenAI-kompatibilis) választ `CreateEmbeddingResponse`-alakra normalizálja: a `data[]`-ból
278
+ * a `embedding` tömböket emeli ki (csak véges number-eket), a darabszámot ellenőrzi (1:1 a `texts`-szel),
279
+ * és átveszi a `usage`-t ha van (a cost-event token-számához). Hibás/hiányzó mező → deskriptív hiba.
280
+ */
281
+ protected normalizeResponse(json: unknown, expectedCount: number, url: string, modelId: string): CreateEmbeddingResponse {
282
+ if (json === null || typeof json !== 'object' || Array.isArray(json)) {
283
+ throw new Error(`LM Studio embeddings: invalid response object | url=${url} | model=${modelId}`);
284
+ }
285
+ const dataRaw: unknown = Reflect.get(json, 'data');
286
+
287
+ if (!Array.isArray(dataRaw)) {
288
+ throw new Error(`LM Studio embeddings: missing data array | url=${url} | model=${modelId}`);
289
+ }
290
+
291
+ const data: CreateEmbeddingResponse['data'] = [];
292
+ let index: number = 0;
293
+
294
+ for (const item of dataRaw) {
295
+ if (item === null || typeof item !== 'object' || Array.isArray(item)) {
296
+ continue;
297
+ }
298
+ const embRaw: unknown = Reflect.get(item, 'embedding');
299
+
300
+ if (!Array.isArray(embRaw)) {
301
+ continue;
302
+ }
303
+ const vec: number[] = embRaw.filter((x: unknown): x is number => typeof x === 'number' && Number.isFinite(x));
304
+
305
+ if (vec.length) {
306
+ data.push({ object: 'embedding', embedding: vec, index: index });
307
+ index++;
308
+ }
309
+ }
310
+
311
+ if (data.length !== expectedCount) {
312
+ throw new Error(
313
+ `LM Studio embeddings: expected ${expectedCount} vectors, got ${data.length} | url=${url} | model=${modelId}`,
314
+ );
315
+ }
316
+
317
+ const usageRaw: unknown = Reflect.get(json, 'usage');
318
+ const promptTokens: number = this.readNumber(usageRaw, 'prompt_tokens');
319
+ const totalTokens: number = this.readNumber(usageRaw, 'total_tokens');
320
+
321
+ return {
322
+ object: 'list',
323
+ model: modelId,
324
+ data: data,
325
+ usage: {
326
+ prompt_tokens: promptTokens,
327
+ total_tokens: totalTokens || promptTokens,
328
+ },
329
+ };
330
+ }
331
+
332
+ /**
333
+ * Cost-event emit (BFR-AM-007). A token a `usage`-ből (ha az endpoint adta), különben becsült
334
+ * (4 char ≈ 1 token, defenzív lokális heurisztika). A provider mindig `'lm-studio'` string.
335
+ */
336
+ protected emitLmStudioCostEvent(
337
+ callType: 'embedding-single' | 'embedding-batch',
338
+ model: string,
339
+ texts: string[],
340
+ response: CreateEmbeddingResponse,
341
+ durationMs: number,
342
+ issuer: string,
343
+ ): void {
344
+ const reportedInput: number = response.usage?.prompt_tokens ?? 0;
345
+ const input: number = reportedInput || this.estimateTokens(texts);
346
+ const total: number = response.usage?.total_tokens || input;
347
+
348
+ this.emitCostEvent({
349
+ callType: callType,
350
+ provider: this.costProvider,
351
+ model: model,
352
+ tokensUsed: {
353
+ input: input,
354
+ total: total,
355
+ },
356
+ durationMs: durationMs,
357
+ issuer: issuer,
358
+ timestamp: new Date(),
359
+ });
360
+ }
361
+
362
+ /** Becsült token-szám lokális endpoint-hoz (ha nincs `usage`): 4 char ≈ 1 token. */
363
+ protected estimateTokens(texts: string[]): number {
364
+ let chars: number = 0;
365
+
366
+ for (const text of texts) {
367
+ chars += (text ?? '').length;
368
+ }
369
+
370
+ return Math.max(1, Math.ceil(chars / 4));
371
+ }
372
+
373
+ /** A `testConnection` próba-modellje (env-override-olható, default a FAM-mintára). */
374
+ protected defaultProbeModel(): string {
375
+ return process.env.LMSTUDIO_EMBEDDING_MODEL || 'nomic-embed-text-v1.5';
376
+ }
377
+
378
+ /** Trailing `/`-ek levágása (kettős slash elkerülése a `/embeddings` join-nál). */
379
+ protected trimTrailingSlashes(value: string): string {
380
+ return value.replace(/\/+$/, '');
381
+ }
382
+
383
+ /** Rövid, biztonságos válasz-snapshot a hiba-üzenethez (max 300 char). */
384
+ protected snapshot(value: string): string {
385
+ const trimmed: string = (value ?? '').slice(0, 300);
386
+
387
+ return trimmed.length === 300 ? `${trimmed}…` : trimmed;
388
+ }
389
+
390
+ /** Egy number mező típusbiztos kiolvasása egy ismeretlen objektumból (hiány → 0). */
391
+ protected readNumber(obj: unknown, key: string): number {
392
+ if (obj === null || typeof obj !== 'object') {
393
+ return 0;
394
+ }
395
+ const value: unknown = Reflect.get(obj, key);
396
+
397
+ return typeof value === 'number' && Number.isFinite(value) ? value : 0;
398
+ }
399
+ }