@futdevpro/nts-dynamo 1.15.88 → 1.15.90
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.
- package/.c8rc.json +26 -26
- package/.copilot/patterns.json +7 -7
- package/.cursor/rules/__assistant_guide.mdc +30 -30
- package/.cursor/rules/_ag_backend-structure.mdc +85 -85
- package/.cursor/rules/_ag_backend.mdc +16 -16
- package/.cursor/rules/_ag_frontend-structure.mdc +86 -86
- package/.cursor/rules/_ag_frontend.mdc +39 -39
- package/.cursor/rules/_ag_import-rules.mdc +44 -44
- package/.cursor/rules/_ag_naming.mdc +115 -115
- package/.cursor/rules/_ag_should-be.mdc +6 -6
- package/.cursor/rules/ai_development_guide.md +60 -60
- package/.cursor/rules/cursor-rules.md +160 -160
- package/.cursor/rules/default-command.mdc +464 -464
- package/.cursor/rules/error_code_pattern.md +39 -39
- package/.cursor/rules/saved rule mcp server use.md +15 -15
- package/.dynamo/logs/cicd-pipeline/output.log +2816 -0
- package/.dynamo/logs/cicd-pipeline/status.json +94 -0
- package/.vscode/settings.json +10 -10
- package/HOWTO.md +15 -15
- package/LICENSE +21 -21
- package/__documentations/nts-integration-tests-2026-03-17.md +26 -26
- package/__documentations/plans/BEDROCK-HYPERPLAN.md +95 -95
- package/_specifications/BACKLOG.md +92 -92
- package/_specifications/TODO.md +15 -15
- package/_specifications/agent.md +138 -138
- package/build/_collections/global-settings.const.d.ts.map +1 -1
- package/build/_collections/global-settings.const.js +7 -0
- package/build/_collections/global-settings.const.js.map +1 -1
- package/build/_collections/security-headers.util.d.ts +17 -0
- package/build/_collections/security-headers.util.d.ts.map +1 -0
- package/build/_collections/security-headers.util.js +78 -0
- package/build/_collections/security-headers.util.js.map +1 -0
- package/build/_models/interfaces/global-settings.interface.d.ts +8 -0
- package/build/_models/interfaces/global-settings.interface.d.ts.map +1 -1
- package/build/_models/interfaces/security-headers-settings.interface.d.ts +42 -0
- package/build/_models/interfaces/security-headers-settings.interface.d.ts.map +1 -0
- package/build/_models/interfaces/security-headers-settings.interface.js +3 -0
- package/build/_models/interfaces/security-headers-settings.interface.js.map +1 -0
- package/build/_modules/scheduler/_models/scheduler-job.interface.d.ts +34 -0
- package/build/_modules/scheduler/_models/scheduler-job.interface.d.ts.map +1 -0
- package/build/_modules/scheduler/_models/scheduler-job.interface.js +3 -0
- package/build/_modules/scheduler/_models/scheduler-job.interface.js.map +1 -0
- package/build/_modules/scheduler/get-scheduler-routing-module.util.d.ts +18 -0
- package/build/_modules/scheduler/get-scheduler-routing-module.util.d.ts.map +1 -0
- package/build/_modules/scheduler/get-scheduler-routing-module.util.js +31 -0
- package/build/_modules/scheduler/get-scheduler-routing-module.util.js.map +1 -0
- package/build/_modules/scheduler/index.d.ts +5 -0
- package/build/_modules/scheduler/index.d.ts.map +1 -0
- package/build/_modules/scheduler/index.js +10 -0
- package/build/_modules/scheduler/index.js.map +1 -0
- package/build/_modules/scheduler/scheduler.controller.d.ts +25 -0
- package/build/_modules/scheduler/scheduler.controller.d.ts.map +1 -0
- package/build/_modules/scheduler/scheduler.controller.js +54 -0
- package/build/_modules/scheduler/scheduler.controller.js.map +1 -0
- package/build/_modules/scheduler/scheduler.service.d.ts +54 -0
- package/build/_modules/scheduler/scheduler.service.d.ts.map +1 -0
- package/build/_modules/scheduler/scheduler.service.js +164 -0
- package/build/_modules/scheduler/scheduler.service.js.map +1 -0
- package/build/_services/server/app.server.d.ts +7 -0
- package/build/_services/server/app.server.d.ts.map +1 -1
- package/build/_services/server/app.server.js +22 -0
- package/build/_services/server/app.server.js.map +1 -1
- package/build/index.d.ts +2 -0
- package/build/index.d.ts.map +1 -1
- package/build/index.js +2 -0
- package/build/index.js.map +1 -1
- package/eslint.config.js +3 -3
- package/nodemon.json +24 -24
- package/package.json +10 -1
- package/pnpm-workspace.yaml +5 -5
- package/scripts/run-coverage-tests.js +28 -28
- package/spec/support/helpers/spec-reporter-loader.js +359 -359
- package/spec/support/helpers/ts-node-helper.js +93 -93
- package/spec/support/jasmine.coverage.json +24 -24
- package/spec/support/jasmine.json +24 -24
- package/src/_collections/archive.util.spec.ts +57 -57
- package/src/_collections/archive.util.ts +18 -18
- package/src/_collections/atlas-default-db-options.const.ts +9 -9
- package/src/_collections/default-fallback-cache-max-age.const.spec.ts +11 -11
- package/src/_collections/default-fallback-cache-max-age.const.ts +2 -2
- package/src/_collections/default-not-found-page.const.spec.ts +19 -19
- package/src/_collections/default-not-found-page.const.ts +22 -22
- package/src/_collections/default-socket-path.const.spec.ts +12 -12
- package/src/_collections/default-socket-path.const.ts +2 -2
- package/src/_collections/get-environment-settings.util.spec.ts +210 -210
- package/src/_collections/get-environment-settings.util.ts +48 -48
- package/src/_collections/global-settings.const.ts +117 -109
- package/src/_collections/sample.env +21 -21
- package/src/_collections/security-headers.util.spec.ts +98 -0
- package/src/_collections/security-headers.util.ts +96 -0
- package/src/_collections/star.controller.spec.ts +224 -224
- package/src/_collections/star.controller.ts +129 -129
- package/src/_enums/data-model-type.enum.ts +14 -14
- package/src/_enums/data-service-function.enum.ts +24 -24
- package/src/_enums/predefined-data-types.enum.ts +16 -16
- package/src/_enums/route-security.enum.ts +12 -12
- package/src/_models/control-models/api-call-params.control-model.spec.ts +152 -152
- package/src/_models/control-models/api-call-params.control-model.ts +142 -142
- package/src/_models/control-models/app-ext-system-controls.control-model.spec.ts +52 -52
- package/src/_models/control-models/app-ext-system-controls.control-model.ts +9 -9
- package/src/_models/control-models/app-params.control-model.spec.ts +225 -225
- package/src/_models/control-models/app-params.control-model.ts +136 -136
- package/src/_models/control-models/app-system-controls.control-model.spec.ts +31 -31
- package/src/_models/control-models/app-system-controls.control-model.ts +9 -9
- package/src/_models/control-models/endpoint-params.control-model.spec.ts +627 -627
- package/src/_models/control-models/endpoint-params.control-model.ts +627 -627
- package/src/_models/control-models/http-settings.control-model.spec.ts +77 -77
- package/src/_models/control-models/http-settings.control-model.ts +37 -37
- package/src/_models/control-models/system-control.control-model.spec.ts +27 -27
- package/src/_models/control-models/system-control.control-model.ts +12 -12
- package/src/_models/interfaces/certification-settings.interface.ts +7 -7
- package/src/_models/interfaces/environment-settings.interface.ts +59 -59
- package/src/_models/interfaces/global-log-settings.interface.ts +171 -171
- package/src/_models/interfaces/global-service-settings.interface.ts +47 -47
- package/src/_models/interfaces/global-settings.interface.ts +244 -235
- package/src/_models/interfaces/routing-module-settings.interface.ts +21 -21
- package/src/_models/interfaces/security-headers-settings.interface.ts +50 -0
- package/src/_models/interfaces/static-client-settings.interface.spec.ts +29 -29
- package/src/_models/interfaces/static-client-settings.interface.ts +28 -28
- package/src/_models/types/db-update.type.ts +100 -100
- package/src/_modules/ai/_models/ai-input-interfaces.ts +117 -117
- package/src/_modules/ai/_models/ai-test-generation-result.interface.ts +16 -16
- package/src/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.ts +138 -138
- package/src/_modules/ai/_modules/anthropic/index.ts +5 -5
- package/src/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.spec.ts +242 -242
- package/src/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.ts +639 -639
- package/src/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.spec.ts +295 -295
- package/src/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.ts +518 -518
- package/src/_modules/ai/_modules/document-ai/_collections/dai-document.util.spec.ts +209 -209
- package/src/_modules/ai/_modules/document-ai/_collections/dai-document.util.ts +85 -85
- package/src/_modules/ai/_modules/document-ai/_enums/dai-compare-result-type.enum.ts +7 -7
- package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-chunk.data-model.ts +146 -146
- package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-page.data-model.ts +162 -162
- package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-document.data-model.ts +99 -99
- package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-code-chunk.interface.ts +68 -68
- package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-chunk-compare-result.interface.ts +18 -18
- package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-page-compare-result.interface.ts +19 -19
- package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-document-compare-result.interface.ts +25 -25
- package/src/_modules/ai/_modules/document-ai/index.ts +30 -30
- package/src/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.ts +189 -189
- package/src/_modules/ai/_modules/fdp-ai/index.ts +5 -5
- package/src/_modules/ai/_modules/open-ai/_collections/oai-global-settings.const.ts +9 -9
- package/src/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests-hu.conts.ts +82 -82
- package/src/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests.conts.ts +75 -75
- package/src/_modules/ai/_modules/open-ai/_enums/oai-gpt-message-role.enum.ts +45 -45
- package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-global-settings.interface.ts +7 -7
- package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-gpt-message.interface.ts +7 -7
- package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-llm-predefined-requests.interface.ts +57 -57
- package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-chunk-data.service.ts +292 -292
- package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.spec.ts +342 -342
- package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.spec.ts +550 -550
- package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.ts +630 -630
- package/src/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.spec.ts +332 -332
- package/src/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.spec.ts +462 -462
- package/src/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.ts +634 -634
- package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.spec.ts +489 -489
- package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.tools.spec.ts +173 -173
- package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.ts +1033 -1033
- package/src/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.ts +157 -157
- package/src/_modules/ai/_services/ai-embedding-mock.service.spec.ts +115 -115
- package/src/_modules/ai/_services/ai-embedding-mock.service.ts +212 -212
- package/src/_modules/ai/_services/ai-embedding-provider.registry.spec.ts +110 -110
- package/src/_modules/ai/_services/ai-embedding-provider.registry.ts +110 -110
- package/src/_modules/ai/_services/ai-embedding.service-base.spec.ts +98 -98
- package/src/_modules/ai/_services/ai-embedding.service-base.ts +48 -48
- package/src/_modules/ai/_services/ai-llm-chat.service-base.spec.ts +229 -229
- package/src/_modules/ai/_services/ai-llm-chat.service-base.ts +68 -68
- package/src/_modules/ai/_services/ai-llm.service-base.spec.ts +250 -250
- package/src/_modules/ai/_services/ai-llm.service-base.ts +519 -519
- package/src/_modules/ai/_services/ai-provider.service-base.spec.ts +158 -158
- package/src/_modules/ai/_services/ai-user-key.service-base.ts +59 -59
- package/src/_modules/ai/_services/lmstudio-embedding.control-service.spec.ts +197 -197
- package/src/_modules/ai/_services/lmstudio-embedding.control-service.ts +371 -371
- package/src/_modules/ai/index.ts +23 -23
- package/src/_modules/assistant/_collections/ass-global-settings.const.ts +13 -13
- package/src/_modules/assistant/_collections/ass.util.spec.ts +176 -176
- package/src/_modules/assistant/_collections/ass.util.ts +50 -50
- package/src/_modules/assistant/_models/ass-global-settings.interface.ts +15 -15
- package/src/_modules/assistant/_services/ass-io.control-service.spec.ts +140 -140
- package/src/_modules/assistant/_services/ass-main.control-service.spec.ts +192 -192
- package/src/_modules/assistant/_services/ass-main.control-service.ts +107 -107
- package/src/_modules/bot/_collections/bot-default-commands.const.ts +12 -12
- package/src/_modules/bot/_collections/bot-global-settings.const.ts +39 -39
- package/src/_modules/bot/_models/bot-channel-wrapper.interface.ts +62 -62
- package/src/_modules/bot/_models/bot-command.interface.ts +8 -8
- package/src/_modules/bot/_models/bot-global-settings.interface.ts +96 -96
- package/src/_modules/bot/_models/bot-last-mention-date.interface.ts +6 -6
- package/src/_modules/bot/_models/bot-last-message-date.interface.ts +5 -5
- package/src/_modules/bot/_models/bot-user-wrapper.interface.ts +41 -41
- package/src/_modules/bot/_modules/discord-bot/_models/dib-platform.types.ts +9 -9
- package/src/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.spec.ts +431 -431
- package/src/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.spec.ts +160 -160
- package/src/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.ts +55 -55
- package/src/_modules/bot/_modules/dynamo-bot/_models/dyb-platform.types.ts +15 -15
- package/src/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.spec.ts +374 -374
- package/src/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.ts +447 -447
- package/src/_modules/bot/_modules/dynamo-bot/index.ts +15 -15
- package/src/_modules/bot/_modules/slack-bot/_models/slb-platform.types.ts +9 -9
- package/src/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.spec.ts +344 -344
- package/src/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.ts +197 -197
- package/src/_modules/bot/_modules/teams-bot/_models/teb-platform.types.ts +9 -9
- package/src/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.spec.ts +345 -345
- package/src/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.ts +197 -197
- package/src/_modules/bot/_services/bot-commands.control-service.spec.ts +116 -116
- package/src/_modules/bot/_services/bot-io.control-service.spec.ts +285 -285
- package/src/_modules/bot/_services/bot-main.control-service.spec.ts +208 -208
- package/src/_modules/bot/_services/bot-messaging-provider.service-base.spec.ts +349 -349
- package/src/_modules/bot/_services/bot-routines.control-service.spec.ts +111 -111
- package/src/_modules/custom-data/custom-data.controller.spec.ts +49 -49
- package/src/_modules/custom-data/custom-data.controller.ts +67 -67
- package/src/_modules/custom-data/custom-data.data-service.spec.ts +54 -54
- package/src/_modules/custom-data/custom-data.data-service.ts +21 -21
- package/src/_modules/custom-data/get-custom-data-routing-module.util.spec.ts +28 -28
- package/src/_modules/custom-data/get-custom-data-routing-module.util.ts +24 -24
- package/src/_modules/custom-data/index.ts +9 -9
- package/src/_modules/data-readers/_collections/dynts-sqlite-reader.util.spec.ts +161 -161
- package/src/_modules/data-readers/_collections/dynts-sqlite-reader.util.ts +203 -203
- package/src/_modules/data-readers/_models/interfaces/dynts-sqlite-reader.interface.ts +33 -33
- package/src/_modules/data-readers/index.ts +11 -11
- package/src/_modules/defaults/_collections/default-endpoints.util.ts +487 -487
- package/src/_modules/defaults/_models/default-user.data-model.ts +72 -72
- package/src/_modules/defaults/_services/default-auth.service.spec.ts +269 -269
- package/src/_modules/defaults/_services/default-auth.service.ts +177 -177
- package/src/_modules/defaults/_services/default-socket-events.service.spec.ts +42 -42
- package/src/_modules/defaults/_services/default-socket-events.service.ts +61 -61
- package/src/_modules/defaults/_services/default-user.data-service.spec.ts +187 -187
- package/src/_modules/defaults/_services/default-user.data-service.ts +98 -98
- package/src/_modules/defaults/index.ts +17 -17
- package/src/_modules/discord-assistant/_collections/dias-global-settings.const.ts +19 -19
- package/src/_modules/discord-assistant/_collections/dias.util.spec.ts +366 -366
- package/src/_modules/discord-assistant/_collections/dias.util.ts +132 -132
- package/src/_modules/discord-assistant/_models/dias-global-settings.interface.ts +19 -19
- package/src/_modules/discord-assistant/_models/dias-knowledge.data-model.ts +52 -52
- package/src/_modules/discord-assistant/_services/dias-chunk.data-service.ts +177 -177
- package/src/_modules/discord-assistant/_services/dias-io.control-service.spec.ts +108 -108
- package/src/_modules/discord-assistant/_services/dias-io.control-service.ts +69 -69
- package/src/_modules/discord-assistant/_services/dias-main.control-service.spec.ts +22 -22
- package/src/_modules/discord-assistant/_services/dias-main.control-service.ts +27 -27
- package/src/_modules/discord-assistant/_services/dias.service-base.spec.ts +195 -195
- package/src/_modules/discord-assistant/_services/dias.service-base.ts +76 -76
- package/src/_modules/discord-assistant/index.ts +38 -38
- package/src/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.spec.ts +34 -34
- package/src/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.ts +11 -11
- package/src/_modules/discord-assistant-voiced/index.ts +36 -36
- package/src/_modules/discord-bot/_collections/dibo-default-commands.const.ts +16 -16
- package/src/_modules/discord-bot/_collections/dibo-global-settings.conts.ts +55 -55
- package/src/_modules/discord-bot/_collections/dibo-operations.util.spec.ts +214 -214
- package/src/_modules/discord-bot/_collections/dibo-operations.util.ts +387 -387
- package/src/_modules/discord-bot/_models/dibo-command.interface.ts +12 -12
- package/src/_modules/discord-bot/_models/dibo-global-settings.interface.ts +98 -98
- package/src/_modules/discord-bot/_models/dibo-last-mention-date.inteface.ts +7 -7
- package/src/_modules/discord-bot/_models/dibo-last-message-date.interface.ts +6 -6
- package/src/_modules/discord-bot/_services/dibo-commands.control-service.spec.ts +154 -154
- package/src/_modules/discord-bot/_services/dibo-commands.control-service.ts +153 -153
- package/src/_modules/discord-bot/_services/dibo-io.control-service.spec.ts +264 -264
- package/src/_modules/discord-bot/_services/dibo-io.control-service.ts +306 -306
- package/src/_modules/discord-bot/_services/dibo-main.control-service.spec.ts +408 -408
- package/src/_modules/discord-bot/_services/dibo-main.control-service.ts +487 -487
- package/src/_modules/discord-bot/_services/dibo-routines.control-service.spec.ts +105 -105
- package/src/_modules/discord-bot/index.ts +36 -36
- package/src/_modules/local-vector-search/_enums/lvs-search-mode.enum.ts +35 -35
- package/src/_modules/local-vector-search/_models/data-models/lvs-vector-persist.data-model.ts +59 -59
- package/src/_modules/local-vector-search/_models/lvs-search-result.interface.ts +17 -17
- package/src/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.spec.ts +418 -418
- package/src/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.ts +276 -276
- package/src/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.spec.ts +480 -480
- package/src/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.ts +416 -416
- package/src/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.spec.ts +198 -198
- package/src/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.ts +146 -146
- package/src/_modules/local-vector-search/_services/lvs-vector-persist.data-service.spec.ts +167 -167
- package/src/_modules/local-vector-search/_services/lvs-vector-persist.data-service.ts +106 -106
- package/src/_modules/local-vector-search/_services/lvs-vector-pool.control-service.spec.ts +507 -507
- package/src/_modules/local-vector-search/_services/lvs-vector-pool.control-service.ts +272 -272
- package/src/_modules/local-vector-search/index.ts +16 -16
- package/src/_modules/logs/index.ts +11 -11
- package/src/_modules/mcp/_models/interfaces/dynts-mcp.interface.ts +111 -111
- package/src/_modules/mcp/_services/dynts-mcp-server.service-base.spec.ts +142 -142
- package/src/_modules/mcp/_services/dynts-mcp-server.service-base.ts +120 -120
- package/src/_modules/mcp/_services/dynts-mcp.adapter.ts +168 -168
- package/src/_modules/mcp/index.ts +13 -13
- package/src/_modules/messaging/README.md +354 -354
- package/src/_modules/messaging/_collections/get-messaging-routing-module.util.ts +26 -26
- package/src/_modules/messaging/_collections/msg-global-settings.const.ts +22 -22
- package/src/_modules/messaging/_collections/msg.util.spec.ts +226 -226
- package/src/_modules/messaging/_models/msg-global-settings.interface.ts +37 -37
- package/src/_modules/messaging/_services/msg-conversation.data-service.ts +146 -146
- package/src/_modules/messaging/_services/msg-events.service.spec.ts +219 -219
- package/src/_modules/messaging/_services/msg-events.service.ts +267 -267
- package/src/_modules/messaging/_services/msg-integration.control-service.ts +179 -179
- package/src/_modules/messaging/_services/msg-main.control-service.spec.ts +147 -147
- package/src/_modules/messaging/_services/msg-main.control-service.ts +571 -571
- package/src/_modules/messaging/_services/msg-message.data-service.ts +129 -129
- package/src/_modules/messaging/_services/msg.controller.spec.ts +201 -201
- package/src/_modules/messaging/index.ts +30 -30
- package/src/_modules/mock/app-extended-server.mock.ts +201 -201
- package/src/_modules/mock/app-integration-test.mock.ts +51 -51
- package/src/_modules/mock/app-params.mock.spec.ts +21 -21
- package/src/_modules/mock/app-params.mock.ts +9 -9
- package/src/_modules/mock/app-server.mock.ts +188 -188
- package/src/_modules/mock/auth-service.mock.spec.ts +47 -47
- package/src/_modules/mock/auth-service.mock.ts +28 -28
- package/src/_modules/mock/controller.mock.spec.ts +26 -26
- package/src/_modules/mock/controller.mock.ts +16 -16
- package/src/_modules/mock/data-model.mock.spec.ts +111 -111
- package/src/_modules/mock/data-model.mock.ts +82 -82
- package/src/_modules/mock/email-service-collection.mock.spec.ts +24 -24
- package/src/_modules/mock/email-service-collection.mock.ts +15 -15
- package/src/_modules/mock/email-service.mock.spec.ts +17 -17
- package/src/_modules/mock/email-service.mock.ts +20 -20
- package/src/_modules/mock/email-template.mock.html +14 -14
- package/src/_modules/mock/endpoint.mock.ts +91 -91
- package/src/_modules/mock/socket-client.mock.spec.ts +40 -40
- package/src/_modules/mock/socket-client.mock.ts +45 -45
- package/src/_modules/mock/socket-server.mock.spec.ts +44 -44
- package/src/_modules/mock/socket-server.mock.ts +46 -46
- package/src/_modules/oauth2/_routes/oauth2.controller.spec.ts +107 -107
- package/src/_modules/oauth2/_routes/oauth2.controller.ts +98 -98
- package/src/_modules/oauth2/_services/oauth2.auth-service.spec.ts +254 -254
- package/src/_modules/oauth2/_services/oauth2.auth-service.ts +232 -232
- package/src/_modules/oauth2/_services/oauth2.control-service.spec.ts +585 -585
- package/src/_modules/oauth2/_services/oauth2.control-service.ts +653 -653
- package/src/_modules/oauth2/index.ts +17 -17
- package/src/_modules/scheduler/_models/scheduler-job.interface.ts +35 -0
- package/src/_modules/scheduler/get-scheduler-routing-module.util.ts +33 -0
- package/src/_modules/scheduler/index.ts +8 -0
- package/src/_modules/scheduler/scheduler.controller.spec.ts +42 -0
- package/src/_modules/scheduler/scheduler.controller.ts +69 -0
- package/src/_modules/scheduler/scheduler.service.spec.ts +141 -0
- package/src/_modules/scheduler/scheduler.service.ts +176 -0
- package/src/_modules/scoped-config/_enums/dynts-scoped-config-level.enum.ts +22 -22
- package/src/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.ts +81 -81
- package/src/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.ts +107 -107
- package/src/_modules/scoped-config/_services/dynts-scoped-config.control-service.spec.ts +306 -306
- package/src/_modules/scoped-config/_services/dynts-scoped-config.control-service.ts +295 -295
- package/src/_modules/scoped-config/_services/dynts-scoped-config.data-service.spec.ts +118 -118
- package/src/_modules/scoped-config/_services/dynts-scoped-config.data-service.ts +105 -105
- package/src/_modules/scoped-config/index.ts +17 -17
- package/src/_modules/server/errors/errors.control-service.spec.ts +238 -238
- package/src/_modules/server/errors/errors.control-service.ts +100 -100
- package/src/_modules/server/errors/errors.controller.spec.ts +268 -268
- package/src/_modules/server/errors/errors.controller.ts +515 -515
- package/src/_modules/server/errors/errors.data-service.spec.ts +480 -480
- package/src/_modules/server/index.ts +30 -30
- package/src/_modules/server/server-status/server-status-snapshot.control-service.spec.ts +70 -70
- package/src/_modules/server/server-status/server-status-snapshot.control-service.ts +17 -17
- package/src/_modules/server/server-status/server-status-snapshot.data-service.spec.ts +77 -77
- package/src/_modules/server/server-status/server-status-snapshot.data-service.ts +37 -37
- package/src/_modules/server/server-status/server-status.control-service.spec.ts +576 -576
- package/src/_modules/server/server-status/server-status.control-service.ts +396 -396
- package/src/_modules/server/server-status/server-status.controller.spec.ts +255 -255
- package/src/_modules/server/server-status/server-status.controller.ts +272 -272
- package/src/_modules/socket/_enums/socket-security.enum.ts +11 -11
- package/src/_modules/socket/_models/socket-client-service-params.control-model.spec.ts +32 -32
- package/src/_modules/socket/_models/socket-client-service-params.control-model.ts +22 -22
- package/src/_modules/socket/_models/socket-presence.control-model.spec.ts +164 -164
- package/src/_modules/socket/_models/socket-presence.control-model.ts +210 -210
- package/src/_modules/socket/_models/socket-server-service-params.control-model.spec.ts +46 -46
- package/src/_modules/socket/_models/socket-server-service-params.control-model.ts +22 -22
- package/src/_modules/socket/_services/socket-client.service.spec.ts +15 -15
- package/src/_modules/socket/_services/socket-client.service.ts +260 -260
- package/src/_modules/socket/_services/socket-server.service.spec.ts +11 -11
- package/src/_modules/socket/app-extended.integration.spec.ts +85 -85
- package/src/_modules/socket/app-extended.server.ts +630 -630
- package/src/_modules/socket/index.ts +42 -42
- package/src/_modules/test/get-test-routing-module.util.spec.ts +28 -28
- package/src/_modules/test/get-test-routing-module.util.ts +23 -23
- package/src/_modules/test/index.ts +11 -11
- package/src/_modules/test/test.controller.spec.ts +72 -72
- package/src/_modules/test/test.controller.ts +115 -115
- package/src/_modules/usage/get-usage-routing-module.util.ts +22 -22
- package/src/_modules/usage/index.ts +15 -15
- package/src/_modules/usage/usage.controller.spec.ts +81 -81
- package/src/_modules/usage/usage.controller.ts +126 -126
- package/src/_modules/usage/usage.data-service.spec.ts +332 -332
- package/src/_modules/usage/usage.data-service.ts +185 -185
- package/src/_services/base/api.service-base.spec.ts +125 -125
- package/src/_services/base/api.service-base.ts +74 -74
- package/src/_services/base/archive-data.service.spec.ts +209 -209
- package/src/_services/base/archive-data.service.ts +224 -224
- package/src/_services/base/data.service.spec.ts +729 -729
- package/src/_services/base/data.service.ts +2740 -2740
- package/src/_services/base/db.service.spec.ts +73 -73
- package/src/_services/base/db.service.ts +1575 -1575
- package/src/_services/base/singleton.service-base.spec.ts +28 -28
- package/src/_services/base/singleton.service-base.ts +24 -24
- package/src/_services/base/singleton.service.spec.ts +114 -114
- package/src/_services/base/singleton.service.ts +38 -38
- package/src/_services/core/api.service.spec.ts +140 -140
- package/src/_services/core/auth.service.spec.ts +159 -159
- package/src/_services/core/auth.service.ts +174 -174
- package/src/_services/core/email.service.spec.ts +85 -85
- package/src/_services/core/email.service.ts +742 -742
- package/src/_services/core/global.service.spec.ts +292 -292
- package/src/_services/core/global.service.ts +487 -487
- package/src/_services/core/memory-guard.service.spec.ts +245 -245
- package/src/_services/core/memory-guard.service.ts +481 -481
- package/src/_services/core/service-collection.service.spec.ts +46 -46
- package/src/_services/core/service-collection.service.ts +6 -6
- package/src/_services/route/controller.service.spec.ts +53 -53
- package/src/_services/route/controller.service.ts +148 -148
- package/src/_services/route/routing-module.service.spec.ts +98 -98
- package/src/_services/route/routing-module.service.ts +330 -330
- package/src/_services/server/app.server.ts +1941 -1912
- package/src/_services/shared.static-service.spec.ts +99 -99
- package/src/_services/shared.static-service.ts +78 -78
- package/src/index.ts +99 -97
- package/tsconfig.app.json +12 -12
- package/tsconfig.json +42 -42
|
@@ -1,105 +1,105 @@
|
|
|
1
|
-
|
|
2
|
-
import { DyNTS_DiBo_Routines_ControlService } from './dibo-routines.control-service';
|
|
3
|
-
import { DyNTS_DiBo_Main_ControlService } from './dibo-main.control-service';
|
|
4
|
-
import { Guild } from 'discord.js';
|
|
5
|
-
import { DyFM_Error } from '@futdevpro/fsm-dynamo';
|
|
6
|
-
|
|
7
|
-
class TestDiBoRoutinesService extends DyNTS_DiBo_Routines_ControlService {
|
|
8
|
-
protected getMainDiscordBotControlService(): DyNTS_DiBo_Main_ControlService {
|
|
9
|
-
return this.mainDiscordBot_CS;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
async startRoutines(issuer: string): Promise<void> {
|
|
13
|
-
// Mock implementation
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
static getInstance(): TestDiBoRoutinesService {
|
|
17
|
-
return TestDiBoRoutinesService.getSingletonInstance();
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
xdescribe('| DyNTS_DiBo_Routines_ControlService', () => {
|
|
22
|
-
let service: TestDiBoRoutinesService;
|
|
23
|
-
let mockMain_CS: jasmine.SpyObj<DyNTS_DiBo_Main_ControlService>;
|
|
24
|
-
let mockGuild: jasmine.SpyObj<Guild>;
|
|
25
|
-
|
|
26
|
-
beforeEach(() => {
|
|
27
|
-
mockGuild = jasmine.createSpyObj('Guild', [], {
|
|
28
|
-
id: 'guild-123',
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
mockMain_CS = jasmine.createSpyObj('DyNTS_DiBo_Main_ControlService', [], {
|
|
32
|
-
discordServer: mockGuild,
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
service = new (TestDiBoRoutinesService as any)();
|
|
36
|
-
(service as any).mainDiscordBot_CS = mockMain_CS;
|
|
37
|
-
});
|
|
38
|
-
|
|
39
|
-
describe('| properties', () => {
|
|
40
|
-
it('| should return discordServer from main service', () => {
|
|
41
|
-
expect(service.discordServer).toBe(mockGuild);
|
|
42
|
-
});
|
|
43
|
-
|
|
44
|
-
it('| should return routinesStarted as false initially', () => {
|
|
45
|
-
expect(service.routinesStarted).toBeUndefined();
|
|
46
|
-
});
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
describe('| setup', () => {
|
|
50
|
-
it('| should setup service with main service', async () => {
|
|
51
|
-
await service.setup('test-issuer');
|
|
52
|
-
|
|
53
|
-
expect((service as any).mainDiscordBot_CS).toBe(mockMain_CS);
|
|
54
|
-
});
|
|
55
|
-
|
|
56
|
-
it('| should throw error if main service not found', async () => {
|
|
57
|
-
(service as any).getMainDiscordBotControlService = () => null;
|
|
58
|
-
|
|
59
|
-
try {
|
|
60
|
-
await service.setup('test-issuer');
|
|
61
|
-
fail('Should have thrown an error');
|
|
62
|
-
} catch (error) {
|
|
63
|
-
expect(error).toBeInstanceOf(DyFM_Error);
|
|
64
|
-
expect((error as DyFM_Error)._errorCode).toContain('DyNTS-DiBo-RCS-S01');
|
|
65
|
-
}
|
|
66
|
-
});
|
|
67
|
-
});
|
|
68
|
-
|
|
69
|
-
describe('| start', () => {
|
|
70
|
-
it('| should start routines and set routinesStarted to true', async () => {
|
|
71
|
-
spyOn(service, 'startRoutines').and.returnValue(Promise.resolve());
|
|
72
|
-
|
|
73
|
-
await service.start('test-issuer');
|
|
74
|
-
|
|
75
|
-
expect(service.startRoutines).toHaveBeenCalled();
|
|
76
|
-
expect(service.routinesStarted).toBe(true);
|
|
77
|
-
});
|
|
78
|
-
|
|
79
|
-
it('| should throw error if discordServer not found', async () => {
|
|
80
|
-
(service as any).mainDiscordBot_CS = null;
|
|
81
|
-
|
|
82
|
-
try {
|
|
83
|
-
await service.start('test-issuer');
|
|
84
|
-
fail('Should have thrown an error');
|
|
85
|
-
} catch (error) {
|
|
86
|
-
expect(error).toBeInstanceOf(DyFM_Error);
|
|
87
|
-
expect((error as DyFM_Error)._errorCode).toContain('DyNTS-DiBo-RCS-ST01');
|
|
88
|
-
}
|
|
89
|
-
});
|
|
90
|
-
|
|
91
|
-
it('| should handle start errors', async () => {
|
|
92
|
-
const error = new Error('Start routines error');
|
|
93
|
-
spyOn(service, 'startRoutines').and.returnValue(Promise.reject(error));
|
|
94
|
-
|
|
95
|
-
try {
|
|
96
|
-
await service.start('test-issuer');
|
|
97
|
-
fail('Should have thrown an error');
|
|
98
|
-
} catch (err) {
|
|
99
|
-
expect(err).toBeInstanceOf(DyFM_Error);
|
|
100
|
-
expect((err as DyFM_Error)._errorCode).toContain('DyNTS-DiBo-RCS-ST0');
|
|
101
|
-
}
|
|
102
|
-
});
|
|
103
|
-
});
|
|
104
|
-
});
|
|
105
|
-
|
|
1
|
+
|
|
2
|
+
import { DyNTS_DiBo_Routines_ControlService } from './dibo-routines.control-service';
|
|
3
|
+
import { DyNTS_DiBo_Main_ControlService } from './dibo-main.control-service';
|
|
4
|
+
import { Guild } from 'discord.js';
|
|
5
|
+
import { DyFM_Error } from '@futdevpro/fsm-dynamo';
|
|
6
|
+
|
|
7
|
+
class TestDiBoRoutinesService extends DyNTS_DiBo_Routines_ControlService {
|
|
8
|
+
protected getMainDiscordBotControlService(): DyNTS_DiBo_Main_ControlService {
|
|
9
|
+
return this.mainDiscordBot_CS;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
async startRoutines(issuer: string): Promise<void> {
|
|
13
|
+
// Mock implementation
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
static getInstance(): TestDiBoRoutinesService {
|
|
17
|
+
return TestDiBoRoutinesService.getSingletonInstance();
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
xdescribe('| DyNTS_DiBo_Routines_ControlService', () => {
|
|
22
|
+
let service: TestDiBoRoutinesService;
|
|
23
|
+
let mockMain_CS: jasmine.SpyObj<DyNTS_DiBo_Main_ControlService>;
|
|
24
|
+
let mockGuild: jasmine.SpyObj<Guild>;
|
|
25
|
+
|
|
26
|
+
beforeEach(() => {
|
|
27
|
+
mockGuild = jasmine.createSpyObj('Guild', [], {
|
|
28
|
+
id: 'guild-123',
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
mockMain_CS = jasmine.createSpyObj('DyNTS_DiBo_Main_ControlService', [], {
|
|
32
|
+
discordServer: mockGuild,
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
service = new (TestDiBoRoutinesService as any)();
|
|
36
|
+
(service as any).mainDiscordBot_CS = mockMain_CS;
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
describe('| properties', () => {
|
|
40
|
+
it('| should return discordServer from main service', () => {
|
|
41
|
+
expect(service.discordServer).toBe(mockGuild);
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
it('| should return routinesStarted as false initially', () => {
|
|
45
|
+
expect(service.routinesStarted).toBeUndefined();
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
describe('| setup', () => {
|
|
50
|
+
it('| should setup service with main service', async () => {
|
|
51
|
+
await service.setup('test-issuer');
|
|
52
|
+
|
|
53
|
+
expect((service as any).mainDiscordBot_CS).toBe(mockMain_CS);
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
it('| should throw error if main service not found', async () => {
|
|
57
|
+
(service as any).getMainDiscordBotControlService = () => null;
|
|
58
|
+
|
|
59
|
+
try {
|
|
60
|
+
await service.setup('test-issuer');
|
|
61
|
+
fail('Should have thrown an error');
|
|
62
|
+
} catch (error) {
|
|
63
|
+
expect(error).toBeInstanceOf(DyFM_Error);
|
|
64
|
+
expect((error as DyFM_Error)._errorCode).toContain('DyNTS-DiBo-RCS-S01');
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
|
|
69
|
+
describe('| start', () => {
|
|
70
|
+
it('| should start routines and set routinesStarted to true', async () => {
|
|
71
|
+
spyOn(service, 'startRoutines').and.returnValue(Promise.resolve());
|
|
72
|
+
|
|
73
|
+
await service.start('test-issuer');
|
|
74
|
+
|
|
75
|
+
expect(service.startRoutines).toHaveBeenCalled();
|
|
76
|
+
expect(service.routinesStarted).toBe(true);
|
|
77
|
+
});
|
|
78
|
+
|
|
79
|
+
it('| should throw error if discordServer not found', async () => {
|
|
80
|
+
(service as any).mainDiscordBot_CS = null;
|
|
81
|
+
|
|
82
|
+
try {
|
|
83
|
+
await service.start('test-issuer');
|
|
84
|
+
fail('Should have thrown an error');
|
|
85
|
+
} catch (error) {
|
|
86
|
+
expect(error).toBeInstanceOf(DyFM_Error);
|
|
87
|
+
expect((error as DyFM_Error)._errorCode).toContain('DyNTS-DiBo-RCS-ST01');
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
|
|
91
|
+
it('| should handle start errors', async () => {
|
|
92
|
+
const error = new Error('Start routines error');
|
|
93
|
+
spyOn(service, 'startRoutines').and.returnValue(Promise.reject(error));
|
|
94
|
+
|
|
95
|
+
try {
|
|
96
|
+
await service.start('test-issuer');
|
|
97
|
+
fail('Should have thrown an error');
|
|
98
|
+
} catch (err) {
|
|
99
|
+
expect(err).toBeInstanceOf(DyFM_Error);
|
|
100
|
+
expect((err as DyFM_Error)._errorCode).toContain('DyNTS-DiBo-RCS-ST0');
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
/* try {
|
|
6
|
-
require.resolve('discord.js');
|
|
7
|
-
} catch (error) {
|
|
8
|
-
console.log(
|
|
9
|
-
'❌ Discord.js package not found, please install it with: pnpm add discord.js'
|
|
10
|
-
);
|
|
11
|
-
} */
|
|
12
|
-
|
|
13
|
-
//
|
|
14
|
-
// Discord Bot module
|
|
15
|
-
//
|
|
16
|
-
// This module is created to simplify the usage of Discord Bot
|
|
17
|
-
// It creates universal solutions for the most common use cases
|
|
18
|
-
//
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
// COLLECTIONS
|
|
22
|
-
export * from './_collections/dibo-default-commands.const';
|
|
23
|
-
export * from './_collections/dibo-global-settings.conts';
|
|
24
|
-
export * from './_collections/dibo-operations.util';
|
|
25
|
-
|
|
26
|
-
// MODELS
|
|
27
|
-
export * from './_models/dibo-command.interface';
|
|
28
|
-
export * from './_models/dibo-last-mention-date.inteface';
|
|
29
|
-
export * from './_models/dibo-last-message-date.interface';
|
|
30
|
-
export * from './_models/dibo-global-settings.interface';
|
|
31
|
-
|
|
32
|
-
// SERVICES
|
|
33
|
-
export * from './_services/dibo-commands.control-service';
|
|
34
|
-
export * from './_services/dibo-io.control-service';
|
|
35
|
-
export * from './_services/dibo-main.control-service';
|
|
36
|
-
export * from './_services/dibo-routines.control-service';
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
/* try {
|
|
6
|
+
require.resolve('discord.js');
|
|
7
|
+
} catch (error) {
|
|
8
|
+
console.log(
|
|
9
|
+
'❌ Discord.js package not found, please install it with: pnpm add discord.js'
|
|
10
|
+
);
|
|
11
|
+
} */
|
|
12
|
+
|
|
13
|
+
//
|
|
14
|
+
// Discord Bot module
|
|
15
|
+
//
|
|
16
|
+
// This module is created to simplify the usage of Discord Bot
|
|
17
|
+
// It creates universal solutions for the most common use cases
|
|
18
|
+
//
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
// COLLECTIONS
|
|
22
|
+
export * from './_collections/dibo-default-commands.const';
|
|
23
|
+
export * from './_collections/dibo-global-settings.conts';
|
|
24
|
+
export * from './_collections/dibo-operations.util';
|
|
25
|
+
|
|
26
|
+
// MODELS
|
|
27
|
+
export * from './_models/dibo-command.interface';
|
|
28
|
+
export * from './_models/dibo-last-mention-date.inteface';
|
|
29
|
+
export * from './_models/dibo-last-message-date.interface';
|
|
30
|
+
export * from './_models/dibo-global-settings.interface';
|
|
31
|
+
|
|
32
|
+
// SERVICES
|
|
33
|
+
export * from './_services/dibo-commands.control-service';
|
|
34
|
+
export * from './_services/dibo-io.control-service';
|
|
35
|
+
export * from './_services/dibo-main.control-service';
|
|
36
|
+
export * from './_services/dibo-routines.control-service';
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Vektor keresési mód enum
|
|
3
|
-
* Meghatározza, hogy milyen metrikát használunk a vektorok közötti hasonlóság számításához
|
|
4
|
-
*/
|
|
5
|
-
export enum LVS_Search_Mode {
|
|
6
|
-
/**
|
|
7
|
-
* Cosine similarity (koszinusz hasonlóság)
|
|
8
|
-
* 0 és 1 közötti érték, ahol 1 a legnagyobb hasonlóság
|
|
9
|
-
* Eredmények csökkenő sorrendben (legnagyobb hasonlóság először)
|
|
10
|
-
*/
|
|
11
|
-
cosineSimilarity = 'cosine-similarity',
|
|
12
|
-
/**
|
|
13
|
-
* L2 distance (Euklideszi távolság)
|
|
14
|
-
* 0 vagy pozitív érték, ahol 0 a legkisebb távolság (legnagyobb hasonlóság)
|
|
15
|
-
* Eredmények növekvő sorrendben (legkisebb távolság először)
|
|
16
|
-
*/
|
|
17
|
-
l2Distance = 'l2-distance',
|
|
18
|
-
/**
|
|
19
|
-
* Hybrid search: cosine similarity (vektor-fele) + BM25 (text-fele) score-merge.
|
|
20
|
-
*
|
|
21
|
-
* Hasznalat:
|
|
22
|
-
* - `searchMode: LVS_Search_Mode.hybrid`
|
|
23
|
-
* - `textSearchKey: keyof T` — KOTELEZO; melyik string property-n fut a BM25
|
|
24
|
-
* - `hybridWeight?: { vector: number; text: number }` — default { vector: 0.5, text: 0.5 }
|
|
25
|
-
*
|
|
26
|
-
* BM25 min-max normalizalva [0,1] a candidate-szettre (cosine mar 0..1), igy
|
|
27
|
-
* a `weight` direkt linearis kombinacio. Ha minden BM25 score 0 (egyetlen
|
|
28
|
-
* query term sem matchel), a hybrid effektivan cosine-only-re degradalodik.
|
|
29
|
-
*
|
|
30
|
-
* L2+hybrid kombinacio NEM tamogatott — a hybrid mindig cosine-alapu
|
|
31
|
-
* vector-half-fel mukodik.
|
|
32
|
-
*/
|
|
33
|
-
hybrid = 'hybrid',
|
|
34
|
-
}
|
|
35
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Vektor keresési mód enum
|
|
3
|
+
* Meghatározza, hogy milyen metrikát használunk a vektorok közötti hasonlóság számításához
|
|
4
|
+
*/
|
|
5
|
+
export enum LVS_Search_Mode {
|
|
6
|
+
/**
|
|
7
|
+
* Cosine similarity (koszinusz hasonlóság)
|
|
8
|
+
* 0 és 1 közötti érték, ahol 1 a legnagyobb hasonlóság
|
|
9
|
+
* Eredmények csökkenő sorrendben (legnagyobb hasonlóság először)
|
|
10
|
+
*/
|
|
11
|
+
cosineSimilarity = 'cosine-similarity',
|
|
12
|
+
/**
|
|
13
|
+
* L2 distance (Euklideszi távolság)
|
|
14
|
+
* 0 vagy pozitív érték, ahol 0 a legkisebb távolság (legnagyobb hasonlóság)
|
|
15
|
+
* Eredmények növekvő sorrendben (legkisebb távolság először)
|
|
16
|
+
*/
|
|
17
|
+
l2Distance = 'l2-distance',
|
|
18
|
+
/**
|
|
19
|
+
* Hybrid search: cosine similarity (vektor-fele) + BM25 (text-fele) score-merge.
|
|
20
|
+
*
|
|
21
|
+
* Hasznalat:
|
|
22
|
+
* - `searchMode: LVS_Search_Mode.hybrid`
|
|
23
|
+
* - `textSearchKey: keyof T` — KOTELEZO; melyik string property-n fut a BM25
|
|
24
|
+
* - `hybridWeight?: { vector: number; text: number }` — default { vector: 0.5, text: 0.5 }
|
|
25
|
+
*
|
|
26
|
+
* BM25 min-max normalizalva [0,1] a candidate-szettre (cosine mar 0..1), igy
|
|
27
|
+
* a `weight` direkt linearis kombinacio. Ha minden BM25 score 0 (egyetlen
|
|
28
|
+
* query term sem matchel), a hybrid effektivan cosine-only-re degradalodik.
|
|
29
|
+
*
|
|
30
|
+
* L2+hybrid kombinacio NEM tamogatott — a hybrid mindig cosine-alapu
|
|
31
|
+
* vector-half-fel mukodik.
|
|
32
|
+
*/
|
|
33
|
+
hybrid = 'hybrid',
|
|
34
|
+
}
|
|
35
|
+
|
package/src/_modules/local-vector-search/_models/data-models/lvs-vector-persist.data-model.ts
CHANGED
|
@@ -1,60 +1,60 @@
|
|
|
1
|
-
|
|
2
|
-
import { DyFM_DataModel_Params, DyFM_Metadata, DyFM_Object } from '@futdevpro/fsm-dynamo';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* `DyNTS_LVS_VectorPersist` (BFR-AM-001) — egy MongoDB-ben perzistált vektor-rekord, ami a
|
|
6
|
-
* `LVS_VectorPool_ControlService` **in-memory** pool-jának tartós háttértára. A FAM (fdp-agent-memory)
|
|
7
|
-
* workaround-ját generalizálja: a vektorok a SAJÁT Mongo-ban élnek, boot-kor a memória-pool-ba
|
|
8
|
-
* hidratálódnak — **NEM** MongoDB Atlas Vector Search.
|
|
9
|
-
*
|
|
10
|
-
* Egy dokumentum = **egy vektor egy adott pool-ban**. A `collectionKey` particionálja a pool-okat
|
|
11
|
-
* (egy fogyasztó több, logikailag elkülönített pool-t tarthat — pl. táranként). A `vectorId` a pool-on
|
|
12
|
-
* belüli kulcs (a `pool.addVector(vectorId, embedding)` ezzel illeszt).
|
|
13
|
-
*
|
|
14
|
-
* `extends DyFM_Metadata`: az identitás/metadata (`_id`, `__created`, `__lastModified`, `_deleted`) az
|
|
15
|
-
* ősből jön. A `metadata` `unknown` (Mongoose `Mixed`) — a fogyasztó tetszőleges kísérő-adatot tárolhat
|
|
16
|
-
* (a séma NEM validál); az `embedding` `number[]` a perzistált nyers vektor.
|
|
17
|
-
*/
|
|
18
|
-
export class DyNTS_LVS_VectorPersist extends DyFM_Metadata {
|
|
19
|
-
|
|
20
|
-
/** A pool-on belüli vektor-kulcs (a `pool.addVector(vectorId, ...)` ezzel illeszt). */
|
|
21
|
-
vectorId?: string;
|
|
22
|
-
|
|
23
|
-
/** Melyik (logikai) pool-hoz tartozik — a pool-particionálás kulcsa (hidratálás-szűrő). */
|
|
24
|
-
collectionKey?: string;
|
|
25
|
-
|
|
26
|
-
/** A perzistált NYERS vektor (a pool maga számolja a normalizált másolatot). */
|
|
27
|
-
embedding?: number[];
|
|
28
|
-
|
|
29
|
-
/** A vektor dimenziója (homogenitás-ellenőrzéshez + diagnosztikához tárolt). */
|
|
30
|
-
dimensions?: number;
|
|
31
|
-
|
|
32
|
-
/** Opcionális fogyasztó-specifikus kísérő-adat (Mongoose `Mixed`; a séma NEM validál). */
|
|
33
|
-
metadata?: unknown;
|
|
34
|
-
|
|
35
|
-
constructor(set?: Partial<DyNTS_LVS_VectorPersist>) {
|
|
1
|
+
|
|
2
|
+
import { DyFM_DataModel_Params, DyFM_Metadata, DyFM_Object } from '@futdevpro/fsm-dynamo';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* `DyNTS_LVS_VectorPersist` (BFR-AM-001) — egy MongoDB-ben perzistált vektor-rekord, ami a
|
|
6
|
+
* `LVS_VectorPool_ControlService` **in-memory** pool-jának tartós háttértára. A FAM (fdp-agent-memory)
|
|
7
|
+
* workaround-ját generalizálja: a vektorok a SAJÁT Mongo-ban élnek, boot-kor a memória-pool-ba
|
|
8
|
+
* hidratálódnak — **NEM** MongoDB Atlas Vector Search.
|
|
9
|
+
*
|
|
10
|
+
* Egy dokumentum = **egy vektor egy adott pool-ban**. A `collectionKey` particionálja a pool-okat
|
|
11
|
+
* (egy fogyasztó több, logikailag elkülönített pool-t tarthat — pl. táranként). A `vectorId` a pool-on
|
|
12
|
+
* belüli kulcs (a `pool.addVector(vectorId, embedding)` ezzel illeszt).
|
|
13
|
+
*
|
|
14
|
+
* `extends DyFM_Metadata`: az identitás/metadata (`_id`, `__created`, `__lastModified`, `_deleted`) az
|
|
15
|
+
* ősből jön. A `metadata` `unknown` (Mongoose `Mixed`) — a fogyasztó tetszőleges kísérő-adatot tárolhat
|
|
16
|
+
* (a séma NEM validál); az `embedding` `number[]` a perzistált nyers vektor.
|
|
17
|
+
*/
|
|
18
|
+
export class DyNTS_LVS_VectorPersist extends DyFM_Metadata {
|
|
19
|
+
|
|
20
|
+
/** A pool-on belüli vektor-kulcs (a `pool.addVector(vectorId, ...)` ezzel illeszt). */
|
|
21
|
+
vectorId?: string;
|
|
22
|
+
|
|
23
|
+
/** Melyik (logikai) pool-hoz tartozik — a pool-particionálás kulcsa (hidratálás-szűrő). */
|
|
24
|
+
collectionKey?: string;
|
|
25
|
+
|
|
26
|
+
/** A perzistált NYERS vektor (a pool maga számolja a normalizált másolatot). */
|
|
27
|
+
embedding?: number[];
|
|
28
|
+
|
|
29
|
+
/** A vektor dimenziója (homogenitás-ellenőrzéshez + diagnosztikához tárolt). */
|
|
30
|
+
dimensions?: number;
|
|
31
|
+
|
|
32
|
+
/** Opcionális fogyasztó-specifikus kísérő-adat (Mongoose `Mixed`; a séma NEM validál). */
|
|
33
|
+
metadata?: unknown;
|
|
34
|
+
|
|
35
|
+
constructor(set?: Partial<DyNTS_LVS_VectorPersist>) {
|
|
36
36
|
super(set);
|
|
37
|
-
|
|
38
|
-
if (set) {
|
|
39
|
-
DyFM_Object.cleanAssign(this, set);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* MongoDB data-params a `dynts_lvs_vector` collection-höz (BFR-AM-001). Az `embedding` `number[]` a
|
|
46
|
-
* perzistált nyers vektor; a `metadata` `type:'object'` (Mongoose `Mixed`) — a séma NEM validál. A
|
|
47
|
-
* `vectorId` + `collectionKey` index-elt (a hidratálás `collectionKey`-re, az upsert/remove a
|
|
48
|
-
* `vectorId`+`collectionKey` párra szűr).
|
|
49
|
-
*/
|
|
50
|
-
export const DyNTS_lvsVectorPersist_dataParams: DyFM_DataModel_Params<DyNTS_LVS_VectorPersist> =
|
|
51
|
-
new DyFM_DataModel_Params<DyNTS_LVS_VectorPersist>({
|
|
52
|
-
dataName: 'dynts_lvs_vector',
|
|
53
|
-
properties: {
|
|
54
|
-
vectorId: { type: 'string', index: true, required: true },
|
|
55
|
-
collectionKey: { type: 'string', index: true, required: true },
|
|
56
|
-
embedding: { type: 'number[]' },
|
|
57
|
-
dimensions: { type: 'number' },
|
|
58
|
-
metadata: { type: 'object' },
|
|
59
|
-
},
|
|
60
|
-
});
|
|
37
|
+
|
|
38
|
+
if (set) {
|
|
39
|
+
DyFM_Object.cleanAssign(this, set);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* MongoDB data-params a `dynts_lvs_vector` collection-höz (BFR-AM-001). Az `embedding` `number[]` a
|
|
46
|
+
* perzistált nyers vektor; a `metadata` `type:'object'` (Mongoose `Mixed`) — a séma NEM validál. A
|
|
47
|
+
* `vectorId` + `collectionKey` index-elt (a hidratálás `collectionKey`-re, az upsert/remove a
|
|
48
|
+
* `vectorId`+`collectionKey` párra szűr).
|
|
49
|
+
*/
|
|
50
|
+
export const DyNTS_lvsVectorPersist_dataParams: DyFM_DataModel_Params<DyNTS_LVS_VectorPersist> =
|
|
51
|
+
new DyFM_DataModel_Params<DyNTS_LVS_VectorPersist>({
|
|
52
|
+
dataName: 'dynts_lvs_vector',
|
|
53
|
+
properties: {
|
|
54
|
+
vectorId: { type: 'string', index: true, required: true },
|
|
55
|
+
collectionKey: { type: 'string', index: true, required: true },
|
|
56
|
+
embedding: { type: 'number[]' },
|
|
57
|
+
dimensions: { type: 'number' },
|
|
58
|
+
metadata: { type: 'object' },
|
|
59
|
+
},
|
|
60
|
+
});
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Vektor keresési eredmény interface
|
|
3
|
-
* Tartalmazza a találat ID-ját és a hasonlósági pontszámot
|
|
4
|
-
*/
|
|
5
|
-
export interface LVS_SearchResult {
|
|
6
|
-
/**
|
|
7
|
-
* A találat egyedi azonosítója
|
|
8
|
-
*/
|
|
9
|
-
id: string;
|
|
10
|
-
/**
|
|
11
|
-
* A hasonlósági pontszám
|
|
12
|
-
* Cosine similarity esetén: 0-1 közötti érték (1 = legnagyobb hasonlóság)
|
|
13
|
-
* L2 distance esetén: 0 vagy pozitív érték (0 = legkisebb távolság, legnagyobb hasonlóság)
|
|
14
|
-
*/
|
|
15
|
-
score: number;
|
|
16
|
-
}
|
|
17
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Vektor keresési eredmény interface
|
|
3
|
+
* Tartalmazza a találat ID-ját és a hasonlósági pontszámot
|
|
4
|
+
*/
|
|
5
|
+
export interface LVS_SearchResult {
|
|
6
|
+
/**
|
|
7
|
+
* A találat egyedi azonosítója
|
|
8
|
+
*/
|
|
9
|
+
id: string;
|
|
10
|
+
/**
|
|
11
|
+
* A hasonlósági pontszám
|
|
12
|
+
* Cosine similarity esetén: 0-1 közötti érték (1 = legnagyobb hasonlóság)
|
|
13
|
+
* L2 distance esetén: 0 vagy pozitív érték (0 = legkisebb távolság, legnagyobb hasonlóság)
|
|
14
|
+
*/
|
|
15
|
+
score: number;
|
|
16
|
+
}
|
|
17
|
+
|