@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,38 +0,0 @@
1
- # FR-292 (szerver-fél) — a deployolt app-verzió minden válasz headerében
2
-
3
- **Dátum:** 2026-08-08 · **Csomag:** `@futdevpro/nts-dynamo`
4
-
5
- > A teljes (kliens+szerver) leírás a kliens-oldalon:
6
- > `NPM-packages/dynamo-ngx/__documentations/2026-08-08-fr292-app-update-watch.md`.
7
- > Ez a lap csak a szerver-fél szerződését rögzíti.
8
-
9
- ## Mit csinál
10
-
11
- Minden HTTP-válaszra rákerül a deployolt **app-verzió**:
12
-
13
- ```
14
- X-App-Version: 01.15.460
15
- Access-Control-Expose-Headers: Content-Length, Content-Type, X-App-Version
16
- ```
17
-
18
- A kliens (ngx-dynamo `DyNX_AppVersion_Interceptor`) ebből veszi észre, hogy a böngészőben
19
- **betöltött bundle elavult** — anélkül, hogy bárki pollingolna: a jelzés a már menő
20
- API-forgalmon utazik.
21
-
22
- ## Szerződés / döntések
23
-
24
- - **Default: BEKAPCSOLVA.** Informatív header, se PII, se belső részlet. Kikapcsolás:
25
- `DyNTS_global_settings.appVersionHeader = { enabled: false }`.
26
- - **A verzió hívásonként olvasódik** (getter, nem befagyasztott érték): a `systemVersion` az
27
- app-params betöltésekor áll be, ami a middleware felszerelése UTÁN történik. Befagyasztva
28
- örökre `unknown-version` maradna — pont a friss deployon hiányozna a jelzés.
29
- - **`unknown-version` esetén NINCS header.** Egy bizonytalan jelzés hamis „új verzió elérhető"
30
- riasztást szülne a kliensen; inkább hallgatunk.
31
- - **A CORS expose-listához hozzáfűz, nem felülír** (idempotensen). Enélkül a cross-origin
32
- kliens JS-e nem olvashatná ki a headert. Ezért a middleware a **CORS-mount UTÁN** települ
33
- — `initOpenExpress` és `initSecureExpress` egyaránt.
34
-
35
- ## Verifikáció
36
-
37
- `tsc` ✅ 0 hiba · unit ✅ **1634 spec, 0 failure** (ebből 8 új: expose-lista bővítés/idempotencia,
38
- ismeretlen verzió → nincs header de a lánc továbbmegy, hívásonkénti verzió-olvasás, egyedi header-név).
@@ -1,124 +0,0 @@
1
- # 🔴 `DyNTS_FieldEncryption_Util._transform` spread-elte a Mongoose-Documentet — a lista-endpointok burkot adtak vissza
2
-
3
- **Dátum:** 2026-08-14 · **Kérő:** `BFR-MASTERPROMPTER-027` · **Súlyosság:** high (funkcionálisan törött lista-UI)
4
-
5
- ---
6
-
7
- ## 1. A hiba
8
-
9
- ```ts
10
- // field-encryption.util.ts — ELŐTTE
11
- const result: any = Array.isArray(value) ? [ ...(value as any[]) ] : { ...(value as any) };
12
- ```
13
-
14
- Egy mongoose-**Document** adatai **nem saját mezők** — a belső `_doc`-ban ülnek. Ezért a `{ ...doc }`
15
- a **belső burkot** másolja (`$__`, `$isNew`, `_doc`), és az eredmény **már nem Document**, tehát a
16
- `JSON.stringify` sem hívja a `toJSON()`-ját. A kliens így ezt kapja:
17
-
18
- ```json
19
- [{ "$__": {...}, "$isNew": false, "_doc": { "_id": "…", "name": "…" } }]
20
- ```
21
-
22
- `_id` a legfelső szinten **nincs** → a fogyasztó minden id-alapú művelete elhasal.
23
-
24
- ### Élesben mért bizonyíték (`test.master-prompter.hu`, 2026-08-14)
25
-
26
- | endpoint | státusz | első elem KULCSAI | `_id` |
27
- |---|---|---|---|
28
- | `GET /api/flow/flow/get/:userId/:flowId` (egyedi) | 200 | `_id`, `userId`, `ownerId`, `name`, … | ✅ |
29
- | `GET /api/flow/flow/get-all-my/:userId` (**lista**) | 200 | **`$__`, `$isNew`, `_doc`** | ❌ **undefined** |
30
-
31
- Kliens-oldali tünet: a lista-kártyák linkje `/editor/undefined`, a törlés
32
- `DyNX_ApiService call "deleteFlow" ERROR: missing pathParam: "flowId"` dialógussal állt meg.
33
-
34
- ---
35
-
36
- ## 2. Miért CSAK a lista tört el — a mért aszimmetria
37
-
38
- A `DyNTS_DBService` **egyedi** olvasásai már ma is `toObject()`-tel adnak vissza sima objektumot
39
- (`getDataById`, `getDataByDependencyId`, `findByIdAndUpdate`, `findOneAndUpdate`, `createData`).
40
- A **lista/find metódusok NYERS Documentet** adnak tovább — kimérve **11 db**:
41
-
42
- `getDataListByIds` · `getDataListByDependencyId` · `getDataListByDependencyIds` · `getAll` ·
43
- `getDeletedDataList` · `trueDeleteAllData` · `searchData` · `findOne` · `find` · `findWithPaging` ·
44
- (`findLeanBatched` — ez `.lean()`-nel már sima objektumot ad)
45
-
46
- Titkosítás **nélkül** ez ártalmatlan: a nyers Document a `res.send`-en át a `toJSON()`-nal helyesen
47
- szerializálódik. `encrypt: true` mező esetén viszont a read-post-processor (`stringifyDataId` →
48
- `decryptDoc` → `_transform`) **spread-eli** a Documentet, és ezzel elrontja.
49
-
50
- ---
51
-
52
- ## 3. A javítás
53
-
54
- ```ts
55
- // UTÁNA
56
- const plain: any = this._toPlainIfDocument(value);
57
- const result: any = Array.isArray(plain) ? [ ...(plain as any[]) ] : { ...(plain as any) };
58
- ```
59
-
60
- `_toPlainIfDocument` a `$__` **saját mező** + `toJSON` függvény kettősével azonosít egy Documentet
61
- (pontosan az, ami a hibás payloadba kiszivárgott — mongoose-import nélküli, pontos diszkriminátor),
62
- és `toJSON()`-t hív rá.
63
-
64
- **Miért itt, és nem a 11 DB-metódusban:**
65
- 1. Ez az **egy pont** mind a 11 utat rendezi.
66
- 2. A 11 metódus visszatérési **típusát** megváltoztatni (Document → sima objektum) **minden modell
67
- minden fogyasztóját** érintené. Az itteni javítás viszont **csak az `encrypt: true` modelleket**
68
- érinti — ahol a `_transform` amúgy is **már ma is** sima (csak **rossz**) objektumot ad vissza.
69
- ⇒ **a változás nem tud elrontani olyat, ami ma működik.**
70
- 3. `toJSON()` (nem `toObject()`): a titkosítás bevezetése ELŐTT a nyers Document a `res.send`-en át a
71
- `JSON.stringify` → `toJSON()` úton szerializálódott — ez adja vissza **ugyanazt a kimeneti alakot**
72
- (schema-transzformok, virtuals, `__v` együtt).
73
-
74
- ---
75
-
76
- ## 4. 🔴 BLAST-RADIUS — a flotta érintettsége
77
-
78
- A defekt akkor él, ha **mind a három** teljesül: (a) a modellnek van `encrypt: true` mezője ·
79
- (b) a `FDP_CORE_DBCONTENT_CRYPT_KEY` be van állítva (kulcs nélkül a `decryptDoc` korán visszatér) ·
80
- (c) az olvasás **lista-metóduson** megy.
81
-
82
- | Projekt | Modell | Titkosított mezők | Állapot |
83
- |---|---|---|---|
84
- | **master-prompter** | `flow` | `flowSteps.prompt` | 🔴 **élesben igazoltan törött** |
85
- | **master-prompter** | `flow-run` | `results`, `sourceFlow`, `flowRunValues.value` | 🔴 ugyanaz az osztály |
86
- | **adventor** | `campaign` | `storyState`, `memory`, `epilogue` | ⚠️ ugyanaz az osztály — élesben nem mérve |
87
- | **adventor** | `generation` | `content`, `prompt` | ⚠️ ugyanaz az osztály — élesben nem mérve |
88
- | **fdp-token-service** | `token-purchase` | `requestIp`, `euVatNumber` (PII) | ⚠️ ugyanaz az osztály — élesben nem mérve |
89
- | **fdp-token-service** | `manual-invoice` | `realID`, `title`, `fullName`, `companyName`, … | ⚠️ ugyanaz az osztály — élesben nem mérve |
90
-
91
- ⇒ **6 modell, 3 projekt.** A master-prompteren kívül egyik sincs élesben visszamérve — ezeket a
92
- projektek `nts-dynamo`-bumpja után kell ellenőrizni (a lista-endpointjaik `_id`-t adnak-e).
93
- A `manual-invoice` és a `token-purchase` külön figyelmet érdemel: számlázási/PII adat.
94
-
95
- > **Miért nem tűnt fel eddig:** a szerver **200**-at ad, a válasz JSON-ként **érvényes** — csak épp a
96
- > burkot tartalmazza. A UI „üresnek"/működésképtelennek látszik, de sehol nincs hibajelzés.
97
- > Az MP-ben azért derült ki, mert az `e2e-feature` step (a 30m→60m timeout-emelés után) **most futott
98
- > le először végig**.
99
-
100
- ---
101
-
102
- ## 5. Kontroll-mérés — VALÓDI mongoose-Documenttel
103
-
104
- A regresszió-őr **szándékosan nem mockkal** dolgozik: a hiba pont abból eredt, hogy a Document adatai
105
- nem saját mezők — egy kézzel gyártott mock ezt a jellemzőt nem hordozza, tehát a mock-alapú teszt
106
- **akkor is zöld maradna**, ha a hiba visszakerülne. DB-kapcsolat nem kell: a `new Model({...})`
107
- offline is valódi Documentet ad.
108
-
109
- | Eset | A fix nélkül |
110
- |---|---|
111
- | a visszafejtett eredmény sima objektum (nincs `$__`/`$isNew`/`_doc`) | ❌ `Expected [ '$__', '_doc' ] not to contain '$__'` |
112
- | az `_id` megmarad | ❌ `az _id elveszett a transzform során: Expected undefined to be defined` |
113
- | a JSON-szerializált alak a valódi adatot adja | ❌ `… not to contain '_doc'` |
114
- | Document-**tömb** (lista-alak) minden eleme sima objektum, `_id`-vel | ❌ `… not to contain '_doc'` |
115
- | **összesen** | ❌ **4 FAILED** → javítva: ✅ **1644 specs, 0 failures** |
116
-
117
- A mezők helyes visszafejtését is asszertáljuk Documenten (top-level + beágyazott tömb-elem).
118
-
119
- ---
120
-
121
- ## 6. Adopció
122
-
123
- `@futdevpro/nts-dynamo` bump minden érintett szerver-projektben (master-prompter, adventor,
124
- fdp-token-service), majd a lista-endpointok visszamérése (`_id` jelen van-e a válaszban).
@@ -1,46 +0,0 @@
1
- # Dynamo NTS in-memory artifact compiler
2
-
3
- **Contract:** `dynts-artifact-compiler/1`
4
-
5
- **Release candidate:** `@futdevpro/nts-dynamo@1.15.144`
6
-
7
- ## Purpose
8
-
9
- The artifact compiler turns one already policy-validated TypeScript program into a self-contained JavaScript bundle
10
- for a classic browser Worker. It is a shared build capability, not a sandbox, an authorization layer or a source
11
- policy validator. Consumers must validate source before compilation and execute the output inside an independently
12
- enforced runtime boundary.
13
-
14
- ## Guarantees
15
-
16
- - source is supplied through an in-memory virtual entry;
17
- - output uses the asynchronous esbuild API with `bundle:true`, `platform:'browser'`, `format:'iife'` and
18
- `write:false`;
19
- - no sourcemap, embedded source content, legal comment file, plugin supplied by the caller or filesystem output;
20
- - the TypeScript AST is traversed before bundling, so unused imports cannot disappear through tree-shaking before
21
- policy evaluation;
22
- - only caller-allowlisted static package roots resolve from the supplied absolute dependency directory;
23
- - relative, absolute, re-export, import-equals, `require()` and dynamic `import()` module loads fail closed;
24
- - transitive modules resolve only through the installed dependency graph;
25
- - source and output byte limits, allowlist cardinality, package names and path fields have absolute Bedrock
26
- ceilings;
27
- - success returns exactly one JavaScript output with SHA-256 metadata;
28
- - errors return stable codes and optional line/column only, never esbuild message text, source excerpt or path.
29
-
30
- The output is deterministic for the same source, settings, installed lock graph, platform and compiler version. The
31
- consumer must therefore version and checksum the compiler version and dependency lock together with the bundle.
32
-
33
- ## Security boundary
34
-
35
- esbuild's own documentation explicitly states that esbuild is not a sandbox. This module never executes generated
36
- code, and successful compilation must not be interpreted as permission to run it. Direct relative/absolute, Node,
37
- HTTP or non-allowlisted imports fail because only package roots in `allowedPackages` can resolve from the virtual
38
- entry. Trusted allowed packages may resolve their own installed transitive graph.
39
-
40
- ## Verification
41
-
42
- The eight focused Bedrock specs cover deterministic output, a real bundled dependency, non-allowlisted imports,
43
- all supported static and dynamic module-load syntax, content-free syntax diagnostics, invalid request contracts and
44
- source/output budgets. Company Toolmaker is the first direct consumer under `BFR-CTM-008`. The request was
45
- initially recorded as `BFR-CTM-007`, but that identifier already belonged to the atomic Mongo transaction boundary;
46
- the correction preserves both trace histories.
@@ -1,82 +0,0 @@
1
- # Mongo transaction control service
2
-
3
- **Date:** 2026-08-18
4
- **Status:** implemented and verified
5
- **Bedrock capability:** atomic multi-document MongoDB business operation
6
-
7
- ## Purpose
8
-
9
- `DyNTS_MongoTransaction_ControlService` provides one reusable Dynamo NTS transaction boundary for consumers
10
- that must persist related state and audit records atomically. The first consumer is Company Toolmaker's
11
- approval-gated pipeline lifecycle, where a state transition and its immutable transition event must either both
12
- commit or both remain absent.
13
-
14
- The primitive owns transaction lifecycle and safety policy. It deliberately does not own a consuming product's
15
- business rules, collection schemas, idempotency contract or authorization decisions.
16
-
17
- ## Contract
18
-
19
- The caller supplies:
20
-
21
- - a non-empty, diagnostic-only `transactionName`;
22
- - a non-empty `issuer`;
23
- - an optional positive safe-integer `maxCommitTimeMs`;
24
- - an asynchronous task receiving the active Mongoose `ClientSession`.
25
-
26
- The service:
27
-
28
- 1. validates settings before allocating a session;
29
- 2. creates exactly one Mongoose session;
30
- 3. executes the task through `ClientSession.withTransaction`;
31
- 4. uses `snapshot` read concern, `majority` write concern and `primary` read preference;
32
- 5. returns the committed task value, including a legitimate `undefined` task value through an internal wrapper;
33
- 6. always attempts session cleanup after a session was created;
34
- 7. fails closed when no committed result is returned.
35
-
36
- Every MongoDB read or write participating in the atomic operation must explicitly receive the callback's
37
- session. Starting a transaction does not automatically attach the session to unrelated model calls.
38
-
39
- Mongoose may invoke the transaction task more than once when retrying a transient transaction error. The task
40
- must therefore keep all mutations inside the MongoDB transaction and must not send messages, call external
41
- mutation endpoints or perform any other non-transactional side effect. Such work belongs after a successful
42
- commit and requires its own idempotency contract.
43
-
44
- ## Stable failures and data minimization
45
-
46
- | Code | Meaning |
47
- |---|---|
48
- | `DyNTS|MONGO_TRANSACTION|SETTINGS_INVALID` | Required settings are absent or invalid. |
49
- | `DyNTS|MONGO_TRANSACTION|COMMIT_TIME_INVALID` | Commit budget is not a positive safe integer. |
50
- | `DyNTS|MONGO_TRANSACTION|SESSION_FAILED` | A MongoDB session could not be created. |
51
- | `DyNTS|MONGO_TRANSACTION|NO_COMMIT_RESULT` | The transaction callback produced no committed wrapper result. |
52
- | `DyNTS|MONGO_TRANSACTION|FAILED` | Transaction execution or commit failed. |
53
-
54
- Failure objects include only the transaction name and the JavaScript error class name. The original error
55
- message, stack, database payload and task input are not copied into the stable error, preventing accidental
56
- sensitive-data disclosure. Cleanup warnings likewise log only the transaction name and error class name.
57
-
58
- ## Deployment requirement
59
-
60
- MongoDB multi-document transactions require a replica set or a sharded cluster. Production and integration-test
61
- deployments using this primitive must therefore provide a transaction-capable MongoDB topology. A standalone
62
- MongoDB process must fail the operation rather than silently degrading to non-atomic writes.
63
-
64
- ## Verification
65
-
66
- The focused Jasmine suite covers successful commit and result forwarding, shared-session forwarding,
67
- transaction failure sanitization, pre-session validation, invalid commit-budget rejection, session-creation
68
- failure, missing commit result, cleanup failure tolerance and singleton access.
69
-
70
- Measured on 2026-08-18:
71
-
72
- - focused suite: 8 specs, 0 failures;
73
- - complete package suite: 1,653 specs, 0 failures, 146 explicitly pending specs;
74
- - TypeScript build: passed;
75
- - changed-file ESLint: passed without findings;
76
- - package-wide ESLint: completed with the repository's pre-existing warning baseline;
77
- - import validator: blocked by the existing Dynamo ESLint v9 flat-config incompatibility in unrelated files;
78
- - naming validator: reports the repository's existing 6,400-finding baseline in 230 files.
79
-
80
- The two convention-validator baselines are not introduced by this capability. The changed source files pass the
81
- direct ESLint gate, and the full compiler and regression suite are green. Repairing the repository-wide
82
- validator baseline is separate technical-debt work and must not be represented as completed by this change.
@@ -1,132 +0,0 @@
1
- # Standalone account security and privacy Bedrock
2
-
3
- **Date:** 2026-08-18
4
- **Status:** implemented and verified at package-contract level
5
- **Packages:** `@futdevpro/nts-dynamo/account-security`, `@futdevpro/nts-dynamo/privacy-lifecycle`
6
-
7
- ## Purpose and boundary
8
-
9
- This capability lets a Dynamo application own its identity and GDPR lifecycle without redirecting to, or
10
- depending on, a shared Fleet account. It is reusable Bedrock code, not a complete application account system.
11
- The consuming product remains responsible for typed persistence models, email delivery, organization and
12
- permission decisions, HTTP transport, secure browser credential handling, rate limiting, audit wiring and each
13
- product data-domain contributor.
14
-
15
- The modules deliberately expose direct Dynamo contracts. They do not add provider-swapping or replacement
16
- abstractions around Dynamo.
17
-
18
- ## Account-security contract
19
-
20
- ### Passwords
21
-
22
- `DyNTS_AccountPassword_ControlService` uses the versioned `dyn-scrypt-v1` format with a unique random salt,
23
- bounded scrypt parameters and timing-safe verification. It supports a SHA-256 common-password denylist and
24
- returns `needsRehash` when stored parameters differ from current policy. Malformed stored hashes and
25
- attacker-controlled work factors produce a safe negative result while still performing bounded dummy work.
26
- Passwords are never copied into errors.
27
-
28
- ### Email verification and password reset
29
-
30
- `DyNTS_AccountChallenge_ControlService` issues opaque 256-bit-or-stronger credentials for two isolated purposes:
31
- email verification and password reset. Only SHA-256 token hashes enter persistence. Issuing a replacement
32
- atomically revokes its active predecessor for the same subject and purpose. Consumption must be a single
33
- compare-and-set operation that validates purpose, active state and expiry before marking the record consumed.
34
- Raw tokens are returned only once after successful persistence.
35
-
36
- Enumeration-neutral register/reset responses are an HTTP-boundary responsibility: the service must not reveal
37
- whether an email exists. The application must rate-limit issue and consume operations and deliver the raw token
38
- only through an approved out-of-band channel.
39
-
40
- ### Sessions
41
-
42
- `DyNTS_AccountSession_ControlService` uses opaque random access and refresh credentials; no self-contained JWT is
43
- required. Only hashes are stored. An access credential resolves through an active server-side session, so
44
- logout, password change, account restriction and incident response can revoke it immediately.
45
-
46
- Refresh credentials are one-time ledger entries. Rotation uses an adapter-provided compare-and-set transaction.
47
- Reuse of an already consumed credential, including a concurrent rotation race, revokes the entire family. The
48
- user-safe session projection excludes subject, family and token hashes. The application decides authorization
49
- before calling individual or subject-wide revocation methods.
50
-
51
- The adapter contract is normative: session creation, token replacement and token-state changes must be atomic.
52
- An in-memory or multi-step production adapter would invalidate replay protection.
53
-
54
- ## Privacy lifecycle contract
55
-
56
- ### Data-subject requests
57
-
58
- `DyNTS_PrivacyLifecycle_ControlService` creates subject-, organization- and request-type-scoped idempotency
59
- hashes. The raw idempotency key is never stored. Each request has an explicit policy-supplied deadline and uses
60
- the following durable state family:
61
-
62
- `received → identity-verified → scoped → planned → executing → verifying → completed`
63
-
64
- Supported terminal/non-happy states are `partially-completed`, `rejected-with-reason`, `cancelled`,
65
- `failed-retryable` and `failed-terminal`. The current orchestrator produces `completed` or
66
- `partially-completed`; policy-specific rejection/cancellation/failure entry points remain consumer-owned until a
67
- shared cross-product transition contract is justified.
68
-
69
- Every registered contributor is ordered deterministically. Its durable `plan`, idempotent `execute` and
70
- read-only `verify` operations return content-free structured outcomes. Planning finishes and is persisted before
71
- the request enters `planned`; a planning failure becomes a resumable partial outcome without executing another
72
- domain against an incomplete plan set. Successful contributors are skipped on resume and failed contributors
73
- are retried. A retention result is valid only with an explicit matching basis code. Cross-subject reads return
74
- the same not-found response as an absent request.
75
-
76
- The consuming application must register contributors for identity, session, membership, pipelines/projects,
77
- agent sessions, artifacts, audit, support, subscription/billing and backup where those domains exist. Export
78
- contributors must generate machine-readable, checksummed, short-lived artifacts; erasure contributors must use
79
- hard delete by default and anonymize only where a documented retention basis requires it.
80
-
81
- ### Legal acceptance and consent
82
-
83
- `DyNTS_PrivacyLedger_ControlService` keeps legal acceptance separate from optional-purpose consent. Legal records
84
- bind the subject to an exact document type, version and SHA-256 checksum. Consent is append-only and scoped by
85
- purpose and policy version; withdrawal creates a new event instead of mutating history. The ledger projection
86
- returns both full history and the latest decision per purpose.
87
-
88
- Adapters must enforce tenant/subject scoping and idempotency uniqueness. Document and privacy-notice content is
89
- not stored in these event records; the checksum binds the separately versioned canonical document.
90
-
91
- ## Data-minimization and diagnostics
92
-
93
- - No password, bearer credential, challenge credential or raw idempotency key is persisted by these services.
94
- - Stable error messages contain no email address, token, password, file content, cell content or contributor
95
- exception text.
96
- - Session context is intentionally pre-redacted: device label plus IP and user-agent hashes only.
97
- - Contributor outcomes carry codes, counts, checksums and retention basis, not exported personal data.
98
- - User-facing request, consent and legal-acceptance views omit idempotency hashes and request fingerprints;
99
- those fields remain server-side persistence metadata.
100
- - Consumers must preserve this boundary in logs, audits, HTTP errors and analytics snapshots.
101
-
102
- ## Required production integrations
103
-
104
- Before a product can claim production readiness, it must provide and test:
105
-
106
- 1. transaction-safe MongoDB adapters for challenges, sessions, privacy requests and ledgers;
107
- 2. normalized unique identity records and verified-email privilege gates;
108
- 3. API rate limits for register, login, challenge issue/consume and refresh;
109
- 4. a reviewed browser credential transport/storage threat model;
110
- 5. organization membership and permission checks at every tenant-scoped route;
111
- 6. all applicable DSAR contributors, export delivery expiry and backup restore/re-erasure procedure;
112
- 7. content-redaction snapshots for logs, errors, analytics and audit events;
113
- 8. automated feature and cross-feature user-journey E2E coverage including cleanup.
114
-
115
- ## Verification
116
-
117
- Measured on 2026-08-18:
118
-
119
- - account password suite: 7 specs, 0 failures;
120
- - session suite: 10 specs, 0 failures;
121
- - one-time challenge suite: 5 specs, 0 failures;
122
- - privacy lifecycle suite: 7 specs, 0 failures;
123
- - privacy ledger suite: 5 specs, 0 failures;
124
- - complete package suite: 1,687 specs, 0 failures, 146 explicitly pending specs;
125
- - TypeScript build: passed;
126
- - changed-module ESLint: passed with zero warnings;
127
- - release tarball: local untracked `SKILLS.md` explicitly excluded by `.npmignore`;
128
- - package import validator: existing baseline, 82 findings in 76 files;
129
- - package naming validator: existing baseline, 101 findings in 68 files.
130
-
131
- The repository-wide convention findings predate this capability and are not represented as fixed. The new
132
- modules pass their direct compiler, lint and regression gates.
@@ -1,59 +0,0 @@
1
- # Dynamo NTS distributed rate-limit boundary
2
-
3
- **Contract:** `dynts-rate-limit/2`
4
-
5
- **Release candidate:** `@futdevpro/nts-dynamo@1.15.147`
6
-
7
- **Consumer trace:** `BFR-CTM-010`
8
-
9
- ## Purpose
10
-
11
- This Bedrock boundary makes one rate-limit decision atomic across application processes while keeping persistence
12
- application-owned. It replaces the former process-local-only middleware behavior without adding a replaceable
13
- framework abstraction: consumers use the published `@futdevpro/nts-dynamo/rate-limit` types and middleware
14
- directly and provide the storage adapter required by their deployment.
15
-
16
- ## Contract
17
-
18
- `DyNTS_RateLimit_Store_Interface.consume(...)` receives one opaque bucket key, the active limit and window, the
19
- positive request cost and a caller-supplied millisecond timestamp. It resolves one committed decision containing
20
- `allowed`, `remaining` and `resetAt`. A production host enables `requireSharedStore` and supplies:
21
-
22
- - a store advertising `storeKind: shared`;
23
- - an explicit opaque subject extractor;
24
- - an explicit stable endpoint-group extractor.
25
-
26
- Configuration fails closed when any of these requirements is absent. Runtime store exceptions and malformed
27
- store results become stable 503 errors without reflecting the bucket, the adapter exception or request content.
28
- Policy rejection remains a stable 429 and includes the committed reset interval in response headers.
29
-
30
- ## Security and privacy properties
31
-
32
- - The middleware never reads `x-forwarded-for` directly. Its local default uses Express `req.ip`, whose proxy
33
- trust policy belongs to the host; production still requires an explicit extractor.
34
- - Extractor exceptions, invalid callbacks, invalid clocks and malformed bucket components are converted to
35
- content-free errors.
36
- - Limits, windows, costs, timestamps, bucket component lengths and store results have hard numeric/structural
37
- bounds.
38
- - No raw storage key or adapter exception is placed in the generated error.
39
- - The shared-store interface carries opaque identifiers only. The consuming application is responsible for
40
- purpose-scoped pseudonymization and retention.
41
- - The module starts no timer, cleanup loop, polling process or background task. Local cleanup is caller-triggered.
42
-
43
- ## Semantics
44
-
45
- The provided in-memory implementation uses exact sliding-window timestamps. It exists for deterministic tests and
46
- explicitly single-instance development, not production. A shared implementation may use exact sliding-window
47
- semantics or a conservatively safe equivalent, but its read/prune/admit/write decision must be atomic. Concurrent
48
- requests for the final permit may produce exactly one successful decision.
49
-
50
- Weighted requests consume multiple permit units. An unsuccessful weighted request does not mutate the committed
51
- usage, so `remaining` can be positive but lower than the attempted cost.
52
-
53
- ## Verification
54
-
55
- The focused Bedrock suite covers singleton behavior, forwarding-header spoof resistance, deterministic window
56
- reset, weighted cost, subject/endpoint isolation, headers, policy precedence, invalid configuration atomicity,
57
- the production shared-store gate, cross-instance state, concurrent final-permit behavior, non-reflective store
58
- failure, malformed store results and explicit timer-free cleanup. Full-package compilation, tests, lint, import and
59
- naming validation are release gates for the candidate.
@@ -1,54 +0,0 @@
1
- # BFR-CTM-018 — content-free endpoint error boundary
2
-
3
- **Date:** 2026-08-22
4
- **Status:** implemented and package-verified; consumer adoption is recorded by the requesting project
5
- **Target:** `@futdevpro/nts-dynamo`
6
- **Contract:** `dynts-safe-diagnostic/1`
7
-
8
- ## Measured defect
9
-
10
- The shared `DyNTS_Endpoint_Params` error path constructed framework logs from route identity, path parameter
11
- values, raw `Error.message`, stack location and a request snapshot. The snapshot included URL, query, request
12
- metadata, header keys, IP address and an authorization-header shape. A plain error and a consumer global-handler
13
- rejection were also passed directly to Dynamo loggers. The primary raw log was unconditional, so disabling
14
- application API-error logging did not close the disclosure path.
15
-
16
- The same execution function declared a second local `issuer` variable inside the request callback. It shadowed
17
- the issuer captured by the error path, so a failing endpoint forwarded `undefined` rather than the resolved
18
- account identity to the consumer global handler.
19
-
20
- ## Implemented Bedrock response
21
-
22
- - Added the closed `endpoint` safe-diagnostic stage.
23
- - Projected constructor, issuer-resolution, task/pre-process, consumer-handler, secondary-handler and circulation
24
- failures through `DyNTS_SafeDiagnostic_ControlService`.
25
- - Removed framework-owned raw message, stack, route, request and response-preview logging from endpoint failures.
26
- - Removed mutation of caller errors with `endpointInfo` and `requestDebug` snapshots.
27
- - Wrapped plain failures with a static internal message and the immutable safe diagnostic while retaining the
28
- existing public endpoint error-code shape and validated HTTP status behavior.
29
- - Sanitized and bounded developer-owned system and endpoint identifiers used in the compatibility error code.
30
- - Preserved raw failure/request access only for the explicitly installed application global handler; a rejection
31
- from that handler is itself projected before logging.
32
- - Removed the issuer shadow so the resolved account identity reaches the application-owned error persistence
33
- boundary.
34
-
35
- Normal successful-request logging is outside this change. Its existing request-param, body and response fields
36
- remain explicit caller-controlled options. This BFR makes the error path content-free regardless of those options
37
- or detailed logging mode.
38
-
39
- ## Verification evidence
40
-
41
- - TypeScript production build: passed.
42
- - Focused BFR canary regression: 1/1 passed.
43
- - Full Jasmine package regression: 1750 specs, 0 failures, 146 explicit pending specs.
44
- - Package ESLint: 0 errors; the repository retains its pre-existing warning baseline.
45
- - Canary matrix: raw error message, secondary handler stack/token, workbook/sheet value, URL, query, header,
46
- authorization value and path parameter are absent from every captured Dynamo logger call and from the client
47
- response. The 503 status, safe diagnostic and resolved issuer are asserted.
48
- - Import validator baseline: 80 findings in 74 pre-existing files; the modified endpoint and safe-diagnostic files
49
- introduce no import finding.
50
- - Naming validator baseline: 100 findings in 67 pre-existing files. The endpoint class carries its existing public
51
- naming findings; this compatible security fix does not rename that public API.
52
-
53
- The validator baselines are reported as measured debt, not as green evidence. No unrelated mass rename or import
54
- rewrite is bundled into this security BFR.
@@ -1,65 +0,0 @@
1
- # BFR-CTM-020 — content-free request correlation and telemetry
2
-
3
- **Date:** 2026-08-22
4
- **Status:** implemented and package-verified; consumer adoption is recorded by the requesting project
5
- **Target:** `@futdevpro/nts-dynamo`
6
- **Contract:** `dynts-request-telemetry/1`
7
-
8
- ## Measured platform gap
9
-
10
- `DyNTS_App` previously exposed only an application middleware hook after API routing. A consumer could not install
11
- one correlation and request-metric boundary before load shedding and every open and secure route without
12
- duplicating Bedrock server setup or depending on Express internals. This prevented a direct Dynamo implementation
13
- of content-free, route-aware operational telemetry.
14
-
15
- ## Implemented Bedrock capability
16
-
17
- - `DyNTS_App.getRequestTelemetrySettings()` opts the application into one immutable process-wide configuration.
18
- - Both Express applications mount the telemetry middleware after CORS and the application-version header, but
19
- before load shedding and API routes.
20
- - Every request receives a server-generated UUID in `X-Correlation-Id`. Incoming correlation values are never
21
- trusted or reused, and the response header is exposed through the existing CORS-header composition utility.
22
- - `DyNTS_RoutingModule` labels a request only from its declared full route template before endpoint execution.
23
- - `DyNTS_RequestTelemetry_ControlService.snapshot()` returns a synchronous copy of bounded, event-driven counters:
24
- started, completed, aborted and in-flight requests; status classes; duration buckets; and per method/declared-route
25
- counts, aborts, server errors, total duration and maximum duration.
26
- - Response `finish` and `close` listeners settle exactly once and remove each other. Header, listener or completion
27
- observation failures are contained and cannot change the application response path.
28
- - Configuration is validated and idempotent. Conflicting configuration, invalid cardinality and invalid duration
29
- buckets fail with stable content-free codes during application setup.
30
-
31
- ## Privacy and boundedness contract
32
-
33
- The telemetry implementation never reads or retains concrete URL, query, request or response body, request header
34
- values, IP address, user agent, account identity, workbook data, error content or stack information. Correlation IDs
35
- are generated opaque identifiers and are not accepted from callers.
36
-
37
- Route labels accept only the closed declared-template character set and a 160-character maximum. Invalid labels and
38
- identities beyond the configured cardinality cap aggregate into `__other__`; requests that do not reach a Dynamo
39
- route aggregate into `__unmatched__`. Methods use a fixed allowlist, duration buckets are strictly increasing and
40
- bounded, and every numeric accumulator saturates at `Number.MAX_SAFE_INTEGER`. No timer, poller, background worker,
41
- network exporter or persistence layer is started by this capability.
42
-
43
- ## Consumer adoption contract
44
-
45
- A consumer enables the capability directly in its `DyNTS_App` subclass and reads the singleton snapshot directly
46
- for its authenticated operator surface or synchronous diagnostic evidence. An application error boundary may call
47
- `getCorrelationId(req)` while the request is active and persist that opaque identifier beside its own content-free
48
- error record. Alert evaluation, retention and external export remain explicit consumer policies; Bedrock supplies
49
- the safe measurement primitive and does not invent those policies.
50
-
51
- ## Verification evidence
52
-
53
- - TypeScript build: passed.
54
- - Focused BFR regression: 8/8 specs passed.
55
- - Final full Jasmine regression: 1758 specs, 0 failures, 146 explicit pending specs.
56
- - New telemetry source and specs: zero ESLint errors and zero warnings.
57
- - Package ESLint baseline: zero errors and 17,600 pre-existing warnings in 376 files. The new telemetry files are
58
- warning-free; the modified routing and app hosts retain their existing warning baseline.
59
- - Import validator baseline: 80 findings in 74 pre-existing files; none is in a new telemetry file or caused by the
60
- added imports.
61
- - Naming validator baseline: 100 findings in 67 pre-existing files; none is in a new telemetry file.
62
- - Canary coverage: generated correlation, caller-value rejection, CORS exposure, finish/close exactly-once behavior,
63
- aborted requests, 5xx aggregation, declared-route identity, invalid-route redaction, cardinality overflow, disabled
64
- no-op behavior, per-template method preservation, immutable configuration, invalid bounds, header setup containment
65
- and late completion containment.