@solidxai/core 0.1.10-beta.26 → 0.1.10-beta.28
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/.claude/settings.local.json +15 -0
- package/CLAUDE.md +26 -0
- package/MICROSOFT_ACTIVE_DIRECTORY_OAUTH_FLOW.md +616 -0
- package/ai-interaction-cleanup.sql +53 -0
- package/dist/constants/error-messages.d.ts +1 -0
- package/dist/constants/error-messages.d.ts.map +1 -1
- package/dist/constants/error-messages.js +1 -0
- package/dist/constants/error-messages.js.map +1 -1
- package/dist/controllers/microsoft-active-directory-authentication.controller.d.ts +28 -0
- package/dist/controllers/microsoft-active-directory-authentication.controller.d.ts.map +1 -0
- package/dist/controllers/microsoft-active-directory-authentication.controller.js +122 -0
- package/dist/controllers/microsoft-active-directory-authentication.controller.js.map +1 -0
- package/dist/controllers/service.controller.d.ts +1 -5
- package/dist/controllers/service.controller.d.ts.map +1 -1
- package/dist/controllers/service.controller.js +6 -11
- package/dist/controllers/service.controller.js.map +1 -1
- package/dist/controllers/test.controller.d.ts +1 -6
- package/dist/controllers/test.controller.d.ts.map +1 -1
- package/dist/controllers/test.controller.js +2 -20
- package/dist/controllers/test.controller.js.map +1 -1
- package/dist/dtos/create-permission-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/create-permission-metadata.dto.js +2 -0
- package/dist/dtos/create-permission-metadata.dto.js.map +1 -1
- package/dist/dtos/create-role-metadata.dto.d.ts +2 -0
- package/dist/dtos/create-role-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/create-role-metadata.dto.js +13 -1
- package/dist/dtos/create-role-metadata.dto.js.map +1 -1
- package/dist/dtos/import-instructions.dto.d.ts +2 -0
- package/dist/dtos/import-instructions.dto.d.ts.map +1 -1
- package/dist/dtos/import-instructions.dto.js +15 -1
- package/dist/dtos/import-instructions.dto.js.map +1 -1
- package/dist/dtos/update-permission-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/update-permission-metadata.dto.js +3 -1
- package/dist/dtos/update-permission-metadata.dto.js.map +1 -1
- package/dist/dtos/update-role-metadata.dto.d.ts +2 -0
- package/dist/dtos/update-role-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/update-role-metadata.dto.js +13 -1
- package/dist/dtos/update-role-metadata.dto.js.map +1 -1
- package/dist/entities/action-metadata.entity.d.ts.map +1 -1
- package/dist/entities/action-metadata.entity.js +1 -0
- package/dist/entities/action-metadata.entity.js.map +1 -1
- package/dist/entities/agent-event.entity.d.ts.map +1 -1
- package/dist/entities/agent-event.entity.js +1 -0
- package/dist/entities/agent-event.entity.js.map +1 -1
- package/dist/entities/agent-session.entity.d.ts.map +1 -1
- package/dist/entities/agent-session.entity.js +1 -0
- package/dist/entities/agent-session.entity.js.map +1 -1
- package/dist/entities/chatter-message.entity.d.ts.map +1 -1
- package/dist/entities/chatter-message.entity.js +2 -0
- package/dist/entities/chatter-message.entity.js.map +1 -1
- package/dist/entities/email-template.entity.d.ts.map +1 -1
- package/dist/entities/email-template.entity.js +1 -0
- package/dist/entities/email-template.entity.js.map +1 -1
- package/dist/entities/field-metadata.entity.d.ts.map +1 -1
- package/dist/entities/field-metadata.entity.js +4 -0
- package/dist/entities/field-metadata.entity.js.map +1 -1
- package/dist/entities/list-of-values.entity.d.ts.map +1 -1
- package/dist/entities/list-of-values.entity.js +4 -0
- package/dist/entities/list-of-values.entity.js.map +1 -1
- package/dist/entities/locale.entity.d.ts.map +1 -1
- package/dist/entities/locale.entity.js +1 -0
- package/dist/entities/locale.entity.js.map +1 -1
- package/dist/entities/media.entity.d.ts.map +1 -1
- package/dist/entities/media.entity.js +1 -0
- package/dist/entities/media.entity.js.map +1 -1
- package/dist/entities/menu-item-metadata.entity.d.ts.map +1 -1
- package/dist/entities/menu-item-metadata.entity.js +2 -0
- package/dist/entities/menu-item-metadata.entity.js.map +1 -1
- package/dist/entities/model-metadata.entity.d.ts.map +1 -1
- package/dist/entities/model-metadata.entity.js +3 -0
- package/dist/entities/model-metadata.entity.js.map +1 -1
- package/dist/entities/module-metadata.entity.d.ts.map +1 -1
- package/dist/entities/module-metadata.entity.js +2 -0
- package/dist/entities/module-metadata.entity.js.map +1 -1
- package/dist/entities/permission-metadata.entity.d.ts.map +1 -1
- package/dist/entities/permission-metadata.entity.js.map +1 -1
- package/dist/entities/role-metadata.entity.d.ts +2 -0
- package/dist/entities/role-metadata.entity.d.ts.map +1 -1
- package/dist/entities/role-metadata.entity.js +10 -2
- package/dist/entities/role-metadata.entity.js.map +1 -1
- package/dist/entities/saved-filters.entity.d.ts.map +1 -1
- package/dist/entities/saved-filters.entity.js +3 -0
- package/dist/entities/saved-filters.entity.js.map +1 -1
- package/dist/entities/scheduled-job.entity.d.ts.map +1 -1
- package/dist/entities/scheduled-job.entity.js +2 -0
- package/dist/entities/scheduled-job.entity.js.map +1 -1
- package/dist/entities/security-rule.entity.d.ts.map +1 -1
- package/dist/entities/security-rule.entity.js +1 -0
- package/dist/entities/security-rule.entity.js.map +1 -1
- package/dist/entities/sms-template.entity.d.ts.map +1 -1
- package/dist/entities/sms-template.entity.js +2 -0
- package/dist/entities/sms-template.entity.js.map +1 -1
- package/dist/entities/user-activity-history.entity.d.ts.map +1 -1
- package/dist/entities/user-activity-history.entity.js +1 -0
- package/dist/entities/user-activity-history.entity.js.map +1 -1
- package/dist/entities/user.entity.d.ts +3 -0
- package/dist/entities/user.entity.d.ts.map +1 -1
- package/dist/entities/user.entity.js +15 -1
- package/dist/entities/user.entity.js.map +1 -1
- package/dist/entities/view-metadata.entity.d.ts.map +1 -1
- package/dist/entities/view-metadata.entity.js +2 -0
- package/dist/entities/view-metadata.entity.js.map +1 -1
- package/dist/helpers/microsoft-active-directory-oauth.helper.d.ts +34 -0
- package/dist/helpers/microsoft-active-directory-oauth.helper.d.ts.map +1 -0
- package/dist/helpers/microsoft-active-directory-oauth.helper.js +43 -0
- package/dist/helpers/microsoft-active-directory-oauth.helper.js.map +1 -0
- package/dist/helpers/module.helper.js +0 -5
- package/dist/helpers/module.helper.js.map +1 -1
- package/dist/helpers/user-helper.d.ts.map +1 -1
- package/dist/helpers/user-helper.js +4 -0
- package/dist/helpers/user-helper.js.map +1 -1
- package/dist/index.d.ts +1 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -5
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts +0 -8
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/interfaces.js.map +1 -1
- package/dist/passport-strategies/microsoft-active-directory-oauth.strategy.d.ts +14 -0
- package/dist/passport-strategies/microsoft-active-directory-oauth.strategy.d.ts.map +1 -0
- package/dist/passport-strategies/microsoft-active-directory-oauth.strategy.js +67 -0
- package/dist/passport-strategies/microsoft-active-directory-oauth.strategy.js.map +1 -0
- package/dist/seeders/seed-data/solid-core-metadata.json +317 -814
- package/dist/services/authentication.service.d.ts +12 -0
- package/dist/services/authentication.service.d.ts.map +1 -1
- package/dist/services/authentication.service.js +64 -0
- package/dist/services/authentication.service.js.map +1 -1
- package/dist/services/crud-helper.service.d.ts.map +1 -1
- package/dist/services/crud-helper.service.js +11 -3
- package/dist/services/crud-helper.service.js.map +1 -1
- package/dist/services/import-transaction.service.d.ts.map +1 -1
- package/dist/services/import-transaction.service.js +6 -0
- package/dist/services/import-transaction.service.js.map +1 -1
- package/dist/services/settings/default-settings-provider.service.d.ts +100 -0
- package/dist/services/settings/default-settings-provider.service.d.ts.map +1 -1
- package/dist/services/settings/default-settings-provider.service.js +56 -0
- package/dist/services/settings/default-settings-provider.service.js.map +1 -1
- package/dist/services/user.service.d.ts +2 -0
- package/dist/services/user.service.d.ts.map +1 -1
- package/dist/services/user.service.js +46 -0
- package/dist/services/user.service.js.map +1 -1
- package/dist/solid-core.module.d.ts.map +1 -1
- package/dist/solid-core.module.js +4 -29
- package/dist/solid-core.module.js.map +1 -1
- package/dist/subscribers/scheduled-job.subscriber.js +1 -1
- package/dist/subscribers/scheduled-job.subscriber.js.map +1 -1
- package/dist/subscribers/security-rule.subscriber.js +1 -1
- package/dist/subscribers/security-rule.subscriber.js.map +1 -1
- package/package.json +4 -4
- package/src/constants/error-messages.ts +2 -1
- package/src/controllers/microsoft-active-directory-authentication.controller.ts +104 -0
- package/src/controllers/service.controller.ts +4 -7
- package/src/controllers/test.controller.ts +0 -9
- package/src/dtos/create-permission-metadata.dto.ts +3 -0
- package/src/dtos/create-role-metadata.dto.ts +11 -1
- package/src/dtos/import-instructions.dto.ts +11 -1
- package/src/dtos/update-permission-metadata.dto.ts +4 -1
- package/src/dtos/update-role-metadata.dto.ts +21 -1
- package/src/entities/action-metadata.entity.ts +1 -0
- package/src/entities/agent-event.entity.ts +1 -0
- package/src/entities/agent-session.entity.ts +1 -0
- package/src/entities/chatter-message.entity.ts +2 -0
- package/src/entities/email-template.entity.ts +1 -0
- package/src/entities/field-metadata.entity.ts +4 -1
- package/src/entities/list-of-values.entity.ts +5 -1
- package/src/entities/locale.entity.ts +1 -0
- package/src/entities/media.entity.ts +1 -0
- package/src/entities/menu-item-metadata.entity.ts +2 -0
- package/src/entities/model-metadata.entity.ts +3 -0
- package/src/entities/module-metadata.entity.ts +2 -0
- package/src/entities/permission-metadata.entity.ts +2 -2
- package/src/entities/role-metadata.entity.ts +11 -3
- package/src/entities/saved-filters.entity.ts +3 -0
- package/src/entities/scheduled-job.entity.ts +2 -0
- package/src/entities/security-rule.entity.ts +1 -0
- package/src/entities/sms-template.entity.ts +2 -0
- package/src/entities/user-activity-history.entity.ts +1 -0
- package/src/entities/user.entity.ts +15 -1
- package/src/entities/view-metadata.entity.ts +2 -0
- package/src/helpers/microsoft-active-directory-oauth.helper.ts +83 -0
- package/src/helpers/module.helper.ts +5 -5
- package/src/helpers/user-helper.ts +5 -1
- package/src/index.ts +1 -5
- package/src/interfaces.ts +0 -8
- package/src/passport-strategies/microsoft-active-directory-oauth.strategy.ts +63 -0
- package/src/seeders/seed-data/solid-core-metadata.json +317 -814
- package/src/services/1.js +6 -0
- package/src/services/authentication.service.ts +78 -0
- package/src/services/crud-helper.service.ts +9 -3
- package/src/services/import-transaction.service.ts +11 -1
- package/src/services/settings/default-settings-provider.service.ts +59 -0
- package/src/services/user.service.ts +61 -0
- package/src/solid-core.module.ts +4 -31
- package/src/subscribers/scheduled-job.subscriber.ts +1 -1
- package/src/subscribers/security-rule.subscriber.ts +1 -1
- package/dist/commands/ingest.command.d.ts +0 -16
- package/dist/commands/ingest.command.d.ts.map +0 -1
- package/dist/commands/ingest.command.js +0 -50
- package/dist/commands/ingest.command.js.map +0 -1
- package/dist/controllers/ai-interaction.controller.d.ts +0 -29
- package/dist/controllers/ai-interaction.controller.d.ts.map +0 -1
- package/dist/controllers/ai-interaction.controller.js +0 -218
- package/dist/controllers/ai-interaction.controller.js.map +0 -1
- package/dist/dtos/create-ai-interaction.dto.d.ts +0 -23
- package/dist/dtos/create-ai-interaction.dto.d.ts.map +0 -1
- package/dist/dtos/create-ai-interaction.dto.js +0 -149
- package/dist/dtos/create-ai-interaction.dto.js.map +0 -1
- package/dist/dtos/invoke-ai-prompt.dto.d.ts +0 -5
- package/dist/dtos/invoke-ai-prompt.dto.d.ts.map +0 -1
- package/dist/dtos/invoke-ai-prompt.dto.js +0 -30
- package/dist/dtos/invoke-ai-prompt.dto.js.map +0 -1
- package/dist/dtos/update-ai-interaction.dto.d.ts +0 -24
- package/dist/dtos/update-ai-interaction.dto.d.ts.map +0 -1
- package/dist/dtos/update-ai-interaction.dto.js +0 -150
- package/dist/dtos/update-ai-interaction.dto.js.map +0 -1
- package/dist/entities/ai-interaction.entity.d.ts +0 -24
- package/dist/entities/ai-interaction.entity.d.ts.map +0 -1
- package/dist/entities/ai-interaction.entity.js +0 -116
- package/dist/entities/ai-interaction.entity.js.map +0 -1
- package/dist/jobs/database/trigger-mcp-client-publisher-database.service.d.ts +0 -11
- package/dist/jobs/database/trigger-mcp-client-publisher-database.service.d.ts.map +0 -1
- package/dist/jobs/database/trigger-mcp-client-publisher-database.service.js +0 -39
- package/dist/jobs/database/trigger-mcp-client-publisher-database.service.js.map +0 -1
- package/dist/jobs/database/trigger-mcp-client-queue-options.d.ts +0 -8
- package/dist/jobs/database/trigger-mcp-client-queue-options.d.ts.map +0 -1
- package/dist/jobs/database/trigger-mcp-client-queue-options.js +0 -10
- package/dist/jobs/database/trigger-mcp-client-queue-options.js.map +0 -1
- package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.d.ts +0 -25
- package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.d.ts.map +0 -1
- package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.js +0 -222
- package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.js.map +0 -1
- package/dist/jobs/rabbitmq/trigger-mcp-client-publisher.service.d.ts +0 -11
- package/dist/jobs/rabbitmq/trigger-mcp-client-publisher.service.d.ts.map +0 -1
- package/dist/jobs/rabbitmq/trigger-mcp-client-publisher.service.js +0 -39
- package/dist/jobs/rabbitmq/trigger-mcp-client-publisher.service.js.map +0 -1
- package/dist/jobs/rabbitmq/trigger-mcp-client-queue-options.d.ts +0 -8
- package/dist/jobs/rabbitmq/trigger-mcp-client-queue-options.d.ts.map +0 -1
- package/dist/jobs/rabbitmq/trigger-mcp-client-queue-options.js +0 -10
- package/dist/jobs/rabbitmq/trigger-mcp-client-queue-options.js.map +0 -1
- package/dist/jobs/rabbitmq/trigger-mcp-client-subscriber.service.d.ts +0 -18
- package/dist/jobs/rabbitmq/trigger-mcp-client-subscriber.service.d.ts.map +0 -1
- package/dist/jobs/rabbitmq/trigger-mcp-client-subscriber.service.js +0 -103
- package/dist/jobs/rabbitmq/trigger-mcp-client-subscriber.service.js.map +0 -1
- package/dist/jobs/redis/trigger-mcp-client-publisher-redis.service.d.ts +0 -11
- package/dist/jobs/redis/trigger-mcp-client-publisher-redis.service.d.ts.map +0 -1
- package/dist/jobs/redis/trigger-mcp-client-publisher-redis.service.js +0 -39
- package/dist/jobs/redis/trigger-mcp-client-publisher-redis.service.js.map +0 -1
- package/dist/jobs/redis/trigger-mcp-client-queue-options-redis.d.ts +0 -8
- package/dist/jobs/redis/trigger-mcp-client-queue-options-redis.d.ts.map +0 -1
- package/dist/jobs/redis/trigger-mcp-client-queue-options-redis.js +0 -10
- package/dist/jobs/redis/trigger-mcp-client-queue-options-redis.js.map +0 -1
- package/dist/jobs/redis/trigger-mcp-client-subscriber-redis.service.d.ts +0 -18
- package/dist/jobs/redis/trigger-mcp-client-subscriber-redis.service.d.ts.map +0 -1
- package/dist/jobs/redis/trigger-mcp-client-subscriber-redis.service.js +0 -103
- package/dist/jobs/redis/trigger-mcp-client-subscriber-redis.service.js.map +0 -1
- package/dist/repository/ai-interaction.repository.d.ts +0 -12
- package/dist/repository/ai-interaction.repository.d.ts.map +0 -1
- package/dist/repository/ai-interaction.repository.js +0 -34
- package/dist/repository/ai-interaction.repository.js.map +0 -1
- package/dist/services/ai-interaction.service.d.ts +0 -23
- package/dist/services/ai-interaction.service.d.ts.map +0 -1
- package/dist/services/ai-interaction.service.js +0 -217
- package/dist/services/ai-interaction.service.js.map +0 -1
- package/dist/services/genai/ingest-metadata.service.d.ts +0 -38
- package/dist/services/genai/ingest-metadata.service.d.ts.map +0 -1
- package/dist/services/genai/ingest-metadata.service.js +0 -542
- package/dist/services/genai/ingest-metadata.service.js.map +0 -1
- package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.d.ts +0 -9
- package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.d.ts.map +0 -1
- package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.js +0 -39
- package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.js.map +0 -1
- package/dist/services/genai/r2r-helper.service.d.ts +0 -9
- package/dist/services/genai/r2r-helper.service.d.ts.map +0 -1
- package/dist/services/genai/r2r-helper.service.js +0 -40
- package/dist/services/genai/r2r-helper.service.js.map +0 -1
- package/dist-tests/api/authenticate.spec.js +0 -119
- package/dist-tests/api/authenticate.spec.js.map +0 -1
- package/dist-tests/api/crud-service.findOne.cityMaster.spec.js +0 -97
- package/dist-tests/api/crud-service.findOne.cityMaster.spec.js.map +0 -1
- package/dist-tests/api/ping.spec.js +0 -21
- package/dist-tests/api/ping.spec.js.map +0 -1
- package/dist-tests/helpers/auth.js +0 -41
- package/dist-tests/helpers/auth.js.map +0 -1
- package/dist-tests/helpers/env.js +0 -11
- package/dist-tests/helpers/env.js.map +0 -1
- package/docs/dashboards/AGENTIC_DASHBOARD_IMPLEMENTATION_PLAN.md +0 -438
- package/docs/dashboards/dashboard-curl-smoke-tests.txt +0 -146
- package/docs/dashboards/delete-legacy-dashboard-metadata.sql +0 -172
- package/docs/grouping-enhancements.md +0 -89
- package/docs/java-spring/README.md +0 -3
- package/docs/java-spring/solid-core-module-deep-dive-report.md +0 -1317
- package/docs/module-package-import-handoff.md +0 -691
- package/docs/seed-changes.md +0 -65
- package/docs/test-data-workflow.md +0 -200
- package/docs/type-declaration-import-issue.md +0 -24
- package/src/commands/ingest.command.ts +0 -36
- package/src/controllers/ai-interaction.controller.ts +0 -112
- package/src/dtos/create-ai-interaction.dto.ts +0 -89
- package/src/dtos/invoke-ai-prompt.dto.ts +0 -10
- package/src/dtos/update-ai-interaction.dto.ts +0 -93
- package/src/entities/ai-interaction.entity.ts +0 -71
- package/src/jobs/database/trigger-mcp-client-publisher-database.service.ts +0 -22
- package/src/jobs/database/trigger-mcp-client-queue-options.ts +0 -9
- package/src/jobs/database/trigger-mcp-client-subscriber-database.service.ts +0 -278
- package/src/jobs/rabbitmq/trigger-mcp-client-publisher.service.ts +0 -22
- package/src/jobs/rabbitmq/trigger-mcp-client-queue-options.ts +0 -9
- package/src/jobs/rabbitmq/trigger-mcp-client-subscriber.service.ts +0 -104
- package/src/jobs/redis/trigger-mcp-client-publisher-redis.service.ts +0 -23
- package/src/jobs/redis/trigger-mcp-client-queue-options-redis.ts +0 -9
- package/src/jobs/redis/trigger-mcp-client-subscriber-redis.service.ts +0 -98
- package/src/repository/ai-interaction.repository.ts +0 -17
- package/src/services/ai-interaction.service.ts +0 -239
- package/src/services/genai/ingest-metadata.service.ts +0 -798
- package/src/services/genai/mcp-handlers/mcp-handler-factory.service.ts +0 -33
- package/src/services/genai/r2r-helper.service.ts +0 -37
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-mcp-client-queue-options.d.ts","sourceRoot":"","sources":["../../../src/jobs/rabbitmq/trigger-mcp-client-queue-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;;;;;;AAI9C,wBAIE"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const interfaces_1 = require("../../interfaces");
|
|
4
|
-
const TRIGGER_MCP_CLIENT_QUEUE_NAME = 'solid_trigger_mcp_client_queue_rabbitmq';
|
|
5
|
-
exports.default = {
|
|
6
|
-
name: TRIGGER_MCP_CLIENT_QUEUE_NAME,
|
|
7
|
-
type: interfaces_1.BrokerType.RabbitMQ,
|
|
8
|
-
queueName: TRIGGER_MCP_CLIENT_QUEUE_NAME,
|
|
9
|
-
};
|
|
10
|
-
//# sourceMappingURL=trigger-mcp-client-queue-options.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-mcp-client-queue-options.js","sourceRoot":"","sources":["../../../src/jobs/rabbitmq/trigger-mcp-client-queue-options.ts"],"names":[],"mappings":";;AAAA,iDAA8C;AAE9C,MAAM,6BAA6B,GAAG,yCAAyC,CAAC;AAEhF,kBAAe;IACX,IAAI,EAAE,6BAA6B;IACnC,IAAI,EAAE,uBAAU,CAAC,QAAQ;IACzB,SAAS,EAAE,6BAA6B;CAC3C,CAAC","sourcesContent":["import { BrokerType } from \"../../interfaces\";\n\nconst TRIGGER_MCP_CLIENT_QUEUE_NAME = 'solid_trigger_mcp_client_queue_rabbitmq';\n\nexport default {\n name: TRIGGER_MCP_CLIENT_QUEUE_NAME,\n type: BrokerType.RabbitMQ,\n queueName: TRIGGER_MCP_CLIENT_QUEUE_NAME,\n};\n"]}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { QueueMessage } from '../../interfaces/mq';
|
|
2
|
-
import { AiInteractionService } from '../../services/ai-interaction.service';
|
|
3
|
-
import { PollerService } from '../../services/poller.service';
|
|
4
|
-
import { TriggerMcpClientOptions, QueuesModuleOptions } from '../../interfaces';
|
|
5
|
-
import { MqMessageQueueService } from '../../services/mq-message-queue.service';
|
|
6
|
-
import { MqMessageService } from '../../services/mq-message.service';
|
|
7
|
-
import { RabbitMqSubscriber } from '../../services/queues/rabbitmq-subscriber.service';
|
|
8
|
-
export declare class TriggerMcpClientSubscriberRabbitmq extends RabbitMqSubscriber<TriggerMcpClientOptions> {
|
|
9
|
-
readonly mqMessageService: MqMessageService;
|
|
10
|
-
readonly mqMessageQueueService: MqMessageQueueService;
|
|
11
|
-
readonly poller: PollerService;
|
|
12
|
-
readonly aiInteractionService: AiInteractionService;
|
|
13
|
-
private readonly triggerMcpClientSubscriberLogger;
|
|
14
|
-
constructor(mqMessageService: MqMessageService, mqMessageQueueService: MqMessageQueueService, poller: PollerService, aiInteractionService: AiInteractionService);
|
|
15
|
-
options(): QueuesModuleOptions;
|
|
16
|
-
subscribe(message: QueueMessage<TriggerMcpClientOptions>): Promise<import("../../interfaces").McpResponse>;
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=trigger-mcp-client-subscriber.service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-mcp-client-subscriber.service.d.ts","sourceRoot":"","sources":["../../../src/jobs/rabbitmq/trigger-mcp-client-subscriber.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAErF,qBACa,kCAAmC,SAAQ,kBAAkB,CAAC,uBAAuB,CAAC;IAI3F,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;IACrD,QAAQ,CAAC,MAAM,EAAE,aAAa;IAC9B,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB;IANvD,OAAO,CAAC,QAAQ,CAAC,gCAAgC,CAAuD;gBAG3F,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB,EAC5C,MAAM,EAAE,aAAa,EACrB,oBAAoB,EAAE,oBAAoB;IAKvD,OAAO,IAAI,mBAAmB;IAMxB,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,uBAAuB,CAAC;CAyEjE"}
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
var TriggerMcpClientSubscriberRabbitmq_1;
|
|
15
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
-
exports.TriggerMcpClientSubscriberRabbitmq = void 0;
|
|
17
|
-
const common_1 = require("@nestjs/common");
|
|
18
|
-
const trigger_mcp_client_queue_options_1 = __importDefault(require("./trigger-mcp-client-queue-options"));
|
|
19
|
-
const ai_interaction_service_1 = require("../../services/ai-interaction.service");
|
|
20
|
-
const poller_service_1 = require("../../services/poller.service");
|
|
21
|
-
const mq_message_queue_service_1 = require("../../services/mq-message-queue.service");
|
|
22
|
-
const mq_message_service_1 = require("../../services/mq-message.service");
|
|
23
|
-
const rabbitmq_subscriber_service_1 = require("../../services/queues/rabbitmq-subscriber.service");
|
|
24
|
-
let TriggerMcpClientSubscriberRabbitmq = TriggerMcpClientSubscriberRabbitmq_1 = class TriggerMcpClientSubscriberRabbitmq extends rabbitmq_subscriber_service_1.RabbitMqSubscriber {
|
|
25
|
-
constructor(mqMessageService, mqMessageQueueService, poller, aiInteractionService) {
|
|
26
|
-
super(mqMessageService, mqMessageQueueService);
|
|
27
|
-
this.mqMessageService = mqMessageService;
|
|
28
|
-
this.mqMessageQueueService = mqMessageQueueService;
|
|
29
|
-
this.poller = poller;
|
|
30
|
-
this.aiInteractionService = aiInteractionService;
|
|
31
|
-
this.triggerMcpClientSubscriberLogger = new common_1.Logger(TriggerMcpClientSubscriberRabbitmq_1.name);
|
|
32
|
-
}
|
|
33
|
-
options() {
|
|
34
|
-
return {
|
|
35
|
-
...trigger_mcp_client_queue_options_1.default
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
async subscribe(message) {
|
|
39
|
-
this.triggerMcpClientSubscriberLogger.debug(`Received message: ${JSON.stringify(message)}`);
|
|
40
|
-
const codeGnerationOptions = message.payload;
|
|
41
|
-
const aiInteraction = await this.aiInteractionService.findOne(codeGnerationOptions.aiInteractionId, {
|
|
42
|
-
populate: ['user']
|
|
43
|
-
});
|
|
44
|
-
if (!aiInteraction) {
|
|
45
|
-
const m = `Unable to identified the aiInteraction entry that triggered this job... using id: ${codeGnerationOptions.aiInteractionId}`;
|
|
46
|
-
this.triggerMcpClientSubscriberLogger.log(m);
|
|
47
|
-
throw new Error(m);
|
|
48
|
-
}
|
|
49
|
-
const prompt = aiInteraction.message;
|
|
50
|
-
const aiResponse = await this.aiInteractionService.runMcpPrompt(prompt);
|
|
51
|
-
this.triggerMcpClientSubscriberLogger.log(`aiResponse: `);
|
|
52
|
-
this.triggerMcpClientSubscriberLogger.log(JSON.stringify(aiResponse));
|
|
53
|
-
if (!aiResponse.success) {
|
|
54
|
-
this.triggerMcpClientSubscriberLogger.log(`Gen ai has returned with a false status code`);
|
|
55
|
-
const errorsStr = aiResponse.errors.join('; ');
|
|
56
|
-
await this.aiInteractionService.create({
|
|
57
|
-
userId: aiInteraction.user.id,
|
|
58
|
-
threadId: aiInteraction.threadId,
|
|
59
|
-
parentInteractionId: aiInteraction.id,
|
|
60
|
-
role: 'gen-ai',
|
|
61
|
-
message: '-',
|
|
62
|
-
contentType: aiResponse.content_type,
|
|
63
|
-
errorMessage: errorsStr,
|
|
64
|
-
modelUsed: aiResponse.model,
|
|
65
|
-
responseTimeMs: aiResponse.duration_ms,
|
|
66
|
-
metadata: JSON.stringify(aiResponse),
|
|
67
|
-
isApplied: aiInteraction.isApplied,
|
|
68
|
-
status: aiResponse.success ? 'succeeded' : 'failed'
|
|
69
|
-
});
|
|
70
|
-
throw new Error(errorsStr);
|
|
71
|
-
}
|
|
72
|
-
else {
|
|
73
|
-
let nestedResponse = aiResponse.response.trim();
|
|
74
|
-
const genAiInteraction = await this.aiInteractionService.create({
|
|
75
|
-
userId: aiInteraction.user.id,
|
|
76
|
-
threadId: aiInteraction.threadId,
|
|
77
|
-
parentInteractionId: aiInteraction.id,
|
|
78
|
-
role: 'gen-ai',
|
|
79
|
-
message: nestedResponse,
|
|
80
|
-
contentType: aiResponse.content_type,
|
|
81
|
-
errorMessage: '',
|
|
82
|
-
modelUsed: aiResponse.model,
|
|
83
|
-
responseTimeMs: aiResponse.duration_ms,
|
|
84
|
-
metadata: JSON.stringify(aiResponse),
|
|
85
|
-
isApplied: aiInteraction.isApplied,
|
|
86
|
-
status: aiResponse.success ? 'succeeded' : 'failed'
|
|
87
|
-
});
|
|
88
|
-
if (aiInteraction.isAutoApply) {
|
|
89
|
-
this.aiInteractionService.applySolidAiInteraction(genAiInteraction.id);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
return aiResponse;
|
|
93
|
-
}
|
|
94
|
-
};
|
|
95
|
-
exports.TriggerMcpClientSubscriberRabbitmq = TriggerMcpClientSubscriberRabbitmq;
|
|
96
|
-
exports.TriggerMcpClientSubscriberRabbitmq = TriggerMcpClientSubscriberRabbitmq = TriggerMcpClientSubscriberRabbitmq_1 = __decorate([
|
|
97
|
-
(0, common_1.Injectable)(),
|
|
98
|
-
__metadata("design:paramtypes", [mq_message_service_1.MqMessageService,
|
|
99
|
-
mq_message_queue_service_1.MqMessageQueueService,
|
|
100
|
-
poller_service_1.PollerService,
|
|
101
|
-
ai_interaction_service_1.AiInteractionService])
|
|
102
|
-
], TriggerMcpClientSubscriberRabbitmq);
|
|
103
|
-
//# sourceMappingURL=trigger-mcp-client-subscriber.service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-mcp-client-subscriber.service.js","sourceRoot":"","sources":["../../../src/jobs/rabbitmq/trigger-mcp-client-subscriber.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\n\nimport { QueueMessage } from 'src/interfaces/mq';\nimport triggerMcpClientQueueOptions from \"./trigger-mcp-client-queue-options\";\nimport { AiInteractionService } from 'src/services/ai-interaction.service';\nimport { PollerService } from 'src/services/poller.service';\nimport { TriggerMcpClientOptions, QueuesModuleOptions } from '../../interfaces';\nimport { MqMessageQueueService } from 'src/services/mq-message-queue.service';\nimport { MqMessageService } from 'src/services/mq-message.service';\nimport { RabbitMqSubscriber } from 'src/services/queues/rabbitmq-subscriber.service';\n\n@Injectable()\nexport class TriggerMcpClientSubscriberRabbitmq extends RabbitMqSubscriber<TriggerMcpClientOptions> {\n private readonly triggerMcpClientSubscriberLogger = new Logger(TriggerMcpClientSubscriberRabbitmq.name);\n\n constructor(\n readonly mqMessageService: MqMessageService,\n readonly mqMessageQueueService: MqMessageQueueService,\n readonly poller: PollerService,\n readonly aiInteractionService: AiInteractionService,\n ) {\n super(mqMessageService, mqMessageQueueService);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...triggerMcpClientQueueOptions\n }\n }\n\n async subscribe(message: QueueMessage<TriggerMcpClientOptions>) {\n this.triggerMcpClientSubscriberLogger.debug(`Received message: ${JSON.stringify(message)}`);\n\n const codeGnerationOptions = message.payload;\n\n const aiInteraction = await this.aiInteractionService.findOne(codeGnerationOptions.aiInteractionId, {\n populate: ['user']\n });\n if (!aiInteraction) {\n const m = `Unable to identified the aiInteraction entry that triggered this job... using id: ${codeGnerationOptions.aiInteractionId}`\n this.triggerMcpClientSubscriberLogger.log(m);\n throw new Error(m);\n }\n\n // The message contains the users prompt.\n const prompt = aiInteraction.message;\n\n // Use this to invoke our mcp client\n // TODO: try / catch ...\n // Handle the rejection gracefully...\n const aiResponse = await this.aiInteractionService.runMcpPrompt(prompt);\n this.triggerMcpClientSubscriberLogger.log(`aiResponse: `);\n this.triggerMcpClientSubscriberLogger.log(JSON.stringify(aiResponse));\n\n if (!aiResponse.success) {\n this.triggerMcpClientSubscriberLogger.log(`Gen ai has returned with a false status code`);\n\n const errorsStr = aiResponse.errors.join('; ');\n\n await this.aiInteractionService.create({\n userId: aiInteraction.user.id,\n threadId: aiInteraction.threadId,\n parentInteractionId: aiInteraction.id,\n role: 'gen-ai',\n message: '-',\n contentType: aiResponse.content_type,\n errorMessage: errorsStr,\n modelUsed: aiResponse.model,\n responseTimeMs: aiResponse.duration_ms,\n metadata: JSON.stringify(aiResponse),\n isApplied: aiInteraction.isApplied,\n status: aiResponse.success ? 'succeeded' : 'failed'\n });\n\n // update the job entry with failure... raising an error will lead the job to be marked as failed...\n throw new Error(errorsStr);\n }\n else {\n let nestedResponse = aiResponse.response.trim();\n\n const genAiInteraction = await this.aiInteractionService.create({\n userId: aiInteraction.user.id,\n threadId: aiInteraction.threadId,\n parentInteractionId: aiInteraction.id,\n role: 'gen-ai',\n message: nestedResponse,\n contentType: aiResponse.content_type,\n errorMessage: '',\n modelUsed: aiResponse.model,\n responseTimeMs: aiResponse.duration_ms,\n metadata: JSON.stringify(aiResponse),\n isApplied: aiInteraction.isApplied,\n status: aiResponse.success ? 'succeeded' : 'failed'\n });\n\n // If the human interaction was with isAutoApply=true, then we can go ahead and autoApply.\n if (aiInteraction.isAutoApply) {\n this.aiInteractionService.applySolidAiInteraction(genAiInteraction.id);\n }\n }\n\n return aiResponse;\n }\n}\n"]}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { RedisPublisher } from '../../services/queues/redis-publisher.service';
|
|
2
|
-
import { MqMessageQueueService } from '../../services/mq-message-queue.service';
|
|
3
|
-
import { MqMessageService } from '../../services/mq-message.service';
|
|
4
|
-
import { TriggerMcpClientOptions, QueuesModuleOptions } from "../../interfaces";
|
|
5
|
-
export declare class TriggerMcpClientPublisherRedis extends RedisPublisher<TriggerMcpClientOptions> {
|
|
6
|
-
protected readonly mqMessageService: MqMessageService;
|
|
7
|
-
protected readonly mqMessageQueueService: MqMessageQueueService;
|
|
8
|
-
constructor(mqMessageService: MqMessageService, mqMessageQueueService: MqMessageQueueService);
|
|
9
|
-
options(): QueuesModuleOptions;
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=trigger-mcp-client-publisher-redis.service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-mcp-client-publisher-redis.service.d.ts","sourceRoot":"","sources":["../../../src/jobs/redis/trigger-mcp-client-publisher-redis.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAE7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEhF,qBACa,8BAA+B,SAAQ,cAAc,CAAC,uBAAuB,CAAC;IAEnF,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IACrD,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;gBAD5C,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB;IAKnE,OAAO,IAAI,mBAAmB;CAKjC"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.TriggerMcpClientPublisherRedis = void 0;
|
|
16
|
-
const common_1 = require("@nestjs/common");
|
|
17
|
-
const redis_publisher_service_1 = require("../../services/queues/redis-publisher.service");
|
|
18
|
-
const trigger_mcp_client_queue_options_redis_1 = __importDefault(require("./trigger-mcp-client-queue-options-redis"));
|
|
19
|
-
const mq_message_queue_service_1 = require("../../services/mq-message-queue.service");
|
|
20
|
-
const mq_message_service_1 = require("../../services/mq-message.service");
|
|
21
|
-
let TriggerMcpClientPublisherRedis = class TriggerMcpClientPublisherRedis extends redis_publisher_service_1.RedisPublisher {
|
|
22
|
-
constructor(mqMessageService, mqMessageQueueService) {
|
|
23
|
-
super(mqMessageService, mqMessageQueueService);
|
|
24
|
-
this.mqMessageService = mqMessageService;
|
|
25
|
-
this.mqMessageQueueService = mqMessageQueueService;
|
|
26
|
-
}
|
|
27
|
-
options() {
|
|
28
|
-
return {
|
|
29
|
-
...trigger_mcp_client_queue_options_redis_1.default
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
exports.TriggerMcpClientPublisherRedis = TriggerMcpClientPublisherRedis;
|
|
34
|
-
exports.TriggerMcpClientPublisherRedis = TriggerMcpClientPublisherRedis = __decorate([
|
|
35
|
-
(0, common_1.Injectable)(),
|
|
36
|
-
__metadata("design:paramtypes", [mq_message_service_1.MqMessageService,
|
|
37
|
-
mq_message_queue_service_1.MqMessageQueueService])
|
|
38
|
-
], TriggerMcpClientPublisherRedis);
|
|
39
|
-
//# sourceMappingURL=trigger-mcp-client-publisher-redis.service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-mcp-client-publisher-redis.service.js","sourceRoot":"","sources":["../../../src/jobs/redis/trigger-mcp-client-publisher-redis.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAE5C,2FAA6E;AAC7E,sHAAmF;AACnF,sFAAgF;AAChF,0EAAqE;AAI9D,IAAM,8BAA8B,GAApC,MAAM,8BAA+B,SAAQ,wCAAuC;IACvF,YACuB,gBAAkC,EAClC,qBAA4C;QAE/D,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;QAH5B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;IAGnE,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,gDAA2B;SACjC,CAAA;IACL,CAAC;CACJ,CAAA;AAbY,wEAA8B;yCAA9B,8BAA8B;IAD1C,IAAA,mBAAU,GAAE;qCAGgC,qCAAgB;QACX,gDAAqB;GAH1D,8BAA8B,CAa1C","sourcesContent":["import { Injectable } from '@nestjs/common';\n\nimport { RedisPublisher } from 'src/services/queues/redis-publisher.service';\nimport triggerMcpClientQueueConfig from './trigger-mcp-client-queue-options-redis';\nimport { MqMessageQueueService } from '../../services/mq-message-queue.service';\nimport { MqMessageService } from '../../services/mq-message.service';\nimport { TriggerMcpClientOptions, QueuesModuleOptions } from \"../../interfaces\";\n\n@Injectable()\nexport class TriggerMcpClientPublisherRedis extends RedisPublisher<TriggerMcpClientOptions> {\n constructor(\n protected readonly mqMessageService: MqMessageService,\n protected readonly mqMessageQueueService: MqMessageQueueService,\n ) {\n super(mqMessageService, mqMessageQueueService);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...triggerMcpClientQueueConfig\n }\n }\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-mcp-client-queue-options-redis.d.ts","sourceRoot":"","sources":["../../../src/jobs/redis/trigger-mcp-client-queue-options-redis.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;;;;;;AAI9C,wBAIE"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const interfaces_1 = require("../../interfaces");
|
|
4
|
-
const QUEUE_NAME = 'solid_trigger_mcp_client_queue_redis';
|
|
5
|
-
exports.default = {
|
|
6
|
-
name: QUEUE_NAME,
|
|
7
|
-
type: interfaces_1.BrokerType.Redis,
|
|
8
|
-
queueName: QUEUE_NAME,
|
|
9
|
-
};
|
|
10
|
-
//# sourceMappingURL=trigger-mcp-client-queue-options-redis.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-mcp-client-queue-options-redis.js","sourceRoot":"","sources":["../../../src/jobs/redis/trigger-mcp-client-queue-options-redis.ts"],"names":[],"mappings":";;AAAA,iDAA8C;AAE9C,MAAM,UAAU,GAAG,sCAAsC,CAAC;AAE1D,kBAAe;IACX,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,uBAAU,CAAC,KAAK;IACtB,SAAS,EAAE,UAAU;CACxB,CAAC","sourcesContent":["import { BrokerType } from \"../../interfaces\";\n\nconst QUEUE_NAME = 'solid_trigger_mcp_client_queue_redis';\n\nexport default {\n name: QUEUE_NAME,\n type: BrokerType.Redis,\n queueName: QUEUE_NAME,\n};\n"]}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { RedisSubscriber } from '../../services/queues/redis-subscriber.service';
|
|
2
|
-
import { QueueMessage } from '../../interfaces/mq';
|
|
3
|
-
import { MqMessageService } from '../../services/mq-message.service';
|
|
4
|
-
import { MqMessageQueueService } from '../../services/mq-message-queue.service';
|
|
5
|
-
import { TriggerMcpClientOptions, QueuesModuleOptions } from "../../interfaces";
|
|
6
|
-
import { AiInteractionService } from '../../services/ai-interaction.service';
|
|
7
|
-
import { PollerService } from '../../services/poller.service';
|
|
8
|
-
export declare class TriggerMcpClientSubscriberRedis extends RedisSubscriber<TriggerMcpClientOptions> {
|
|
9
|
-
readonly mqMessageService: MqMessageService;
|
|
10
|
-
readonly mqMessageQueueService: MqMessageQueueService;
|
|
11
|
-
readonly poller: PollerService;
|
|
12
|
-
readonly aiInteractionService: AiInteractionService;
|
|
13
|
-
private readonly triggerMcpClientSubscriberLogger;
|
|
14
|
-
constructor(mqMessageService: MqMessageService, mqMessageQueueService: MqMessageQueueService, poller: PollerService, aiInteractionService: AiInteractionService);
|
|
15
|
-
options(): QueuesModuleOptions;
|
|
16
|
-
subscribe(message: QueueMessage<TriggerMcpClientOptions>): Promise<import("../../interfaces").McpResponse>;
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=trigger-mcp-client-subscriber-redis.service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-mcp-client-subscriber-redis.service.d.ts","sourceRoot":"","sources":["../../../src/jobs/redis/trigger-mcp-client-subscriber-redis.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,qBACa,+BAAgC,SAAQ,eAAe,CAAC,uBAAuB,CAAC;IAIrF,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;IACrD,QAAQ,CAAC,MAAM,EAAE,aAAa;IAC9B,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB;IANvD,OAAO,CAAC,QAAQ,CAAC,gCAAgC,CAAoD;gBAGxF,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB,EAC5C,MAAM,EAAE,aAAa,EACrB,oBAAoB,EAAE,oBAAoB;IAKvD,OAAO,IAAI,mBAAmB;IAMxB,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,uBAAuB,CAAC;CAmEjE"}
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
var TriggerMcpClientSubscriberRedis_1;
|
|
15
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
-
exports.TriggerMcpClientSubscriberRedis = void 0;
|
|
17
|
-
const common_1 = require("@nestjs/common");
|
|
18
|
-
const redis_subscriber_service_1 = require("../../services/queues/redis-subscriber.service");
|
|
19
|
-
const trigger_mcp_client_queue_options_redis_1 = __importDefault(require("./trigger-mcp-client-queue-options-redis"));
|
|
20
|
-
const mq_message_service_1 = require("../../services/mq-message.service");
|
|
21
|
-
const mq_message_queue_service_1 = require("../../services/mq-message-queue.service");
|
|
22
|
-
const ai_interaction_service_1 = require("../../services/ai-interaction.service");
|
|
23
|
-
const poller_service_1 = require("../../services/poller.service");
|
|
24
|
-
let TriggerMcpClientSubscriberRedis = TriggerMcpClientSubscriberRedis_1 = class TriggerMcpClientSubscriberRedis extends redis_subscriber_service_1.RedisSubscriber {
|
|
25
|
-
constructor(mqMessageService, mqMessageQueueService, poller, aiInteractionService) {
|
|
26
|
-
super(mqMessageService, mqMessageQueueService);
|
|
27
|
-
this.mqMessageService = mqMessageService;
|
|
28
|
-
this.mqMessageQueueService = mqMessageQueueService;
|
|
29
|
-
this.poller = poller;
|
|
30
|
-
this.aiInteractionService = aiInteractionService;
|
|
31
|
-
this.triggerMcpClientSubscriberLogger = new common_1.Logger(TriggerMcpClientSubscriberRedis_1.name);
|
|
32
|
-
}
|
|
33
|
-
options() {
|
|
34
|
-
return {
|
|
35
|
-
...trigger_mcp_client_queue_options_redis_1.default
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
async subscribe(message) {
|
|
39
|
-
this.triggerMcpClientSubscriberLogger.debug(`Received message: ${JSON.stringify(message)}`);
|
|
40
|
-
const codeGnerationOptions = message.payload;
|
|
41
|
-
const aiInteraction = await this.aiInteractionService.findOne(codeGnerationOptions.aiInteractionId, {
|
|
42
|
-
populate: ['user']
|
|
43
|
-
});
|
|
44
|
-
if (!aiInteraction) {
|
|
45
|
-
const m = `Unable to identified the aiInteraction entry that triggered this job... using id: ${codeGnerationOptions.aiInteractionId}`;
|
|
46
|
-
this.triggerMcpClientSubscriberLogger.log(m);
|
|
47
|
-
throw new Error(m);
|
|
48
|
-
}
|
|
49
|
-
const prompt = aiInteraction.message;
|
|
50
|
-
const aiResponse = await this.aiInteractionService.runMcpPrompt(prompt);
|
|
51
|
-
this.triggerMcpClientSubscriberLogger.log(`aiResponse: `);
|
|
52
|
-
this.triggerMcpClientSubscriberLogger.log(JSON.stringify(aiResponse));
|
|
53
|
-
if (!aiResponse.success) {
|
|
54
|
-
this.triggerMcpClientSubscriberLogger.log(`Gen ai has returned with a false status code`);
|
|
55
|
-
const errorsStr = aiResponse.errors.join('; ');
|
|
56
|
-
await this.aiInteractionService.create({
|
|
57
|
-
userId: aiInteraction.user.id,
|
|
58
|
-
threadId: aiInteraction.threadId,
|
|
59
|
-
parentInteractionId: aiInteraction.id,
|
|
60
|
-
role: 'gen-ai',
|
|
61
|
-
message: '-',
|
|
62
|
-
contentType: aiResponse.content_type,
|
|
63
|
-
errorMessage: errorsStr,
|
|
64
|
-
modelUsed: aiResponse.model,
|
|
65
|
-
responseTimeMs: aiResponse.duration_ms,
|
|
66
|
-
metadata: JSON.stringify(aiResponse),
|
|
67
|
-
isApplied: aiInteraction.isApplied,
|
|
68
|
-
status: aiResponse.success ? 'succeeded' : 'failed'
|
|
69
|
-
});
|
|
70
|
-
throw new Error(errorsStr);
|
|
71
|
-
}
|
|
72
|
-
else {
|
|
73
|
-
let nestedResponse = aiResponse.response.trim();
|
|
74
|
-
const genAiInteraction = await this.aiInteractionService.create({
|
|
75
|
-
userId: aiInteraction.user.id,
|
|
76
|
-
threadId: aiInteraction.threadId,
|
|
77
|
-
parentInteractionId: aiInteraction.id,
|
|
78
|
-
role: 'gen-ai',
|
|
79
|
-
message: nestedResponse,
|
|
80
|
-
contentType: aiResponse.content_type,
|
|
81
|
-
errorMessage: '',
|
|
82
|
-
modelUsed: aiResponse.model,
|
|
83
|
-
responseTimeMs: aiResponse.duration_ms,
|
|
84
|
-
metadata: JSON.stringify(aiResponse),
|
|
85
|
-
isApplied: aiInteraction.isApplied,
|
|
86
|
-
status: aiResponse.success ? 'succeeded' : 'failed'
|
|
87
|
-
});
|
|
88
|
-
if (aiInteraction.isAutoApply) {
|
|
89
|
-
this.aiInteractionService.applySolidAiInteraction(genAiInteraction.id);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
return aiResponse;
|
|
93
|
-
}
|
|
94
|
-
};
|
|
95
|
-
exports.TriggerMcpClientSubscriberRedis = TriggerMcpClientSubscriberRedis;
|
|
96
|
-
exports.TriggerMcpClientSubscriberRedis = TriggerMcpClientSubscriberRedis = TriggerMcpClientSubscriberRedis_1 = __decorate([
|
|
97
|
-
(0, common_1.Injectable)(),
|
|
98
|
-
__metadata("design:paramtypes", [mq_message_service_1.MqMessageService,
|
|
99
|
-
mq_message_queue_service_1.MqMessageQueueService,
|
|
100
|
-
poller_service_1.PollerService,
|
|
101
|
-
ai_interaction_service_1.AiInteractionService])
|
|
102
|
-
], TriggerMcpClientSubscriberRedis);
|
|
103
|
-
//# sourceMappingURL=trigger-mcp-client-subscriber-redis.service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-mcp-client-subscriber-redis.service.js","sourceRoot":"","sources":["../../../src/jobs/redis/trigger-mcp-client-subscriber-redis.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\n\nimport { RedisSubscriber } from 'src/services/queues/redis-subscriber.service';\nimport { QueueMessage } from 'src/interfaces/mq';\nimport triggerMcpClientQueueConfig from './trigger-mcp-client-queue-options-redis';\nimport { MqMessageService } from '../../services/mq-message.service';\nimport { MqMessageQueueService } from '../../services/mq-message-queue.service';\nimport { TriggerMcpClientOptions, QueuesModuleOptions } from \"../../interfaces\";\nimport { AiInteractionService } from '../../services/ai-interaction.service';\nimport { PollerService } from '../../services/poller.service';\n\n@Injectable()\nexport class TriggerMcpClientSubscriberRedis extends RedisSubscriber<TriggerMcpClientOptions> {\n private readonly triggerMcpClientSubscriberLogger = new Logger(TriggerMcpClientSubscriberRedis.name);\n\n constructor(\n readonly mqMessageService: MqMessageService,\n readonly mqMessageQueueService: MqMessageQueueService,\n readonly poller: PollerService,\n readonly aiInteractionService: AiInteractionService,\n ) {\n super(mqMessageService, mqMessageQueueService);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...triggerMcpClientQueueConfig\n }\n }\n\n async subscribe(message: QueueMessage<TriggerMcpClientOptions>) {\n this.triggerMcpClientSubscriberLogger.debug(`Received message: ${JSON.stringify(message)}`);\n\n const codeGnerationOptions = message.payload;\n\n const aiInteraction = await this.aiInteractionService.findOne(codeGnerationOptions.aiInteractionId, {\n populate: ['user']\n });\n if (!aiInteraction) {\n const m = `Unable to identified the aiInteraction entry that triggered this job... using id: ${codeGnerationOptions.aiInteractionId}`\n this.triggerMcpClientSubscriberLogger.log(m);\n throw new Error(m);\n }\n\n const prompt = aiInteraction.message;\n\n const aiResponse = await this.aiInteractionService.runMcpPrompt(prompt);\n this.triggerMcpClientSubscriberLogger.log(`aiResponse: `);\n this.triggerMcpClientSubscriberLogger.log(JSON.stringify(aiResponse));\n\n if (!aiResponse.success) {\n this.triggerMcpClientSubscriberLogger.log(`Gen ai has returned with a false status code`);\n\n const errorsStr = aiResponse.errors.join('; ');\n\n await this.aiInteractionService.create({\n userId: aiInteraction.user.id,\n threadId: aiInteraction.threadId,\n parentInteractionId: aiInteraction.id,\n role: 'gen-ai',\n message: '-',\n contentType: aiResponse.content_type,\n errorMessage: errorsStr,\n modelUsed: aiResponse.model,\n responseTimeMs: aiResponse.duration_ms,\n metadata: JSON.stringify(aiResponse),\n isApplied: aiInteraction.isApplied,\n status: aiResponse.success ? 'succeeded' : 'failed'\n });\n\n throw new Error(errorsStr);\n }\n else {\n let nestedResponse = aiResponse.response.trim();\n\n const genAiInteraction = await this.aiInteractionService.create({\n userId: aiInteraction.user.id,\n threadId: aiInteraction.threadId,\n parentInteractionId: aiInteraction.id,\n role: 'gen-ai',\n message: nestedResponse,\n contentType: aiResponse.content_type,\n errorMessage: '',\n modelUsed: aiResponse.model,\n responseTimeMs: aiResponse.duration_ms,\n metadata: JSON.stringify(aiResponse),\n isApplied: aiInteraction.isApplied,\n status: aiResponse.success ? 'succeeded' : 'failed'\n });\n\n if (aiInteraction.isAutoApply) {\n this.aiInteractionService.applySolidAiInteraction(genAiInteraction.id);\n }\n }\n\n return aiResponse;\n }\n}\n"]}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { AiInteraction } from '../entities/ai-interaction.entity';
|
|
2
|
-
import { RequestContextService } from '../services/request-context.service';
|
|
3
|
-
import { DataSource } from 'typeorm';
|
|
4
|
-
import { SecurityRuleRepository } from './security-rule.repository';
|
|
5
|
-
import { SolidBaseRepository } from './solid-base.repository';
|
|
6
|
-
export declare class AiInteractionRepository extends SolidBaseRepository<AiInteraction> {
|
|
7
|
-
readonly dataSource: DataSource;
|
|
8
|
-
readonly requestContextService: RequestContextService;
|
|
9
|
-
readonly securityRuleRepository: SecurityRuleRepository;
|
|
10
|
-
constructor(dataSource: DataSource, requestContextService: RequestContextService, securityRuleRepository: SecurityRuleRepository);
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=ai-interaction.repository.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ai-interaction.repository.d.ts","sourceRoot":"","sources":["../../src/repository/ai-interaction.repository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,qBACa,uBAAwB,SAAQ,mBAAmB,CAAC,aAAa,CAAC;IAEvE,QAAQ,CAAC,UAAU,EAAE,UAAU;IAC/B,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;IACrD,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB;gBAF9C,UAAU,EAAE,UAAU,EACtB,qBAAqB,EAAE,qBAAqB,EAC5C,sBAAsB,EAAE,sBAAsB;CAI9D"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.AiInteractionRepository = void 0;
|
|
13
|
-
const common_1 = require("@nestjs/common");
|
|
14
|
-
const ai_interaction_entity_1 = require("../entities/ai-interaction.entity");
|
|
15
|
-
const request_context_service_1 = require("../services/request-context.service");
|
|
16
|
-
const typeorm_1 = require("typeorm");
|
|
17
|
-
const security_rule_repository_1 = require("./security-rule.repository");
|
|
18
|
-
const solid_base_repository_1 = require("./solid-base.repository");
|
|
19
|
-
let AiInteractionRepository = class AiInteractionRepository extends solid_base_repository_1.SolidBaseRepository {
|
|
20
|
-
constructor(dataSource, requestContextService, securityRuleRepository) {
|
|
21
|
-
super(ai_interaction_entity_1.AiInteraction, dataSource, requestContextService, securityRuleRepository);
|
|
22
|
-
this.dataSource = dataSource;
|
|
23
|
-
this.requestContextService = requestContextService;
|
|
24
|
-
this.securityRuleRepository = securityRuleRepository;
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
exports.AiInteractionRepository = AiInteractionRepository;
|
|
28
|
-
exports.AiInteractionRepository = AiInteractionRepository = __decorate([
|
|
29
|
-
(0, common_1.Injectable)(),
|
|
30
|
-
__metadata("design:paramtypes", [typeorm_1.DataSource,
|
|
31
|
-
request_context_service_1.RequestContextService,
|
|
32
|
-
security_rule_repository_1.SecurityRuleRepository])
|
|
33
|
-
], AiInteractionRepository);
|
|
34
|
-
//# sourceMappingURL=ai-interaction.repository.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ai-interaction.repository.js","sourceRoot":"","sources":["../../src/repository/ai-interaction.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6EAAmE;AACnE,iFAA6E;AAC7E,qCAAqC;AACrC,yEAAoE;AACpE,mEAA8D;AAGvD,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,2CAAkC;IAC3E,YACa,UAAsB,EACtB,qBAA4C,EAC5C,sBAA8C;QAEvD,KAAK,CAAC,qCAAa,EAAE,UAAU,EAAE,qBAAqB,EAAE,sBAAsB,CAAC,CAAC;QAJvE,eAAU,GAAV,UAAU,CAAY;QACtB,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,2BAAsB,GAAtB,sBAAsB,CAAwB;IAG3D,CAAC;CACJ,CAAA;AARY,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,mBAAU,GAAE;qCAGgB,oBAAU;QACC,+CAAqB;QACpB,iDAAsB;GAJlD,uBAAuB,CAQnC","sourcesContent":["import { Injectable } from '@nestjs/common';\nimport { AiInteraction } from 'src/entities/ai-interaction.entity';\nimport { RequestContextService } from 'src/services/request-context.service';\nimport { DataSource } from 'typeorm';\nimport { SecurityRuleRepository } from './security-rule.repository';\nimport { SolidBaseRepository } from './solid-base.repository';\n\n@Injectable()\nexport class AiInteractionRepository extends SolidBaseRepository<AiInteraction> {\n constructor(\n readonly dataSource: DataSource,\n readonly requestContextService: RequestContextService,\n readonly securityRuleRepository: SecurityRuleRepository,\n ) {\n super(AiInteraction, dataSource, requestContextService, securityRuleRepository);\n }\n}"]}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { ModuleRef } from "@nestjs/core";
|
|
2
|
-
import { EntityManager } from 'typeorm';
|
|
3
|
-
import { InvokeAiPromptDto } from '../dtos/invoke-ai-prompt.dto';
|
|
4
|
-
import { McpResponse, TriggerMcpClientOptions } from '../interfaces';
|
|
5
|
-
import { AiInteractionRepository } from '../repository/ai-interaction.repository';
|
|
6
|
-
import { CRUDService } from '../services/crud.service';
|
|
7
|
-
import { AiInteraction } from '../entities/ai-interaction.entity';
|
|
8
|
-
import { McpHandlerFactory } from './genai/mcp-handlers/mcp-handler-factory.service';
|
|
9
|
-
import { PublisherFactory } from './queues/publisher-factory.service';
|
|
10
|
-
export declare class AiInteractionService extends CRUDService<AiInteraction> {
|
|
11
|
-
readonly entityManager: EntityManager;
|
|
12
|
-
readonly repo: AiInteractionRepository;
|
|
13
|
-
readonly moduleRef: ModuleRef;
|
|
14
|
-
readonly publisherFactory: PublisherFactory<TriggerMcpClientOptions>;
|
|
15
|
-
readonly mcpHandlerFactory: McpHandlerFactory;
|
|
16
|
-
private readonly logger;
|
|
17
|
-
constructor(entityManager: EntityManager, repo: AiInteractionRepository, moduleRef: ModuleRef, publisherFactory: PublisherFactory<TriggerMcpClientOptions>, mcpHandlerFactory: McpHandlerFactory);
|
|
18
|
-
triggerMcpClientJob(dto: InvokeAiPromptDto, userId: number, isAutoApply?: boolean, threadId?: string): Promise<any>;
|
|
19
|
-
runMcpPrompt(prompt: string): Promise<McpResponse>;
|
|
20
|
-
cleanResponse(response: string): string;
|
|
21
|
-
applySolidAiInteraction(id: number): Promise<any>;
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=ai-interaction.service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ai-interaction.service.d.ts","sourceRoot":"","sources":["../../src/services/ai-interaction.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAMxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE,qBACa,oBAAqB,SAAQ,WAAW,CAAC,aAAa,CAAC;IAKhE,QAAQ,CAAC,aAAa,EAAE,aAAa;IAGrC,QAAQ,CAAC,IAAI,EAAE,uBAAuB;IACtC,QAAQ,CAAC,SAAS,EAAE,SAAS;IAC7B,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,uBAAuB,CAAC;IAEpE,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB;IAX/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyC;gBAIrD,aAAa,EAAE,aAAa,EAG5B,IAAI,EAAE,uBAAuB,EAC7B,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,gBAAgB,CAAC,uBAAuB,CAAC,EAE3D,iBAAiB,EAAE,iBAAiB;IAMzC,mBAAmB,CAAC,GAAG,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAE,OAAe,EAAE,QAAQ,GAAE,MAAa,GAAG,OAAO,CAAC,GAAG,CAAC;IAqChI,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IA+FxD,aAAa,CAAC,QAAQ,EAAE,MAAM;IAexB,uBAAuB,CAAC,EAAE,EAAE,MAAM;CAuDzC"}
|