@futdevpro/nts-dynamo 1.15.157 → 1.15.163

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 (642) hide show
  1. package/LICENSE +17 -17
  2. package/build/_modules/account-security/_enums/account-challenge-purpose.type-enum.d.ts +7 -1
  3. package/build/_modules/account-security/_enums/account-challenge-purpose.type-enum.d.ts.map +1 -1
  4. package/build/_modules/account-security/_enums/account-challenge-purpose.type-enum.js +6 -0
  5. package/build/_modules/account-security/_enums/account-challenge-purpose.type-enum.js.map +1 -1
  6. package/build/_modules/account-security/account-challenge.control-service.d.ts +1 -1
  7. package/build/_modules/account-security/account-challenge.control-service.d.ts.map +1 -1
  8. package/build/_modules/account-security/account-challenge.control-service.js +1 -1
  9. package/build/_modules/account-security/account-challenge.control-service.js.map +1 -1
  10. package/build/_modules/privacy-lifecycle/_models/privacy-export-artifact.interface.d.ts +71 -0
  11. package/build/_modules/privacy-lifecycle/_models/privacy-export-artifact.interface.d.ts.map +1 -0
  12. package/build/_modules/privacy-lifecycle/_models/privacy-export-artifact.interface.js +3 -0
  13. package/build/_modules/privacy-lifecycle/_models/privacy-export-artifact.interface.js.map +1 -0
  14. package/build/_modules/privacy-lifecycle/index.d.ts +3 -0
  15. package/build/_modules/privacy-lifecycle/index.d.ts.map +1 -1
  16. package/build/_modules/privacy-lifecycle/index.js +5 -1
  17. package/build/_modules/privacy-lifecycle/index.js.map +1 -1
  18. package/build/_modules/privacy-lifecycle/privacy-export-artifact.control-service.d.ts +48 -0
  19. package/build/_modules/privacy-lifecycle/privacy-export-artifact.control-service.d.ts.map +1 -0
  20. package/build/_modules/privacy-lifecycle/privacy-export-artifact.control-service.js +332 -0
  21. package/build/_modules/privacy-lifecycle/privacy-export-artifact.control-service.js.map +1 -0
  22. package/build/_modules/privacy-lifecycle/privacy-export-artifact.mongo-store.d.ts +25 -0
  23. package/build/_modules/privacy-lifecycle/privacy-export-artifact.mongo-store.d.ts.map +1 -0
  24. package/build/_modules/privacy-lifecycle/privacy-export-artifact.mongo-store.js +126 -0
  25. package/build/_modules/privacy-lifecycle/privacy-export-artifact.mongo-store.js.map +1 -0
  26. package/package.json +11 -4
  27. package/.c8rc.json +0 -26
  28. package/.copilot/patterns.json +0 -8
  29. package/.cursor/rules/__assistant_guide.mdc +0 -30
  30. package/.cursor/rules/__main.mdc +0 -64
  31. package/.cursor/rules/_ag_backend-structure.mdc +0 -86
  32. package/.cursor/rules/_ag_backend.mdc +0 -16
  33. package/.cursor/rules/_ag_debug.mdc +0 -8
  34. package/.cursor/rules/_ag_documentation_writing_rules.mdc +0 -372
  35. package/.cursor/rules/_ag_file-refactoring.mdc +0 -113
  36. package/.cursor/rules/_ag_fixes_rules.mdc +0 -6
  37. package/.cursor/rules/_ag_frontend-structure.mdc +0 -87
  38. package/.cursor/rules/_ag_frontend.mdc +0 -40
  39. package/.cursor/rules/_ag_import-rules.mdc +0 -45
  40. package/.cursor/rules/_ag_naming.mdc +0 -116
  41. package/.cursor/rules/_ag_running_commands.mdc +0 -5
  42. package/.cursor/rules/_ag_server-controller.mdc +0 -6
  43. package/.cursor/rules/_ag_should-be.mdc +0 -7
  44. package/.cursor/rules/_ag_swearing.mdc +0 -47
  45. package/.cursor/rules/ai_development_guide.md +0 -61
  46. package/.cursor/rules/ai_directives.md +0 -114
  47. package/.cursor/rules/cursor-rules.md +0 -160
  48. package/.cursor/rules/default-command.mdc +0 -465
  49. package/.cursor/rules/error_code_pattern.md +0 -40
  50. package/.cursor/rules/saved rule mcp server use.md +0 -16
  51. package/.dynamo/pipeline.cicd.config.json +0 -190
  52. package/.dynamo/version-bump.config.json +0 -5
  53. package/.github/workflows/main.yml +0 -438
  54. package/.husky/pre-commit +0 -3
  55. package/.vscode/settings.json +0 -11
  56. package/BuildPackage.bat +0 -1
  57. package/HOWTO.md +0 -15
  58. package/__documentations/2026-04-28-logs-module.md +0 -49
  59. package/__documentations/2026-05-17-oai-compatible-providers.md +0 -229
  60. package/__documentations/2026-05-17-static-client-serving-howto.md +0 -144
  61. package/__documentations/2026-06-01-fr041-cors-middleware.md +0 -96
  62. package/__documentations/2026-06-01-fr047-p2p3-function-calling.md +0 -81
  63. package/__documentations/2026-06-15-fr193-memory-guard.md +0 -73
  64. package/__documentations/2026-08-08-fr292-app-version-header.md +0 -38
  65. package/__documentations/2026-08-14-field-encryption-mongoose-document-spread.md +0 -124
  66. package/__documentations/2026-08-18-artifact-compiler.md +0 -46
  67. package/__documentations/2026-08-18-mongo-transaction-control-service.md +0 -82
  68. package/__documentations/2026-08-18-standalone-account-security-and-privacy-bedrock.md +0 -132
  69. package/__documentations/2026-08-21-distributed-rate-limit-bfr-ctm-010.md +0 -59
  70. package/__documentations/2026-08-22-bfr-ctm-018-content-free-endpoint-errors.md +0 -54
  71. package/__documentations/2026-08-22-bfr-ctm-020-content-free-request-telemetry.md +0 -65
  72. package/__documentations/2026-08-22-content-free-process-error-boundary.md +0 -111
  73. package/__documentations/2026-08-22-npm-token-state-classifier.md +0 -92
  74. package/__documentations/nts-integration-tests-2026-03-17.md +0 -26
  75. package/__documentations/plans/BEDROCK-HYPERPLAN.md +0 -95
  76. package/_specifications/BACKLOG.md +0 -92
  77. package/_specifications/TODO.md +0 -15
  78. package/_specifications/agent.md +0 -138
  79. package/eslint.config.js +0 -3
  80. package/nodemon.json +0 -24
  81. package/pnpm-workspace.yaml +0 -6
  82. package/scripts/_seed-out/aim-seed.fixtures.ts +0 -161
  83. package/scripts/_seed-out/image-raw.json +0 -1
  84. package/scripts/_seed-out/llm-expand-raw.json +0 -60
  85. package/scripts/_seed-out/sample-image.png +0 -0
  86. package/scripts/_seed-out/seed-raw.json +0 -153
  87. package/scripts/ai-fixture-seed.js +0 -126
  88. package/scripts/run-coverage-tests.js +0 -28
  89. package/spec/support/helpers/spec-reporter-loader.js +0 -359
  90. package/spec/support/helpers/ts-node-helper.js +0 -93
  91. package/spec/support/jasmine.coverage.json +0 -24
  92. package/spec/support/jasmine.json +0 -24
  93. package/src/_assets/dynamo-nts-logo-128.png +0 -0
  94. package/src/_assets/dynamo-nts-logo-256.png +0 -0
  95. package/src/_assets/dynamo-nts-logo-512.png +0 -0
  96. package/src/_assets/dynamo-nts-logo-64.png +0 -0
  97. package/src/_collections/app-version-header.util.spec.ts +0 -108
  98. package/src/_collections/app-version-header.util.ts +0 -74
  99. package/src/_collections/archive-service-registry.const.ts +0 -21
  100. package/src/_collections/archive.util.spec.ts +0 -57
  101. package/src/_collections/archive.util.ts +0 -18
  102. package/src/_collections/atlas-default-db-options.const.ts +0 -10
  103. package/src/_collections/client-safe-error.util.spec.ts +0 -151
  104. package/src/_collections/client-safe-error.util.ts +0 -107
  105. package/src/_collections/default-fallback-cache-max-age.const.spec.ts +0 -11
  106. package/src/_collections/default-fallback-cache-max-age.const.ts +0 -2
  107. package/src/_collections/default-not-found-page.const.spec.ts +0 -19
  108. package/src/_collections/default-not-found-page.const.ts +0 -22
  109. package/src/_collections/default-socket-path.const.spec.ts +0 -12
  110. package/src/_collections/default-socket-path.const.ts +0 -2
  111. package/src/_collections/field-encryption.util.spec.ts +0 -195
  112. package/src/_collections/field-encryption.util.ts +0 -222
  113. package/src/_collections/get-environment-settings.util.spec.ts +0 -210
  114. package/src/_collections/get-environment-settings.util.ts +0 -49
  115. package/src/_collections/global-settings.const.ts +0 -126
  116. package/src/_collections/load-shed.util.spec.ts +0 -62
  117. package/src/_collections/load-shed.util.ts +0 -51
  118. package/src/_collections/mongo-reconnect-guard.util.spec.ts +0 -52
  119. package/src/_collections/mongo-reconnect-guard.util.ts +0 -172
  120. package/src/_collections/npm-token-check.util.spec.ts +0 -218
  121. package/src/_collections/npm-token-check.util.ts +0 -327
  122. package/src/_collections/sample.env +0 -21
  123. package/src/_collections/security-headers.util.spec.ts +0 -98
  124. package/src/_collections/security-headers.util.ts +0 -96
  125. package/src/_collections/signed-url.util.spec.ts +0 -198
  126. package/src/_collections/signed-url.util.ts +0 -170
  127. package/src/_collections/star.controller.spec.ts +0 -224
  128. package/src/_collections/star.controller.ts +0 -130
  129. package/src/_collections/static-cache-control.util.spec.ts +0 -47
  130. package/src/_collections/static-cache-control.util.ts +0 -25
  131. package/src/_enums/data-model-type.enum.ts +0 -14
  132. package/src/_enums/data-service-function.enum.ts +0 -24
  133. package/src/_enums/predefined-data-types.enum.ts +0 -17
  134. package/src/_enums/route-security.enum.ts +0 -12
  135. package/src/_models/control-models/api-call-params.control-model.spec.ts +0 -152
  136. package/src/_models/control-models/api-call-params.control-model.ts +0 -142
  137. package/src/_models/control-models/app-ext-system-controls.control-model.spec.ts +0 -52
  138. package/src/_models/control-models/app-ext-system-controls.control-model.ts +0 -9
  139. package/src/_models/control-models/app-params.control-model.spec.ts +0 -229
  140. package/src/_models/control-models/app-params.control-model.ts +0 -137
  141. package/src/_models/control-models/app-system-controls.control-model.spec.ts +0 -31
  142. package/src/_models/control-models/app-system-controls.control-model.ts +0 -9
  143. package/src/_models/control-models/endpoint-params.control-model.spec.ts +0 -754
  144. package/src/_models/control-models/endpoint-params.control-model.ts +0 -575
  145. package/src/_models/control-models/http-settings.control-model.spec.ts +0 -77
  146. package/src/_models/control-models/http-settings.control-model.ts +0 -37
  147. package/src/_models/control-models/system-control.control-model.spec.ts +0 -27
  148. package/src/_models/control-models/system-control.control-model.ts +0 -12
  149. package/src/_models/data-models/schema-migration.data-model.ts +0 -50
  150. package/src/_models/interfaces/app-version-header-settings.interface.ts +0 -17
  151. package/src/_models/interfaces/certification-settings.interface.ts +0 -7
  152. package/src/_models/interfaces/compare-data-options.interface.ts +0 -27
  153. package/src/_models/interfaces/compare-data-result.interface.ts +0 -12
  154. package/src/_models/interfaces/cors-settings.interface.spec.ts +0 -52
  155. package/src/_models/interfaces/cors-settings.interface.ts +0 -56
  156. package/src/_models/interfaces/db-query-options.interface.ts +0 -33
  157. package/src/_models/interfaces/environment-settings.interface.ts +0 -59
  158. package/src/_models/interfaces/global-log-settings.interface.ts +0 -171
  159. package/src/_models/interfaces/global-service-settings.interface.ts +0 -47
  160. package/src/_models/interfaces/global-settings.interface.ts +0 -294
  161. package/src/_models/interfaces/migration-entry.interface.ts +0 -19
  162. package/src/_models/interfaces/mongo-transaction-settings.interface.ts +0 -9
  163. package/src/_models/interfaces/request-telemetry-settings.interface.ts +0 -9
  164. package/src/_models/interfaces/request-telemetry-snapshot.interface.ts +0 -30
  165. package/src/_models/interfaces/routing-module-settings.interface.ts +0 -21
  166. package/src/_models/interfaces/security-headers-settings.interface.ts +0 -50
  167. package/src/_models/interfaces/signed-url-verify-result.interface.ts +0 -13
  168. package/src/_models/interfaces/static-client-settings.interface.spec.ts +0 -29
  169. package/src/_models/interfaces/static-client-settings.interface.ts +0 -36
  170. package/src/_models/types/db-update.type.ts +0 -100
  171. package/src/_modules/account-security/_enums/account-challenge-purpose.type-enum.ts +0 -5
  172. package/src/_modules/account-security/_enums/account-refresh-token-state.type-enum.ts +0 -6
  173. package/src/_modules/account-security/_enums/account-session-state.type-enum.ts +0 -6
  174. package/src/_modules/account-security/_models/account-challenge-adapter.interface.ts +0 -17
  175. package/src/_modules/account-security/_models/account-challenge-issued.interface.ts +0 -6
  176. package/src/_modules/account-security/_models/account-challenge-record.interface.ts +0 -13
  177. package/src/_modules/account-security/_models/account-challenge-result.interface.ts +0 -8
  178. package/src/_modules/account-security/_models/account-challenge-settings.interface.ts +0 -9
  179. package/src/_modules/account-security/_models/account-password-policy.interface.ts +0 -11
  180. package/src/_modules/account-security/_models/account-password-verification.interface.ts +0 -5
  181. package/src/_modules/account-security/_models/account-refresh-token-record.interface.ts +0 -13
  182. package/src/_modules/account-security/_models/account-session-adapter.interface.ts +0 -19
  183. package/src/_modules/account-security/_models/account-session-claims.interface.ts +0 -7
  184. package/src/_modules/account-security/_models/account-session-context.interface.ts +0 -6
  185. package/src/_modules/account-security/_models/account-session-create.interface.ts +0 -8
  186. package/src/_modules/account-security/_models/account-session-record.interface.ts +0 -21
  187. package/src/_modules/account-security/_models/account-session-rotate.interface.ts +0 -11
  188. package/src/_modules/account-security/_models/account-session-settings.interface.ts +0 -11
  189. package/src/_modules/account-security/_models/account-session-token-pair.interface.ts +0 -8
  190. package/src/_modules/account-security/_models/account-session-view.interface.ts +0 -13
  191. package/src/_modules/account-security/account-challenge.control-service.spec.ts +0 -195
  192. package/src/_modules/account-security/account-challenge.control-service.ts +0 -164
  193. package/src/_modules/account-security/account-password.control-service.spec.ts +0 -96
  194. package/src/_modules/account-security/account-password.control-service.ts +0 -288
  195. package/src/_modules/account-security/account-session.control-service.spec.ts +0 -294
  196. package/src/_modules/account-security/account-session.control-service.ts +0 -376
  197. package/src/_modules/account-security/index.ts +0 -31
  198. package/src/_modules/admin-auth/_models/admin-api-key-config.interface.ts +0 -33
  199. package/src/_modules/admin-auth/admin-api-key.auth-service.spec.ts +0 -200
  200. package/src/_modules/admin-auth/admin-api-key.auth-service.ts +0 -220
  201. package/src/_modules/admin-auth/index.ts +0 -2
  202. package/src/_modules/ai/_collections/ai-model-config-validator.util.spec.ts +0 -150
  203. package/src/_modules/ai/_collections/ai-model-config-validator.util.ts +0 -131
  204. package/src/_modules/ai/_collections/ai-provider-error.util.ts +0 -144
  205. package/src/_modules/ai/_models/ai-input-interfaces.ts +0 -117
  206. package/src/_modules/ai/_models/ai-test-generation-result.interface.ts +0 -16
  207. package/src/_modules/ai/_models/interfaces/dynts-ai-cost-event-callback.interface.ts +0 -14
  208. package/src/_modules/ai/_models/interfaces/dynts-ai-cost-event.interface.ts +0 -56
  209. package/src/_modules/ai/_models/interfaces/dynts-ai-provider-error.interface.ts +0 -16
  210. package/src/_modules/ai/_modules/ai-mock/_collections/aim-default-collection.util.spec.ts +0 -72
  211. package/src/_modules/ai/_modules/ai-mock/_collections/aim-default-collection.util.ts +0 -71
  212. package/src/_modules/ai/_modules/ai-mock/_collections/aim-fixture-match.util.spec.ts +0 -57
  213. package/src/_modules/ai/_modules/ai-mock/_collections/aim-fixture-match.util.ts +0 -60
  214. package/src/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.spec.ts +0 -56
  215. package/src/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.ts +0 -117
  216. package/src/_modules/ai/_modules/ai-mock/_enums/aim-modality.enum.ts +0 -28
  217. package/src/_modules/ai/_modules/ai-mock/_models/interfaces/aim-call-input.interface.ts +0 -14
  218. package/src/_modules/ai/_modules/ai-mock/_models/interfaces/aim-error.interface.ts +0 -11
  219. package/src/_modules/ai/_modules/ai-mock/_models/interfaces/aim-fixture.interface.ts +0 -30
  220. package/src/_modules/ai/_modules/ai-mock/_models/interfaces/aim-request.interface.ts +0 -19
  221. package/src/_modules/ai/_modules/ai-mock/_models/interfaces/aim-service-collection.interface.ts +0 -20
  222. package/src/_modules/ai/_modules/ai-mock/_services/ai-embedding-mock.service.spec.ts +0 -115
  223. package/src/_modules/ai/_modules/ai-mock/_services/ai-embedding-mock.service.ts +0 -233
  224. package/src/_modules/ai/_modules/ai-mock/_services/aim-fixture-harness.service.spec.ts +0 -134
  225. package/src/_modules/ai/_modules/ai-mock/_services/aim-fixture-harness.service.ts +0 -127
  226. package/src/_modules/ai/_modules/ai-mock/_services/aim-fixture-pipeline.spec.ts +0 -105
  227. package/src/_modules/ai/_modules/ai-mock/_services/aim-fixture-store.service.spec.ts +0 -50
  228. package/src/_modules/ai/_modules/ai-mock/_services/aim-fixture-store.service.ts +0 -65
  229. package/src/_modules/ai/_modules/ai-mock/_services/aim-integration-proof.spec.ts +0 -92
  230. package/src/_modules/ai/_modules/ai-mock/_services/aim-mock.service.spec.ts +0 -112
  231. package/src/_modules/ai/_modules/ai-mock/_services/aim-mock.service.ts +0 -155
  232. package/src/_modules/ai/_modules/ai-mock/fixtures/aim-text.fixtures.ts +0 -649
  233. package/src/_modules/ai/_modules/ai-mock/index.ts +0 -47
  234. package/src/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.ts +0 -138
  235. package/src/_modules/ai/_modules/anthropic/index.ts +0 -5
  236. package/src/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.spec.ts +0 -242
  237. package/src/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.ts +0 -639
  238. package/src/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.spec.ts +0 -295
  239. package/src/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.ts +0 -552
  240. package/src/_modules/ai/_modules/document-ai/_collections/dai-document.util.spec.ts +0 -209
  241. package/src/_modules/ai/_modules/document-ai/_collections/dai-document.util.ts +0 -85
  242. package/src/_modules/ai/_modules/document-ai/_enums/dai-compare-result-type.enum.ts +0 -8
  243. package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-chunk.data-model.ts +0 -146
  244. package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-page.data-model.ts +0 -163
  245. package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-document.data-model.ts +0 -100
  246. package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-code-chunk.interface.ts +0 -68
  247. package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-chunk-compare-result.interface.ts +0 -18
  248. package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-page-compare-result.interface.ts +0 -19
  249. package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-document-compare-result.interface.ts +0 -25
  250. package/src/_modules/ai/_modules/document-ai/index.ts +0 -30
  251. package/src/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.ts +0 -189
  252. package/src/_modules/ai/_modules/fdp-ai/index.ts +0 -5
  253. package/src/_modules/ai/_modules/open-ai/_collections/oai-global-settings.const.ts +0 -9
  254. package/src/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests-hu.conts.ts +0 -83
  255. package/src/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests.conts.ts +0 -76
  256. package/src/_modules/ai/_modules/open-ai/_enums/oai-gpt-message-role.enum.ts +0 -45
  257. package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-global-settings.interface.ts +0 -8
  258. package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-gpt-message.interface.ts +0 -7
  259. package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-llm-predefined-requests.interface.ts +0 -57
  260. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-chunk-data.service.ts +0 -293
  261. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-page.data-service.ts +0 -572
  262. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.spec.ts +0 -342
  263. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.ts +0 -435
  264. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.spec.ts +0 -550
  265. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.ts +0 -631
  266. package/src/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.spec.ts +0 -332
  267. package/src/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.ts +0 -132
  268. package/src/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.spec.ts +0 -462
  269. package/src/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.ts +0 -635
  270. package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.spec.ts +0 -489
  271. package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.tools.spec.ts +0 -173
  272. package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.ts +0 -1085
  273. package/src/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.ts +0 -157
  274. package/src/_modules/ai/_modules/open-ai/index.ts +0 -74
  275. package/src/_modules/ai/_services/ai-embedding-provider.registry.spec.ts +0 -110
  276. package/src/_modules/ai/_services/ai-embedding-provider.registry.ts +0 -114
  277. package/src/_modules/ai/_services/ai-embedding.service-base.spec.ts +0 -98
  278. package/src/_modules/ai/_services/ai-embedding.service-base.ts +0 -48
  279. package/src/_modules/ai/_services/ai-llm-chat.service-base.spec.ts +0 -229
  280. package/src/_modules/ai/_services/ai-llm-chat.service-base.ts +0 -68
  281. package/src/_modules/ai/_services/ai-llm.service-base.reconciler.spec.ts +0 -133
  282. package/src/_modules/ai/_services/ai-llm.service-base.spec.ts +0 -250
  283. package/src/_modules/ai/_services/ai-llm.service-base.ts +0 -599
  284. package/src/_modules/ai/_services/ai-provider.service-base.spec.ts +0 -158
  285. package/src/_modules/ai/_services/ai-provider.service-base.ts +0 -67
  286. package/src/_modules/ai/_services/ai-user-key.service-base.ts +0 -59
  287. package/src/_modules/ai/_services/lmstudio-embedding.control-service.spec.ts +0 -197
  288. package/src/_modules/ai/_services/lmstudio-embedding.control-service.ts +0 -399
  289. package/src/_modules/ai/index.ts +0 -33
  290. package/src/_modules/artifact-compiler/_enums/artifact-compile-outcome.type-enum.ts +0 -5
  291. package/src/_modules/artifact-compiler/_enums/artifact-compile-stage.type-enum.ts +0 -8
  292. package/src/_modules/artifact-compiler/_enums/artifact-retry-class.type-enum.ts +0 -6
  293. package/src/_modules/artifact-compiler/_models/artifact-compile.interface.ts +0 -35
  294. package/src/_modules/artifact-compiler/artifact-compiler.control-service.spec.ts +0 -151
  295. package/src/_modules/artifact-compiler/artifact-compiler.control-service.ts +0 -356
  296. package/src/_modules/artifact-compiler/index.ts +0 -9
  297. package/src/_modules/assistant/_collections/ass-global-settings.const.ts +0 -13
  298. package/src/_modules/assistant/_collections/ass.util.spec.ts +0 -176
  299. package/src/_modules/assistant/_collections/ass.util.ts +0 -50
  300. package/src/_modules/assistant/_models/ass-global-settings.interface.ts +0 -15
  301. package/src/_modules/assistant/_services/ass-io.control-service.spec.ts +0 -140
  302. package/src/_modules/assistant/_services/ass-io.control-service.ts +0 -74
  303. package/src/_modules/assistant/_services/ass-main.control-service.spec.ts +0 -192
  304. package/src/_modules/assistant/_services/ass-main.control-service.ts +0 -107
  305. package/src/_modules/assistant/index.ts +0 -19
  306. package/src/_modules/bot/_collections/bot-default-commands.const.ts +0 -12
  307. package/src/_modules/bot/_collections/bot-global-settings.const.ts +0 -39
  308. package/src/_modules/bot/_models/bot-channel-wrapper.interface.ts +0 -62
  309. package/src/_modules/bot/_models/bot-command.interface.ts +0 -8
  310. package/src/_modules/bot/_models/bot-global-settings.interface.ts +0 -96
  311. package/src/_modules/bot/_models/bot-last-mention-date.interface.ts +0 -6
  312. package/src/_modules/bot/_models/bot-last-message-date.interface.ts +0 -5
  313. package/src/_modules/bot/_models/bot-message-wrapper.interface.ts +0 -90
  314. package/src/_modules/bot/_models/bot-user-wrapper.interface.ts +0 -41
  315. package/src/_modules/bot/_modules/discord-bot/_models/dib-platform.types.ts +0 -10
  316. package/src/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.spec.ts +0 -431
  317. package/src/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.ts +0 -641
  318. package/src/_modules/bot/_modules/discord-bot/index.ts +0 -12
  319. package/src/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.spec.ts +0 -160
  320. package/src/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.ts +0 -55
  321. package/src/_modules/bot/_modules/dynamo-bot/_models/dyb-platform.types.ts +0 -15
  322. package/src/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.spec.ts +0 -374
  323. package/src/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.ts +0 -447
  324. package/src/_modules/bot/_modules/dynamo-bot/index.ts +0 -15
  325. package/src/_modules/bot/_modules/slack-bot/_models/slb-platform.types.ts +0 -9
  326. package/src/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.spec.ts +0 -344
  327. package/src/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.ts +0 -197
  328. package/src/_modules/bot/_modules/slack-bot/index.ts +0 -12
  329. package/src/_modules/bot/_modules/teams-bot/_models/teb-platform.types.ts +0 -9
  330. package/src/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.spec.ts +0 -345
  331. package/src/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.ts +0 -197
  332. package/src/_modules/bot/_modules/teams-bot/index.ts +0 -11
  333. package/src/_modules/bot/_services/bot-commands.control-service.spec.ts +0 -116
  334. package/src/_modules/bot/_services/bot-commands.control-service.ts +0 -158
  335. package/src/_modules/bot/_services/bot-io.control-service.spec.ts +0 -285
  336. package/src/_modules/bot/_services/bot-io.control-service.ts +0 -329
  337. package/src/_modules/bot/_services/bot-main.control-service.spec.ts +0 -208
  338. package/src/_modules/bot/_services/bot-main.control-service.ts +0 -489
  339. package/src/_modules/bot/_services/bot-messaging-provider.service-base.spec.ts +0 -349
  340. package/src/_modules/bot/_services/bot-messaging-provider.service-base.ts +0 -158
  341. package/src/_modules/bot/_services/bot-routines.control-service.spec.ts +0 -111
  342. package/src/_modules/bot/_services/bot-routines.control-service.ts +0 -78
  343. package/src/_modules/bot/index.ts +0 -37
  344. package/src/_modules/custom-data/custom-data.controller.spec.ts +0 -49
  345. package/src/_modules/custom-data/custom-data.controller.ts +0 -67
  346. package/src/_modules/custom-data/custom-data.data-service.spec.ts +0 -54
  347. package/src/_modules/custom-data/custom-data.data-service.ts +0 -22
  348. package/src/_modules/custom-data/get-custom-data-routing-module.util.spec.ts +0 -28
  349. package/src/_modules/custom-data/get-custom-data-routing-module.util.ts +0 -24
  350. package/src/_modules/custom-data/index.ts +0 -9
  351. package/src/_modules/data-readers/_collections/dynts-sqlite-reader.util.spec.ts +0 -176
  352. package/src/_modules/data-readers/_collections/dynts-sqlite-reader.util.ts +0 -203
  353. package/src/_modules/data-readers/_models/interfaces/dynts-sqlite-reader.interface.ts +0 -33
  354. package/src/_modules/data-readers/index.ts +0 -11
  355. package/src/_modules/defaults/_collections/default-endpoints.util.ts +0 -487
  356. package/src/_modules/defaults/_models/default-user.data-model.ts +0 -72
  357. package/src/_modules/defaults/_services/default-auth.service.spec.ts +0 -269
  358. package/src/_modules/defaults/_services/default-auth.service.ts +0 -177
  359. package/src/_modules/defaults/_services/default-socket-events.service.spec.ts +0 -42
  360. package/src/_modules/defaults/_services/default-socket-events.service.ts +0 -61
  361. package/src/_modules/defaults/_services/default-user.data-service.spec.ts +0 -187
  362. package/src/_modules/defaults/_services/default-user.data-service.ts +0 -98
  363. package/src/_modules/defaults/index.ts +0 -17
  364. package/src/_modules/discord-assistant/_collections/dias-global-settings.const.ts +0 -19
  365. package/src/_modules/discord-assistant/_collections/dias.util.spec.ts +0 -366
  366. package/src/_modules/discord-assistant/_collections/dias.util.ts +0 -133
  367. package/src/_modules/discord-assistant/_models/dias-global-settings.interface.ts +0 -20
  368. package/src/_modules/discord-assistant/_models/dias-knowledge.data-model.ts +0 -53
  369. package/src/_modules/discord-assistant/_services/dias-chunk.data-service.ts +0 -177
  370. package/src/_modules/discord-assistant/_services/dias-io.control-service.spec.ts +0 -108
  371. package/src/_modules/discord-assistant/_services/dias-io.control-service.ts +0 -69
  372. package/src/_modules/discord-assistant/_services/dias-main.control-service.spec.ts +0 -22
  373. package/src/_modules/discord-assistant/_services/dias-main.control-service.ts +0 -27
  374. package/src/_modules/discord-assistant/_services/dias.service-base.spec.ts +0 -195
  375. package/src/_modules/discord-assistant/_services/dias.service-base.ts +0 -77
  376. package/src/_modules/discord-assistant/index.ts +0 -38
  377. package/src/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.spec.ts +0 -34
  378. package/src/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.ts +0 -11
  379. package/src/_modules/discord-assistant-voiced/index.ts +0 -36
  380. package/src/_modules/discord-bot/_collections/dibo-default-commands.const.ts +0 -17
  381. package/src/_modules/discord-bot/_collections/dibo-global-settings.conts.ts +0 -56
  382. package/src/_modules/discord-bot/_collections/dibo-operations.util.spec.ts +0 -214
  383. package/src/_modules/discord-bot/_collections/dibo-operations.util.ts +0 -387
  384. package/src/_modules/discord-bot/_models/dibo-command.interface.ts +0 -12
  385. package/src/_modules/discord-bot/_models/dibo-global-settings.interface.ts +0 -98
  386. package/src/_modules/discord-bot/_models/dibo-last-mention-date.inteface.ts +0 -8
  387. package/src/_modules/discord-bot/_models/dibo-last-message-date.interface.ts +0 -6
  388. package/src/_modules/discord-bot/_services/dibo-commands.control-service.spec.ts +0 -154
  389. package/src/_modules/discord-bot/_services/dibo-commands.control-service.ts +0 -153
  390. package/src/_modules/discord-bot/_services/dibo-io.control-service.spec.ts +0 -264
  391. package/src/_modules/discord-bot/_services/dibo-io.control-service.ts +0 -306
  392. package/src/_modules/discord-bot/_services/dibo-main.control-service.spec.ts +0 -408
  393. package/src/_modules/discord-bot/_services/dibo-main.control-service.ts +0 -488
  394. package/src/_modules/discord-bot/_services/dibo-routines.control-service.spec.ts +0 -105
  395. package/src/_modules/discord-bot/_services/dibo-routines.control-service.ts +0 -97
  396. package/src/_modules/discord-bot/index.ts +0 -36
  397. package/src/_modules/local-vector-search/_enums/lvs-search-mode.enum.ts +0 -35
  398. package/src/_modules/local-vector-search/_models/data-models/lvs-vector-persist.data-model.ts +0 -60
  399. package/src/_modules/local-vector-search/_models/lvs-search-result.interface.ts +0 -17
  400. package/src/_modules/local-vector-search/_services/lvs-bm25.util.spec.ts +0 -159
  401. package/src/_modules/local-vector-search/_services/lvs-bm25.util.ts +0 -206
  402. package/src/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.spec.ts +0 -418
  403. package/src/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.ts +0 -276
  404. package/src/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.spec.ts +0 -480
  405. package/src/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.ts +0 -416
  406. package/src/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.spec.ts +0 -214
  407. package/src/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.ts +0 -186
  408. package/src/_modules/local-vector-search/_services/lvs-vector-persist.data-service.spec.ts +0 -167
  409. package/src/_modules/local-vector-search/_services/lvs-vector-persist.data-service.ts +0 -130
  410. package/src/_modules/local-vector-search/_services/lvs-vector-pool.control-service.spec.ts +0 -509
  411. package/src/_modules/local-vector-search/_services/lvs-vector-pool.control-service.ts +0 -323
  412. package/src/_modules/local-vector-search/index.ts +0 -17
  413. package/src/_modules/logs/_models/file-log-entry.interface.ts +0 -13
  414. package/src/_modules/logs/_models/file-log-read-result.interface.ts +0 -37
  415. package/src/_modules/logs/file-log.service.spec.ts +0 -341
  416. package/src/_modules/logs/file-log.service.ts +0 -466
  417. package/src/_modules/logs/file-logs.controller.spec.ts +0 -245
  418. package/src/_modules/logs/file-logs.controller.ts +0 -165
  419. package/src/_modules/logs/get-file-logs-routing-module.util.ts +0 -51
  420. package/src/_modules/logs/get-logs-routing-module.util.ts +0 -36
  421. package/src/_modules/logs/index.ts +0 -11
  422. package/src/_modules/logs/log-buffer.service.ts +0 -101
  423. package/src/_modules/logs/logs.controller.ts +0 -109
  424. package/src/_modules/logs/logs.service.ts +0 -100
  425. package/src/_modules/mcp/_models/interfaces/dynts-mcp.interface.ts +0 -111
  426. package/src/_modules/mcp/_services/dynts-mcp-server.service-base.spec.ts +0 -151
  427. package/src/_modules/mcp/_services/dynts-mcp-server.service-base.ts +0 -125
  428. package/src/_modules/mcp/_services/dynts-mcp.adapter.ts +0 -168
  429. package/src/_modules/mcp/index.ts +0 -13
  430. package/src/_modules/messaging/README.md +0 -354
  431. package/src/_modules/messaging/_collections/get-messaging-routing-module.util.ts +0 -26
  432. package/src/_modules/messaging/_collections/msg-global-settings.const.ts +0 -22
  433. package/src/_modules/messaging/_collections/msg.util.spec.ts +0 -226
  434. package/src/_modules/messaging/_collections/msg.util.ts +0 -83
  435. package/src/_modules/messaging/_models/msg-global-settings.interface.ts +0 -37
  436. package/src/_modules/messaging/_services/msg-conversation.data-service.ts +0 -146
  437. package/src/_modules/messaging/_services/msg-events.service.spec.ts +0 -219
  438. package/src/_modules/messaging/_services/msg-events.service.ts +0 -267
  439. package/src/_modules/messaging/_services/msg-integration.control-service.ts +0 -180
  440. package/src/_modules/messaging/_services/msg-main.control-service.spec.ts +0 -147
  441. package/src/_modules/messaging/_services/msg-main.control-service.ts +0 -572
  442. package/src/_modules/messaging/_services/msg-message.data-service.ts +0 -129
  443. package/src/_modules/messaging/_services/msg.controller.spec.ts +0 -201
  444. package/src/_modules/messaging/_services/msg.controller.ts +0 -370
  445. package/src/_modules/messaging/index.ts +0 -30
  446. package/src/_modules/mock/app-extended-server.mock.ts +0 -201
  447. package/src/_modules/mock/app-integration-test.mock.ts +0 -51
  448. package/src/_modules/mock/app-params.mock.spec.ts +0 -21
  449. package/src/_modules/mock/app-params.mock.ts +0 -9
  450. package/src/_modules/mock/app-server.mock.ts +0 -188
  451. package/src/_modules/mock/auth-service.mock.spec.ts +0 -47
  452. package/src/_modules/mock/auth-service.mock.ts +0 -28
  453. package/src/_modules/mock/controller.mock.spec.ts +0 -26
  454. package/src/_modules/mock/controller.mock.ts +0 -16
  455. package/src/_modules/mock/data-model.mock.spec.ts +0 -111
  456. package/src/_modules/mock/data-model.mock.ts +0 -82
  457. package/src/_modules/mock/email-service-collection.mock.spec.ts +0 -24
  458. package/src/_modules/mock/email-service-collection.mock.ts +0 -15
  459. package/src/_modules/mock/email-service.mock.spec.ts +0 -17
  460. package/src/_modules/mock/email-service.mock.ts +0 -20
  461. package/src/_modules/mock/email-template.mock.html +0 -15
  462. package/src/_modules/mock/endpoint.mock.ts +0 -91
  463. package/src/_modules/mock/socket-client.mock.spec.ts +0 -40
  464. package/src/_modules/mock/socket-client.mock.ts +0 -45
  465. package/src/_modules/mock/socket-server.mock.spec.ts +0 -44
  466. package/src/_modules/mock/socket-server.mock.ts +0 -46
  467. package/src/_modules/oauth2/_routes/oauth2.controller.spec.ts +0 -107
  468. package/src/_modules/oauth2/_routes/oauth2.controller.ts +0 -99
  469. package/src/_modules/oauth2/_services/oauth2.auth-service.spec.ts +0 -254
  470. package/src/_modules/oauth2/_services/oauth2.auth-service.ts +0 -232
  471. package/src/_modules/oauth2/_services/oauth2.control-service.spec.ts +0 -585
  472. package/src/_modules/oauth2/_services/oauth2.control-service.ts +0 -654
  473. package/src/_modules/oauth2/index.ts +0 -17
  474. package/src/_modules/privacy-lifecycle/_enums/privacy-consent-decision.type-enum.ts +0 -5
  475. package/src/_modules/privacy-lifecycle/_enums/privacy-contributor-action.type-enum.ts +0 -10
  476. package/src/_modules/privacy-lifecycle/_enums/privacy-contributor-outcome.type-enum.ts +0 -7
  477. package/src/_modules/privacy-lifecycle/_enums/privacy-request-state.type-enum.ts +0 -15
  478. package/src/_modules/privacy-lifecycle/_enums/privacy-request.type-enum.ts +0 -9
  479. package/src/_modules/privacy-lifecycle/_models/privacy-consent-input.interface.ts +0 -12
  480. package/src/_modules/privacy-lifecycle/_models/privacy-consent-persistence-result.interface.ts +0 -7
  481. package/src/_modules/privacy-lifecycle/_models/privacy-consent-record.interface.ts +0 -15
  482. package/src/_modules/privacy-lifecycle/_models/privacy-consent-result.interface.ts +0 -7
  483. package/src/_modules/privacy-lifecycle/_models/privacy-consent-view.interface.ts +0 -13
  484. package/src/_modules/privacy-lifecycle/_models/privacy-contributor-context.interface.ts +0 -9
  485. package/src/_modules/privacy-lifecycle/_models/privacy-contributor-outcome.interface.ts +0 -14
  486. package/src/_modules/privacy-lifecycle/_models/privacy-contributor-plan.interface.ts +0 -8
  487. package/src/_modules/privacy-lifecycle/_models/privacy-contributor.interface.ts +0 -17
  488. package/src/_modules/privacy-lifecycle/_models/privacy-ledger-adapter.interface.ts +0 -21
  489. package/src/_modules/privacy-lifecycle/_models/privacy-ledger-result.interface.ts +0 -9
  490. package/src/_modules/privacy-lifecycle/_models/privacy-ledger-settings.interface.ts +0 -7
  491. package/src/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-input.interface.ts +0 -10
  492. package/src/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-persistence-result.interface.ts +0 -7
  493. package/src/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-result.interface.ts +0 -7
  494. package/src/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-view.interface.ts +0 -11
  495. package/src/_modules/privacy-lifecycle/_models/privacy-legal-acceptance.interface.ts +0 -13
  496. package/src/_modules/privacy-lifecycle/_models/privacy-lifecycle-adapter.interface.ts +0 -19
  497. package/src/_modules/privacy-lifecycle/_models/privacy-lifecycle-settings.interface.ts +0 -9
  498. package/src/_modules/privacy-lifecycle/_models/privacy-request-create-result.interface.ts +0 -7
  499. package/src/_modules/privacy-lifecycle/_models/privacy-request-open.interface.ts +0 -10
  500. package/src/_modules/privacy-lifecycle/_models/privacy-request-persistence-create-result.interface.ts +0 -7
  501. package/src/_modules/privacy-lifecycle/_models/privacy-request-record.interface.ts +0 -21
  502. package/src/_modules/privacy-lifecycle/_models/privacy-request-result.interface.ts +0 -8
  503. package/src/_modules/privacy-lifecycle/_models/privacy-request-view.interface.ts +0 -20
  504. package/src/_modules/privacy-lifecycle/index.ts +0 -40
  505. package/src/_modules/privacy-lifecycle/privacy-ledger.control-service.spec.ts +0 -206
  506. package/src/_modules/privacy-lifecycle/privacy-ledger.control-service.ts +0 -253
  507. package/src/_modules/privacy-lifecycle/privacy-lifecycle.control-service.spec.ts +0 -353
  508. package/src/_modules/privacy-lifecycle/privacy-lifecycle.control-service.ts +0 -586
  509. package/src/_modules/rate-limit/_enums/rate-limit-store-kind.type-enum.ts +0 -5
  510. package/src/_modules/rate-limit/_models/rate-limit-config.interface.ts +0 -82
  511. package/src/_modules/rate-limit/_models/rate-limit-consume-request.interface.ts +0 -9
  512. package/src/_modules/rate-limit/_models/rate-limit-consume-result.interface.ts +0 -6
  513. package/src/_modules/rate-limit/_models/rate-limit-policy.interface.ts +0 -16
  514. package/src/_modules/rate-limit/_models/rate-limit-store.interface.ts +0 -9
  515. package/src/_modules/rate-limit/index.ts +0 -8
  516. package/src/_modules/rate-limit/rate-limit-in-memory.store.ts +0 -91
  517. package/src/_modules/rate-limit/rate-limit.middleware.spec.ts +0 -488
  518. package/src/_modules/rate-limit/rate-limit.middleware.ts +0 -504
  519. package/src/_modules/scheduler/_models/scheduler-job.interface.ts +0 -35
  520. package/src/_modules/scheduler/get-scheduler-routing-module.util.ts +0 -33
  521. package/src/_modules/scheduler/index.ts +0 -8
  522. package/src/_modules/scheduler/scheduler.controller.spec.ts +0 -42
  523. package/src/_modules/scheduler/scheduler.controller.ts +0 -69
  524. package/src/_modules/scheduler/scheduler.service.spec.ts +0 -141
  525. package/src/_modules/scheduler/scheduler.service.ts +0 -176
  526. package/src/_modules/scoped-config/_enums/dynts-scoped-config-level.enum.ts +0 -22
  527. package/src/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.ts +0 -82
  528. package/src/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.ts +0 -107
  529. package/src/_modules/scoped-config/_services/dynts-scoped-config.control-service.spec.ts +0 -312
  530. package/src/_modules/scoped-config/_services/dynts-scoped-config.control-service.ts +0 -311
  531. package/src/_modules/scoped-config/_services/dynts-scoped-config.data-service.spec.ts +0 -123
  532. package/src/_modules/scoped-config/_services/dynts-scoped-config.data-service.ts +0 -108
  533. package/src/_modules/scoped-config/index.ts +0 -17
  534. package/src/_modules/server/errors/errors.control-service.spec.ts +0 -246
  535. package/src/_modules/server/errors/errors.control-service.ts +0 -100
  536. package/src/_modules/server/errors/errors.controller.spec.ts +0 -340
  537. package/src/_modules/server/errors/errors.controller.ts +0 -559
  538. package/src/_modules/server/errors/errors.data-service.spec.ts +0 -480
  539. package/src/_modules/server/errors/errors.data-service.ts +0 -867
  540. package/src/_modules/server/index.ts +0 -40
  541. package/src/_modules/server/safe-diagnostic/safe-diagnostic-cause.type-enum.ts +0 -8
  542. package/src/_modules/server/safe-diagnostic/safe-diagnostic-stage.type-enum.ts +0 -20
  543. package/src/_modules/server/safe-diagnostic/safe-diagnostic.control-service.spec.ts +0 -124
  544. package/src/_modules/server/safe-diagnostic/safe-diagnostic.control-service.ts +0 -99
  545. package/src/_modules/server/safe-diagnostic/safe-diagnostic.interface.ts +0 -20
  546. package/src/_modules/server/server-status/db-readiness-probe-code.type-enum.ts +0 -13
  547. package/src/_modules/server/server-status/db-readiness-probe-stage.type-enum.ts +0 -7
  548. package/src/_modules/server/server-status/db-readiness-probe.control-service.spec.ts +0 -235
  549. package/src/_modules/server/server-status/db-readiness-probe.control-service.ts +0 -158
  550. package/src/_modules/server/server-status/db-readiness-probe.interface.ts +0 -20
  551. package/src/_modules/server/server-status/server-status-snapshot.control-service.spec.ts +0 -70
  552. package/src/_modules/server/server-status/server-status-snapshot.control-service.ts +0 -17
  553. package/src/_modules/server/server-status/server-status-snapshot.data-service.spec.ts +0 -77
  554. package/src/_modules/server/server-status/server-status-snapshot.data-service.ts +0 -37
  555. package/src/_modules/server/server-status/server-status.control-service.spec.ts +0 -672
  556. package/src/_modules/server/server-status/server-status.control-service.ts +0 -491
  557. package/src/_modules/server/server-status/server-status.controller.spec.ts +0 -276
  558. package/src/_modules/server/server-status/server-status.controller.ts +0 -336
  559. package/src/_modules/socket/_enums/socket-security.enum.ts +0 -11
  560. package/src/_modules/socket/_models/socket-client-service-params.control-model.spec.ts +0 -32
  561. package/src/_modules/socket/_models/socket-client-service-params.control-model.ts +0 -22
  562. package/src/_modules/socket/_models/socket-presence.control-model.spec.ts +0 -165
  563. package/src/_modules/socket/_models/socket-presence.control-model.ts +0 -211
  564. package/src/_modules/socket/_models/socket-server-service-params.control-model.spec.ts +0 -69
  565. package/src/_modules/socket/_models/socket-server-service-params.control-model.ts +0 -33
  566. package/src/_modules/socket/_services/socket-client.service.spec.ts +0 -15
  567. package/src/_modules/socket/_services/socket-client.service.ts +0 -260
  568. package/src/_modules/socket/_services/socket-server.service.spec.ts +0 -272
  569. package/src/_modules/socket/_services/socket-server.service.ts +0 -1037
  570. package/src/_modules/socket/app-extended.integration.spec.ts +0 -85
  571. package/src/_modules/socket/app-extended.server.ts +0 -648
  572. package/src/_modules/socket/index.ts +0 -42
  573. package/src/_modules/test/get-test-routing-module.util.spec.ts +0 -28
  574. package/src/_modules/test/get-test-routing-module.util.ts +0 -23
  575. package/src/_modules/test/index.ts +0 -12
  576. package/src/_modules/test/test.controller.spec.ts +0 -72
  577. package/src/_modules/test/test.controller.ts +0 -115
  578. package/src/_modules/test-email-sink/_collections/test-email-pattern.const.ts +0 -10
  579. package/src/_modules/test-email-sink/_models/data-models/dynts-sent-test-mail.data-model.ts +0 -41
  580. package/src/_modules/test-email-sink/_services/dynts-test-email-sink.service.spec.ts +0 -112
  581. package/src/_modules/test-email-sink/_services/dynts-test-email-sink.service.ts +0 -141
  582. package/src/_modules/test-email-sink/get-sent-mail-routing-module.util.ts +0 -29
  583. package/src/_modules/test-email-sink/index.ts +0 -11
  584. package/src/_modules/test-email-sink/test-email-sink.controller.ts +0 -83
  585. package/src/_modules/usage/get-usage-routing-module.util.ts +0 -23
  586. package/src/_modules/usage/index.ts +0 -15
  587. package/src/_modules/usage/usage.controller.spec.ts +0 -106
  588. package/src/_modules/usage/usage.controller.ts +0 -140
  589. package/src/_modules/usage/usage.data-service.spec.ts +0 -332
  590. package/src/_modules/usage/usage.data-service.ts +0 -185
  591. package/src/_services/base/api.service-base.spec.ts +0 -125
  592. package/src/_services/base/api.service-base.ts +0 -75
  593. package/src/_services/base/archive-data.service.spec.ts +0 -209
  594. package/src/_services/base/archive-data.service.ts +0 -228
  595. package/src/_services/base/data.service.spec.ts +0 -784
  596. package/src/_services/base/data.service.ts +0 -2792
  597. package/src/_services/base/db.service.encryption.spec.ts +0 -76
  598. package/src/_services/base/db.service.spec.ts +0 -160
  599. package/src/_services/base/db.service.ts +0 -1698
  600. package/src/_services/base/singleton.service-base.spec.ts +0 -28
  601. package/src/_services/base/singleton.service-base.ts +0 -24
  602. package/src/_services/base/singleton.service.spec.ts +0 -114
  603. package/src/_services/base/singleton.service.ts +0 -38
  604. package/src/_services/core/api.service.spec.ts +0 -187
  605. package/src/_services/core/api.service.ts +0 -627
  606. package/src/_services/core/auth.service.spec.ts +0 -159
  607. package/src/_services/core/auth.service.ts +0 -174
  608. package/src/_services/core/collection-growth-monitor.service.spec.ts +0 -119
  609. package/src/_services/core/collection-growth-monitor.service.ts +0 -234
  610. package/src/_services/core/db-stats.service.ts +0 -104
  611. package/src/_services/core/diagnostics.service.spec.ts +0 -44
  612. package/src/_services/core/diagnostics.service.ts +0 -158
  613. package/src/_services/core/email.service.spec.ts +0 -85
  614. package/src/_services/core/email.service.ts +0 -757
  615. package/src/_services/core/event-loop-diag.service.spec.ts +0 -22
  616. package/src/_services/core/event-loop-diag.service.ts +0 -144
  617. package/src/_services/core/global.service.spec.ts +0 -292
  618. package/src/_services/core/global.service.ts +0 -488
  619. package/src/_services/core/memory-guard.service.spec.ts +0 -245
  620. package/src/_services/core/memory-guard.service.ts +0 -481
  621. package/src/_services/core/migration-runner.service.spec.ts +0 -91
  622. package/src/_services/core/migration-runner.service.ts +0 -106
  623. package/src/_services/core/mongo-transaction.control-service.spec.ts +0 -165
  624. package/src/_services/core/mongo-transaction.control-service.ts +0 -148
  625. package/src/_services/core/request-hunter.service.spec.ts +0 -124
  626. package/src/_services/core/request-hunter.service.ts +0 -157
  627. package/src/_services/core/request-telemetry.control-service.spec.ts +0 -217
  628. package/src/_services/core/request-telemetry.control-service.ts +0 -381
  629. package/src/_services/core/service-collection.service.spec.ts +0 -46
  630. package/src/_services/core/service-collection.service.ts +0 -6
  631. package/src/_services/route/controller.service.spec.ts +0 -53
  632. package/src/_services/route/controller.service.ts +0 -148
  633. package/src/_services/route/routing-module.service.spec.ts +0 -98
  634. package/src/_services/route/routing-module.service.ts +0 -339
  635. package/src/_services/server/app-safe-diagnostic.spec.ts +0 -124
  636. package/src/_services/server/app.server-retention.spec.ts +0 -106
  637. package/src/_services/server/app.server.ts +0 -1979
  638. package/src/_services/shared.static-service.spec.ts +0 -133
  639. package/src/_services/shared.static-service.ts +0 -107
  640. package/src/index.ts +0 -120
  641. package/tsconfig.app.json +0 -12
  642. package/tsconfig.json +0 -42
@@ -1,51 +0,0 @@
1
- import * as Express from 'express';
2
-
3
- import { DyFM_Log } from '@futdevpro/fsm-dynamo';
4
-
5
- import { DyNTS_global_settings } from './global-settings.const';
6
- import { DyNTS_MemoryGuard } from '../_services/core/memory-guard.service';
7
-
8
- /**
9
- * Auto-load-shed Express-middleware (BFR-OVERSEER-009 maradék — a MemoryGuard self-heal rétege).
10
- *
11
- * CRITICAL memória-nyomásnál (`DyNTS_MemoryGuard.shouldShedLoad()` — heap-% VAGY GC-thrash küszöb
12
- * felett) az új, NEM-esszenciális kéréseket gyors **503 + Retry-After**-rel ejti, mielőtt azok
13
- * tovább terhelnék a heap-et — a GC levegőhöz jut, a death-spiral (2026-07-05 Overseer-eset:
14
- * GC 100%, event-loop blokk, restart-immún wedge) megelőzhető.
15
- *
16
- * - **Opt-in:** csak `memoryGuard.loadShedEnabled: true` esetén mountolódik (ops-döntés).
17
- * - **Esszenciális-kivétel:** a `loadShedExemptPathParts` path-részekre (healthcheck/readiness/
18
- * status/diag) SOSEM shed-el — különben a restart-policy health-probe-ját ölné meg (öngól).
19
- * - A shed-döntés kérésenként olcsó (in-memory pressure-olvasás, nincs I/O).
20
- */
21
- export function DyNTS_createLoadShedMiddleware(): Express.Handler {
22
- const exemptParts: string[] =
23
- DyNTS_global_settings.memoryGuard?.loadShedExemptPathParts ?? ['/health', '/readiness', '/status', '/diag'];
24
-
25
- let lastShedLogAt: number = 0;
26
-
27
- return (req: Express.Request, res: Express.Response, next: Express.NextFunction): void => {
28
- // esszenciális útvonal → soha nem shed-elünk
29
- if (exemptParts.some((part: string): boolean => req.path.includes(part))) {
30
- next();
31
- return;
32
- }
33
-
34
- if (DyNTS_MemoryGuard.getInstance().shouldShedLoad()) {
35
- // log-throttle: shed-viharban sem árasztjuk el a logot (10s-enként egy jelzés)
36
- const now: number = Date.now();
37
- if (now - lastShedLogAt > 10000) {
38
- lastShedLogAt = now;
39
- DyFM_Log.warn(
40
- `[load-shed] CRITICAL memory pressure — shedding non-essential requests (503). path: ${req.path}`
41
- );
42
- }
43
-
44
- res.status(503).setHeader('Retry-After', '10');
45
- res.send({ message: 'Server is under critical memory pressure. Retry shortly.' });
46
- return;
47
- }
48
-
49
- next();
50
- };
51
- }
@@ -1,52 +0,0 @@
1
- import { shouldForceMongoReconnect, MongoReconnectState } from './mongo-reconnect-guard.util';
2
-
3
- /**
4
- * A Mongo reconnect-guard PURE döntés-magjának unit-tesztjei. A helyesség kritikus, mert ez dönti
5
- * el, hogy egy futó service force-reconnectolja-e a Mongo-kapcsolatát (disconnect+connect →
6
- * re-resolve). Healthy connection-t SOHA nem szabad bántani; csak tartós nem-connected + grace +
7
- * cooldown letelt esetén szabad force-reconnectolni.
8
- */
9
- describe('| mongo-reconnect-guard shouldForceMongoReconnect', () => {
10
- const base: MongoReconnectState = {
11
- readyState: 0,
12
- msSinceUnhealthy: 60_000, // 60s unhealthy (a 30s grace fölött)
13
- unhealthyGraceMs: 30_000,
14
- reconnectInFlight: false,
15
- msSinceLastReconnect: Number.POSITIVE_INFINITY,
16
- reconnectCooldownMs: 20_000,
17
- };
18
-
19
- it('| connected (readyState=1) → SOHA nem reconnect (a healthy connection-t nem bántjuk)', () => {
20
- expect(shouldForceMongoReconnect({ ...base, readyState: 1 }).reconnect).toBe(false);
21
- });
22
-
23
- it('| connecting (readyState=2) → nem reconnect (hagyjuk a drivert befejezni)', () => {
24
- expect(shouldForceMongoReconnect({ ...base, readyState: 2 }).reconnect).toBe(false);
25
- });
26
-
27
- it('| disconnected + grace + cooldown letelt + nincs in-flight → RECONNECT', () => {
28
- const d = shouldForceMongoReconnect({ ...base, readyState: 0 });
29
- expect(d.reconnect).toBe(true);
30
- expect(d.reason).toContain('re-resolve');
31
- });
32
-
33
- it('| disconnecting (readyState=3) ugyanígy → RECONNECT (tartós nem-connected)', () => {
34
- expect(shouldForceMongoReconnect({ ...base, readyState: 3 }).reconnect).toBe(true);
35
- });
36
-
37
- it('| grace-en BELÜL → nem reconnect (hagyjuk a driver saját reconnect-jét előbb)', () => {
38
- expect(shouldForceMongoReconnect({ ...base, msSinceUnhealthy: 10_000 }).reconnect).toBe(false);
39
- });
40
-
41
- it('| cooldown-on belül (frissen reconnectoltunk) → nem reconnect (anti-thrash)', () => {
42
- expect(shouldForceMongoReconnect({ ...base, msSinceLastReconnect: 5_000 }).reconnect).toBe(false);
43
- });
44
-
45
- it('| már van in-flight reconnect → nem indítunk másikat', () => {
46
- expect(shouldForceMongoReconnect({ ...base, reconnectInFlight: true }).reconnect).toBe(false);
47
- });
48
-
49
- it('| pontosan a grace-küszöbön (msSinceUnhealthy === grace) → RECONNECT', () => {
50
- expect(shouldForceMongoReconnect({ ...base, msSinceUnhealthy: 30_000, unhealthyGraceMs: 30_000 }).reconnect).toBe(true);
51
- });
52
- });
@@ -1,172 +0,0 @@
1
- import { DyFM_Log, second } from '@futdevpro/fsm-dynamo';
2
-
3
- /**
4
- * DyNTS Mongo reconnect-guard (2026-06-20) — TÚLÉLI a Mongo-konténer IP-VÁLTÁSÁT.
5
- *
6
- * PROBLÉMA (élőben, 2026-06-19): a MongoDB-driver a hostnevet (`mongodb`) connect-kor EGYSZER
7
- * resolválja és cache-eli az IP-t (pl. 172.18.0.20); standalone-nál disconnect után UGYANAZT az
8
- * IP-t pingeli, NEM re-resolve-ol. Ha a Mongo-konténert recreate-elik (új docker-network IP), a
9
- * driver örökre a HALOTT IP-n lóg → `connect ECONNREFUSED <oldIp>:29017` + `buffering timed out`,
10
- * és a service magától SOHA nem áll vissza (csak külső restart-tal). Ez a 2026-06-19 incidens fél
11
- * test-stacket levitt (auth/ftp/helocia/futdevpro/… mind a régi Mongo-IP-n ragadt).
12
- *
13
- * MEGOLDÁS: a guard figyeli a `mongoose.connection.readyState`-et; ha TARTÓSAN nem-connected
14
- * (a driver saját reconnect-grace-e UTÁN is), **TELJES `disconnect()` + `connect()`-et** csinál
15
- * → ÚJ MongoClient → ÚJ DNS-resolve → új IP → reconnect. Így minden DyNTS_App-service magától
16
- * túléli a Mongo IP-váltását, KÜLSŐ beavatkozás nélkül. Best-effort, sose dob; csak konténer-IP-
17
- * frissítés, NEM törli/írja az adatot.
18
- *
19
- * SAFE always-on: egy app újracsatlakozása a SAJÁT DB-jéhez korrekt, nem-destruktív viselkedés
20
- * (nincs az infra-restart-érzékenység, ami a külső watchdog-oknál — FR-229/237). Csak akkor
21
- * avatkozik be, ha readyState !== 1 a grace + cooldown letelte UTÁN is; healthy connection-t (===1)
22
- * SOHA nem bánt.
23
- *
24
- * A döntés-mag (`shouldForceMongoReconnect`) PURE + unit-tesztelt; a futtató injektált dep-ekkel
25
- * dolgozik (readyState-olvasás / reconnect / log) a tesztelhetőségért.
26
- */
27
-
28
- /** A pure döntés inputja (minden numerikus → determinisztikus + tesztelhető). */
29
- export interface MongoReconnectState {
30
- /** mongoose.connection.readyState: 0=disconnected, 1=connected, 2=connecting, 3=disconnecting. */
31
- readyState: number;
32
- /** Mióta (ms) nem-connected a readyState (0, ha épp connected). */
33
- msSinceUnhealthy: number;
34
- /** Grace: ennyi ideig hagyjuk a drivert SAJÁT magát visszahozni, mielőtt force-reconnectolnánk. */
35
- unhealthyGraceMs: number;
36
- /** Épp folyamatban van-e már egy force-reconnect (ne torlódjon). */
37
- reconnectInFlight: boolean;
38
- /** Mióta (ms) volt az utolsó force-reconnect (Infinity, ha még nem volt). */
39
- msSinceLastReconnect: number;
40
- /** Két force-reconnect közti minimum (anti-thrash). */
41
- reconnectCooldownMs: number;
42
- }
43
-
44
- /** A pure döntés eredménye. */
45
- export interface MongoReconnectDecision {
46
- reconnect: boolean;
47
- reason: string;
48
- }
49
-
50
- /**
51
- * PURE döntés: kell-e force-reconnect. Healthy (===1) / connecting (===2) / in-flight / grace-en
52
- * vagy cooldown-on belül → NEM. Csak tartós nem-connected (disconnected/disconnecting) + grace és
53
- * cooldown letelt + nincs in-flight → IGEN.
54
- */
55
- export function shouldForceMongoReconnect(s: MongoReconnectState): MongoReconnectDecision {
56
- if (s.readyState === 1) {
57
- return { reconnect: false, reason: 'connected (readyState=1)' };
58
- }
59
- if (s.readyState === 2) {
60
- return { reconnect: false, reason: 'connecting (readyState=2) — letting the driver finish' };
61
- }
62
- if (s.reconnectInFlight) {
63
- return { reconnect: false, reason: 'a force-reconnect is already in flight' };
64
- }
65
- if (s.msSinceUnhealthy < s.unhealthyGraceMs) {
66
- return {
67
- reconnect: false,
68
- reason: `unhealthy for ${Math.round(s.msSinceUnhealthy / 1000)}s (< ${Math.round(s.unhealthyGraceMs / 1000)}s grace) — letting the driver self-heal first`,
69
- };
70
- }
71
- if (s.msSinceLastReconnect < s.reconnectCooldownMs) {
72
- return {
73
- reconnect: false,
74
- reason: `last force-reconnect ${Math.round(s.msSinceLastReconnect / 1000)}s ago (< ${Math.round(s.reconnectCooldownMs / 1000)}s cooldown)`,
75
- };
76
- }
77
- return {
78
- reconnect: true,
79
- reason: `Mongo connection unhealthy (readyState=${s.readyState}) for ${Math.round(s.msSinceUnhealthy / 1000)}s past grace — forcing disconnect+connect to re-resolve the host IP`,
80
- };
81
- }
82
-
83
- /** Injektált függőségek a futtatóhoz (best-effort; a futtató sose dob). */
84
- export interface MongoReconnectGuardDeps {
85
- /** A jelenlegi `mongoose.connection.readyState`. */
86
- getReadyState: () => number;
87
- /**
88
- * Force-reconnect: `disconnect()` majd `connect(uri, opts)` — ÚJ MongoClient → ÚJ DNS-resolve.
89
- * Dobhat (a connect elbukhat, ha a Mongo épp tényleg down) — a futtató elkapja.
90
- */
91
- reconnect: () => Promise<void>;
92
- /** Log. */
93
- log: (msg: string) => void;
94
- /** Tick-intervallum (ms). Default 10s. */
95
- intervalMs?: number;
96
- /** Grace, amíg a driver saját reconnect-jét várjuk (ms). Default 30s. */
97
- unhealthyGraceMs?: number;
98
- /** Cooldown két force-reconnect közt (ms). Default 20s. */
99
- reconnectCooldownMs?: number;
100
- }
101
-
102
- /**
103
- * Elindítja a periodikus reconnect-guard-ot. A visszaadott függvény leállítja (teszt/teardown).
104
- * `.unref()` — nem tartja életben az event-loop-ot.
105
- */
106
- export function startMongoReconnectGuard(deps: MongoReconnectGuardDeps): () => void {
107
- const intervalMs: number = deps.intervalMs ?? 10 * second;
108
- const unhealthyGraceMs: number = deps.unhealthyGraceMs ?? 30 * second;
109
- const reconnectCooldownMs: number = deps.reconnectCooldownMs ?? 20 * second;
110
-
111
- let unhealthySinceMs: number | null = null;
112
- let lastReconnectAtMs: number | null = null;
113
- let inFlight: boolean = false;
114
- let ticking: boolean = false;
115
-
116
- const tick = async (): Promise<void> => {
117
- if (ticking) { return; }
118
- ticking = true;
119
- try {
120
- const nowMs: number = Date.now();
121
- const readyState: number = deps.getReadyState();
122
-
123
- if (readyState === 1) {
124
- if (unhealthySinceMs !== null) {
125
- deps.log(`[mongo-reconnect-guard] Mongo connection healthy again (was unhealthy ${Math.round((nowMs - unhealthySinceMs) / 1000)}s)`);
126
- }
127
- unhealthySinceMs = null;
128
- return;
129
- }
130
-
131
- // Nem-connected: indítsuk/folytassuk az unhealthy-órát.
132
- if (unhealthySinceMs === null) { unhealthySinceMs = nowMs; }
133
-
134
- const decision: MongoReconnectDecision = shouldForceMongoReconnect({
135
- readyState: readyState,
136
- msSinceUnhealthy: nowMs - unhealthySinceMs,
137
- unhealthyGraceMs: unhealthyGraceMs,
138
- reconnectInFlight: inFlight,
139
- msSinceLastReconnect: lastReconnectAtMs === null ? Number.POSITIVE_INFINITY : nowMs - lastReconnectAtMs,
140
- reconnectCooldownMs: reconnectCooldownMs,
141
- });
142
-
143
- if (!decision.reconnect) { return; }
144
-
145
- deps.log(`[mongo-reconnect-guard] ${decision.reason}`);
146
- inFlight = true;
147
- lastReconnectAtMs = nowMs;
148
- try {
149
- await deps.reconnect();
150
- deps.log('[mongo-reconnect-guard] force-reconnect dispatched ✓ (re-resolved host; awaiting connection open)');
151
- } catch (e: unknown) {
152
- // A connect elbukhat, ha a Mongo épp tényleg elérhetetlen — nem baj, a következő tick
153
- // (cooldown után) újrapróbál; amint a Mongo új IP-n elérhető, a re-resolve becsatlakozik.
154
- deps.log(`[mongo-reconnect-guard] force-reconnect attempt failed (will retry after cooldown): ${e instanceof Error ? e.message : String(e)}`);
155
- } finally {
156
- inFlight = false;
157
- }
158
- } catch (e: unknown) {
159
- deps.log(`[mongo-reconnect-guard] tick error (non-fatal): ${e instanceof Error ? e.message : String(e)}`);
160
- } finally {
161
- ticking = false;
162
- }
163
- };
164
-
165
- const handle: NodeJS.Timeout = setInterval((): void => { void tick(); }, intervalMs);
166
- if (typeof handle.unref === 'function') { handle.unref(); }
167
- DyFM_Log.info(
168
- `[mongo-reconnect-guard] started — check every ${Math.round(intervalMs / 1000)}s, `
169
- + `force disconnect+reconnect after ${Math.round(unhealthyGraceMs / 1000)}s sustained-unhealthy (re-resolves host IP), cooldown ${Math.round(reconnectCooldownMs / 1000)}s`,
170
- );
171
- return (): void => { clearInterval(handle); };
172
- }
@@ -1,218 +0,0 @@
1
- import {
2
- classifyNpmTokenProbe,
3
- extractTokenFromNpmrc,
4
- classifyNpmTokenShape,
5
- describeNpmTokenState,
6
- DyNTS_NpmTokenShape,
7
- DyNTS_NpmTokenState,
8
- } from './npm-token-check.util';
9
-
10
- /**
11
- * FR-320 spec — npm-token allapot-osztalyozo.
12
- *
13
- * MIERT SZAMIT (2026-08-20..22, valos incidens): a flotta npm-tokenje lejart, majd egy 2FA-bypass
14
- * jog NELKULI pot-token kerult be. A kovetkezmeny NAPOKIG tartott, es MINDENHOL `E404`-kent
15
- * jelentkezett — privat csomagnal ugyanis az npm a jogosulatlan kerest 404-gyel utasitja el, NEM
16
- * 401-gyel. Igy a "nincs ilyen csomag", a "lejart kulcs" es a "rossz jogu kulcs"
17
- * MEGKULONBOZTETHETETLEN volt.
18
- *
19
- * A kulcs-diszkriminator a `/-/whoami`: az NEM csomag-fuggo, ezert nem esik bele a privat-404
20
- * elrejtesbe.
21
- */
22
- describe('| FR-320 — npm-token allapot-osztalyozo', () => {
23
-
24
- describe('| alak-ellenorzes (halozat NELKUL)', () => {
25
- it('| ures / hianyzo ertek -> missing', () => {
26
- expect(classifyNpmTokenShape(undefined)).toBe(DyNTS_NpmTokenShape.missing);
27
- expect(classifyNpmTokenShape(null)).toBe(DyNTS_NpmTokenShape.missing);
28
- expect(classifyNpmTokenShape('')).toBe(DyNTS_NpmTokenShape.missing);
29
- expect(classifyNpmTokenShape(' ')).toBe(DyNTS_NpmTokenShape.missing);
30
- });
31
-
32
- /** A leggyakoribb operatori hiba: a TELJES .npmrc-sor kerul a token helyere. */
33
- it('| a bemasolt .npmrc-sor -> malformed', () => {
34
- expect(classifyNpmTokenShape('//registry.npmjs.org/:_authToken=npm_abcdefghijklmnopqrstuvwxyz'))
35
- .toBe(DyNTS_NpmTokenShape.malformed);
36
- });
37
-
38
- it('| bennragadt idezojel / whitespace -> malformed', () => {
39
- expect(classifyNpmTokenShape('"npm_abcdefghijklmnopqrstuvwxyz"')).toBe(DyNTS_NpmTokenShape.malformed);
40
- expect(classifyNpmTokenShape('npm_abcdefghij klmnopqrstuvwxyz')).toBe(DyNTS_NpmTokenShape.malformed);
41
- });
42
-
43
- it('| nyilvanvaloan tul rovid ertek -> malformed', () => {
44
- expect(classifyNpmTokenShape('changeme')).toBe(DyNTS_NpmTokenShape.malformed);
45
- });
46
-
47
- /**
48
- * A regi, prefix NELKULI (UUID-alaku) tokenek MEG ervenyesek lehetnek. Inkabb engedjunk at egy
49
- * kesobb 401-et kapo tokent, mint hogy egy jot elutasitsunk helyi heurisztikaval.
50
- */
51
- it('| npm_ prefixu ES prefix nelkuli hosszu ertek is plausible', () => {
52
- expect(classifyNpmTokenShape('npm_0123456789abcdefghijklmnopqrstuvwxyz')).toBe(DyNTS_NpmTokenShape.plausible);
53
- expect(classifyNpmTokenShape('01234567-89ab-cdef-0123-456789abcdef')).toBe(DyNTS_NpmTokenShape.plausible);
54
- });
55
- });
56
-
57
- describe('| halozati osztalyozas', () => {
58
- it('| 401 -> invalid (lejart / visszavont / rossz)', () => {
59
- expect(classifyNpmTokenProbe({ whoamiStatus: 401 })).toBe(DyNTS_NpmTokenState.invalid);
60
- });
61
-
62
- /**
63
- * A LENYEGI allitas: elo token (whoami 200) + scope-olt csomag 404 -> NEM "nincs ilyen csomag",
64
- * hanem JOGOSULTSAG-hiany. Pontosan ez volt megkulonboztethetetlen az incidensben.
65
- */
66
- it('| elo token + csomag-404 -> no-scope-access (NEM invalid, NEM hianyzo csomag)', () => {
67
- expect(classifyNpmTokenProbe({ whoamiStatus: 200, scopedPackageStatus: 404 }))
68
- .toBe(DyNTS_NpmTokenState.noScopeAccess);
69
- expect(classifyNpmTokenProbe({ whoamiStatus: 200, scopedPackageStatus: 403 }))
70
- .toBe(DyNTS_NpmTokenState.noScopeAccess);
71
- });
72
-
73
- it('| elo token + csomag-200 -> ok', () => {
74
- expect(classifyNpmTokenProbe({ whoamiStatus: 200, scopedPackageStatus: 200 }))
75
- .toBe(DyNTS_NpmTokenState.ok);
76
- });
77
-
78
- it('| csomag-proba nelkul, elo tokennel -> ok', () => {
79
- expect(classifyNpmTokenProbe({ whoamiStatus: 200 })).toBe(DyNTS_NpmTokenState.ok);
80
- });
81
-
82
- /** A 2FA-bypass hianya read-only probaval NEM latszik — csak egy mar elbukott publishbol. */
83
- it('| elo token + EOTP publish-hiba -> missing-publish-right (a 2FA-bypass hianya)', () => {
84
- expect(classifyNpmTokenProbe({ whoamiStatus: 200, publishErrorCode: 'EOTP' }))
85
- .toBe(DyNTS_NpmTokenState.missingPublishRight);
86
- });
87
-
88
- /**
89
- * NEGATIV allitas, ami a legfontosabb: ha a proba EL SEM JUTOTT a registryig, akkor NEM
90
- * mondhatjuk, hogy a token rossz. A meres hianya nem bizonyitek.
91
- */
92
- it('| elerhetetlen registry -> unknown, NEM invalid', () => {
93
- expect(classifyNpmTokenProbe({ whoamiStatus: null })).toBe(DyNTS_NpmTokenState.unknown);
94
- expect(classifyNpmTokenProbe({ whoamiStatus: null })).not.toBe(DyNTS_NpmTokenState.invalid);
95
- });
96
-
97
- it('| 5xx / rate-limit -> unknown (nem allitunk semmit a tokenrol)', () => {
98
- expect(classifyNpmTokenProbe({ whoamiStatus: 500 })).toBe(DyNTS_NpmTokenState.unknown);
99
- expect(classifyNpmTokenProbe({ whoamiStatus: 429 })).toBe(DyNTS_NpmTokenState.unknown);
100
- });
101
- });
102
-
103
- describe('| magyarazat', () => {
104
- it('| MINDEN allapothoz ad kovetkezo-lepest', () => {
105
- for (const state of Object.values(DyNTS_NpmTokenState)) {
106
- const text: string = describeNpmTokenState(state);
107
- expect(text.length).toBeGreaterThan(20);
108
- }
109
- });
110
-
111
- /** Az `invalid` magyarazatnak KI KELL MONDANIA a 404-es elrejtest — ez vitte felre a diagnozist. */
112
- it('| az invalid magyarazata figyelmeztet, hogy a hivoknal 404-kent latszik', () => {
113
- expect(describeNpmTokenState(DyNTS_NpmTokenState.invalid)).toContain('404');
114
- });
115
-
116
- it('| a missing-publish-right magyarazata megnevezi a 2FA-bypass-t', () => {
117
- expect(describeNpmTokenState(DyNTS_NpmTokenState.missingPublishRight)).toContain('2FA-bypass');
118
- });
119
- });
120
- });
121
-
122
-
123
- /**
124
- * FR-320b spec — a token FAJLBOL is feloldhato.
125
- *
126
- * MIERT (a sajat elso valtozatom hibaja): a util eloszor CSAK a `process.env.NPM_TOKEN`-t nezte, es
127
- * ezert a workstationomon `missing`-et adott — HOLOTT az npm ott mukodott, mert a token a
128
- * `~/.npmrc`-ben all. Ez HAMIS NEGATIV, es epp a legfontosabb helyeken (runner-kontener, hosztok)
129
- * sult volna el, ahol a token szinten FAJLBAN van.
130
- *
131
- * A `.npmrc`-t csak OLVASSUK — letrehozni tilos (flotta-szintu hard rule).
132
- */
133
- describe('| FR-320b — token kinyerese .npmrc-bol', () => {
134
-
135
- it('| a valodi .npmrc-alakbol kinyeri az erteket', () => {
136
- const content: string = '//registry.npmjs.org/:_authToken=npm_0123456789abcdefghijklmnop';
137
- expect(extractTokenFromNpmrc(content)).toBe('npm_0123456789abcdefghijklmnop');
138
- });
139
-
140
- it('| tobbsoros fajlbol a MEGFELELO registry sorat valasztja', () => {
141
- const content: string = [
142
- '# megjegyzes',
143
- '//npm.pkg.github.com/:_authToken=github_masik_token_ertek',
144
- '//registry.npmjs.org/:_authToken=npm_ez_a_helyes_ertek_1234',
145
- 'engine-strict=true',
146
- ].join('\n');
147
- expect(extractTokenFromNpmrc(content)).toBe('npm_ez_a_helyes_ertek_1234');
148
- });
149
-
150
- it('| a bennragadt idezojeleket levagja', () => {
151
- expect(extractTokenFromNpmrc('//registry.npmjs.org/:_authToken="npm_idezojelben_1234567890"'))
152
- .toBe('npm_idezojelben_1234567890');
153
- });
154
-
155
- /** NEGATIV: ne talaljunk ki tokent ott, ahol nincs. */
156
- it('| token nelkuli / megjegyzett tartalomra null', () => {
157
- expect(extractTokenFromNpmrc('engine-strict=true')).toBeNull();
158
- expect(extractTokenFromNpmrc('# //registry.npmjs.org/:_authToken=npm_megjegyzesben')).toBeNull();
159
- expect(extractTokenFromNpmrc('')).toBeNull();
160
- });
161
-
162
- it('| MAS registry sorat NEM veszi el', () => {
163
- expect(extractTokenFromNpmrc('//npm.pkg.github.com/:_authToken=github_token_ertek_123456')).toBeNull();
164
- });
165
- });
166
-
167
-
168
- /**
169
- * FR-320c spec — ELO token mellett a publish-oldali hiba MINDIG jogosultsag-hiany.
170
- *
171
- * MERVE (2026-08-22, valos publish-kimenet):
172
- * `npm error 404 Not Found - PUT https://registry.npmjs.org/@futdevpro%2fnts-dynamo`
173
- * — MIKOZBEN ugyanaz a token OLVASNI tudta a csomagot (a runner registry-auth probaja OK volt).
174
- *
175
- * Az npm a PUT-ra is 404-gyel valaszol, ha nincs IRASI jog (letezes-elrejtes). Enelkul a
176
- * megkulonboztetes nelkul ez "nincs ilyen csomag"-nak latszik — es epp ez vitte felre a diagnozist.
177
- */
178
- describe('| FR-320c — publish-oldali hibak elo token mellett', () => {
179
-
180
- it('| EOTP -> missing-publish-right (2FA-bypass)', () => {
181
- expect(classifyNpmTokenProbe({ whoamiStatus: 200, publishErrorCode: 'EOTP' }))
182
- .toBe(DyNTS_NpmTokenState.missingPublishRight);
183
- });
184
-
185
- it('| E403 -> missing-publish-right', () => {
186
- expect(classifyNpmTokenProbe({ whoamiStatus: 200, publishErrorCode: 'E403' }))
187
- .toBe(DyNTS_NpmTokenState.missingPublishRight);
188
- });
189
-
190
- /** A LENYEGI uj eset: PUT-ra kapott 404 elo tokennel = nincs irasi jog, NEM hianyzo csomag. */
191
- it('| E404 elo tokennel -> missing-publish-right, NEM hianyzo csomag', () => {
192
- expect(classifyNpmTokenProbe({ whoamiStatus: 200, publishErrorCode: 'E404' }))
193
- .toBe(DyNTS_NpmTokenState.missingPublishRight);
194
- });
195
-
196
- it('| kisbetus hibakodot is felismer', () => {
197
- expect(classifyNpmTokenProbe({ whoamiStatus: 200, publishErrorCode: 'e404' }))
198
- .toBe(DyNTS_NpmTokenState.missingPublishRight);
199
- });
200
-
201
- /** NEGATIV: publish-hiba NELKUL, olvasassal egyutt tovabbra is `ok`. */
202
- it('| publish-hiba nelkul tovabbra is ok', () => {
203
- expect(classifyNpmTokenProbe({ whoamiStatus: 200, scopedPackageStatus: 200 }))
204
- .toBe(DyNTS_NpmTokenState.ok);
205
- });
206
-
207
- /** NEGATIV: HALOTT token mellett a publish-hiba NEM minositheto jog-hianynak. */
208
- it('| 401-es tokennel a publish-hiba NEM missing-publish-right, hanem invalid', () => {
209
- expect(classifyNpmTokenProbe({ whoamiStatus: 401, publishErrorCode: 'E404' }))
210
- .toBe(DyNTS_NpmTokenState.invalid);
211
- });
212
-
213
- it('| a magyarazat KIMONDJA, hogy a PUT-404 nem hianyzo csomag', () => {
214
- const text: string = describeNpmTokenState(DyNTS_NpmTokenState.missingPublishRight);
215
- expect(text).toContain('404');
216
- expect(text).toContain('NEM hianyzo csomagot');
217
- });
218
- });