@memberjunction/server 6.1.0-edge.0 → 6.1.0-edge.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. package/dist/auth/exampleNewUserSubClass.js +1 -1
  2. package/dist/auth/exampleNewUserSubClass.js.map +1 -1
  3. package/dist/auth/index.d.ts.map +1 -1
  4. package/dist/auth/index.js +9 -5
  5. package/dist/auth/index.js.map +1 -1
  6. package/dist/auth/magicLink/MagicLinkService.js +1 -1
  7. package/dist/auth/magicLink/MagicLinkService.js.map +1 -1
  8. package/dist/auth/newUsers.js +1 -1
  9. package/dist/auth/newUsers.js.map +1 -1
  10. package/dist/context.js +2 -2
  11. package/dist/context.js.map +1 -1
  12. package/dist/generated/generated.d.ts +208 -646
  13. package/dist/generated/generated.d.ts.map +1 -1
  14. package/dist/generated/generated.js +1123 -3773
  15. package/dist/generated/generated.js.map +1 -1
  16. package/dist/generic/ResolverBase.d.ts +19 -3
  17. package/dist/generic/ResolverBase.d.ts.map +1 -1
  18. package/dist/generic/ResolverBase.js +51 -17
  19. package/dist/generic/ResolverBase.js.map +1 -1
  20. package/dist/index.d.ts +6 -2
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +100 -42
  23. package/dist/index.js.map +1 -1
  24. package/dist/logging/secretRedactor.d.ts +9 -0
  25. package/dist/logging/secretRedactor.d.ts.map +1 -1
  26. package/dist/logging/secretRedactor.js +39 -0
  27. package/dist/logging/secretRedactor.js.map +1 -1
  28. package/dist/middleware/BaseServerMiddleware.d.ts +5 -0
  29. package/dist/middleware/BaseServerMiddleware.d.ts.map +1 -1
  30. package/dist/middleware/BaseServerMiddleware.js +5 -0
  31. package/dist/middleware/BaseServerMiddleware.js.map +1 -1
  32. package/dist/realtimeWidget/WidgetSessionService.js +1 -1
  33. package/dist/realtimeWidget/WidgetSessionService.js.map +1 -1
  34. package/dist/realtimeWidget/widgetGuestElevation.js +1 -1
  35. package/dist/realtimeWidget/widgetGuestElevation.js.map +1 -1
  36. package/dist/resolvers/ActionResolver.d.ts.map +1 -1
  37. package/dist/resolvers/ActionResolver.js +12 -0
  38. package/dist/resolvers/ActionResolver.js.map +1 -1
  39. package/dist/resolvers/ComponentRegistryResolver.js +1 -1
  40. package/dist/resolvers/ComponentRegistryResolver.js.map +1 -1
  41. package/dist/resolvers/EntityPermissionResolver.js +1 -1
  42. package/dist/resolvers/EntityPermissionResolver.js.map +1 -1
  43. package/dist/resolvers/IntegrationDiscoveryResolver.d.ts +9 -0
  44. package/dist/resolvers/IntegrationDiscoveryResolver.d.ts.map +1 -1
  45. package/dist/resolvers/IntegrationDiscoveryResolver.js +3 -1
  46. package/dist/resolvers/IntegrationDiscoveryResolver.js.map +1 -1
  47. package/dist/resolvers/PotentialDuplicateRecordResolver.js +1 -1
  48. package/dist/resolvers/PotentialDuplicateRecordResolver.js.map +1 -1
  49. package/dist/resolvers/RealtimeClientSessionResolver.d.ts +10 -0
  50. package/dist/resolvers/RealtimeClientSessionResolver.d.ts.map +1 -1
  51. package/dist/resolvers/RealtimeClientSessionResolver.js +5 -0
  52. package/dist/resolvers/RealtimeClientSessionResolver.js.map +1 -1
  53. package/dist/resolvers/SearchEntitiesResolver.js +1 -1
  54. package/dist/resolvers/SearchEntitiesResolver.js.map +1 -1
  55. package/dist/resolvers/SqlLoggingConfigResolver.d.ts.map +1 -1
  56. package/dist/resolvers/SqlLoggingConfigResolver.js +1 -1
  57. package/dist/resolvers/SqlLoggingConfigResolver.js.map +1 -1
  58. package/dist/resolvers/SyncRolesUsersResolver.js +2 -2
  59. package/dist/resolvers/SyncRolesUsersResolver.js.map +1 -1
  60. package/dist/resolvers/TaskGraphFrameResolver.d.ts +85 -0
  61. package/dist/resolvers/TaskGraphFrameResolver.d.ts.map +1 -0
  62. package/dist/resolvers/TaskGraphFrameResolver.js +163 -0
  63. package/dist/resolvers/TaskGraphFrameResolver.js.map +1 -0
  64. package/dist/resolvers/UserFavoriteResolver.js +1 -1
  65. package/dist/resolvers/UserFavoriteResolver.js.map +1 -1
  66. package/dist/rest/OAuthCallbackHandler.js +1 -1
  67. package/dist/rest/OAuthCallbackHandler.js.map +1 -1
  68. package/dist/rest/RESTEndpointHandler.d.ts +0 -4
  69. package/dist/rest/RESTEndpointHandler.d.ts.map +1 -1
  70. package/dist/rest/RESTEndpointHandler.js +1 -15
  71. package/dist/rest/RESTEndpointHandler.js.map +1 -1
  72. package/dist/rest/SignatureWebhookHandler.js +1 -1
  73. package/dist/rest/SignatureWebhookHandler.js.map +1 -1
  74. package/dist/services/DurableEntityActionTaskSubmitter.d.ts +26 -0
  75. package/dist/services/DurableEntityActionTaskSubmitter.d.ts.map +1 -0
  76. package/dist/services/DurableEntityActionTaskSubmitter.js +55 -0
  77. package/dist/services/DurableEntityActionTaskSubmitter.js.map +1 -0
  78. package/dist/services/ScheduledJobsService.js +1 -1
  79. package/dist/services/ScheduledJobsService.js.map +1 -1
  80. package/dist/services/StartTaskGraphDispatcher.d.ts +33 -0
  81. package/dist/services/StartTaskGraphDispatcher.d.ts.map +1 -0
  82. package/dist/services/StartTaskGraphDispatcher.js +46 -0
  83. package/dist/services/StartTaskGraphDispatcher.js.map +1 -0
  84. package/dist/services/TaskGraphActionRunner.d.ts +34 -0
  85. package/dist/services/TaskGraphActionRunner.d.ts.map +1 -0
  86. package/dist/services/TaskGraphActionRunner.js +95 -0
  87. package/dist/services/TaskGraphActionRunner.js.map +1 -0
  88. package/dist/services/TaskGraphAgentRunner.d.ts +28 -0
  89. package/dist/services/TaskGraphAgentRunner.d.ts.map +1 -0
  90. package/dist/services/TaskGraphAgentRunner.js +104 -0
  91. package/dist/services/TaskGraphAgentRunner.js.map +1 -0
  92. package/dist/services/TaskGraphContinuationDeliverer.d.ts +70 -0
  93. package/dist/services/TaskGraphContinuationDeliverer.d.ts.map +1 -0
  94. package/dist/services/TaskGraphContinuationDeliverer.js +162 -0
  95. package/dist/services/TaskGraphContinuationDeliverer.js.map +1 -0
  96. package/dist/services/TaskGraphPromptRunner.d.ts +31 -0
  97. package/dist/services/TaskGraphPromptRunner.d.ts.map +1 -0
  98. package/dist/services/TaskGraphPromptRunner.js +134 -0
  99. package/dist/services/TaskGraphPromptRunner.js.map +1 -0
  100. package/dist/services/TaskGraphProviderFactory.d.ts +39 -0
  101. package/dist/services/TaskGraphProviderFactory.d.ts.map +1 -0
  102. package/dist/services/TaskGraphProviderFactory.js +28 -0
  103. package/dist/services/TaskGraphProviderFactory.js.map +1 -0
  104. package/dist/telephony/RingCentralTelephonyService.js +1 -1
  105. package/dist/telephony/RingCentralTelephonyService.js.map +1 -1
  106. package/dist/telephony/TwilioTelephonyRouter.js +1 -1
  107. package/dist/telephony/TwilioTelephonyRouter.js.map +1 -1
  108. package/dist/telephony/VonageTelephonyRouter.js +1 -1
  109. package/dist/telephony/VonageTelephonyRouter.js.map +1 -1
  110. package/package.json +92 -89
  111. package/src/__tests__/RealtimeClientSessionResolver.test.ts +1 -1
  112. package/src/__tests__/ResolverBase.frozenRecordMapping.test.ts +133 -0
  113. package/src/__tests__/ResolverBase.transportMapping.test.ts +289 -0
  114. package/src/__tests__/SessionManager.test.ts +1 -1
  115. package/src/__tests__/TaskGraphContinuationDeliverer.test.ts +249 -0
  116. package/src/__tests__/TaskGraphFrameResolver.test.ts +136 -0
  117. package/src/__tests__/WidgetSessionService.test.ts +1 -1
  118. package/src/__tests__/databaseAbstraction.test.ts +1 -1
  119. package/src/__tests__/magicLinkService.provisionLog.test.ts +1 -1
  120. package/src/__tests__/resolverBase.rls.test.ts +3 -0
  121. package/src/__tests__/secretRedactor.failOpen.test.ts +135 -0
  122. package/src/__tests__/widgetGuestElevation.test.ts +1 -1
  123. package/src/auth/exampleNewUserSubClass.ts +1 -1
  124. package/src/auth/index.ts +10 -6
  125. package/src/auth/magicLink/MagicLinkService.ts +1 -1
  126. package/src/auth/newUsers.ts +1 -1
  127. package/src/context.ts +2 -2
  128. package/src/generated/generated.ts +955 -2735
  129. package/src/generic/ResolverBase.ts +52 -17
  130. package/src/index.ts +108 -43
  131. package/src/logging/secretRedactor.ts +43 -0
  132. package/src/middleware/BaseServerMiddleware.ts +5 -0
  133. package/src/realtimeWidget/WidgetSessionService.ts +1 -1
  134. package/src/realtimeWidget/widgetGuestElevation.ts +1 -1
  135. package/src/resolvers/ActionResolver.ts +13 -0
  136. package/src/resolvers/ComponentRegistryResolver.ts +1 -1
  137. package/src/resolvers/EntityPermissionResolver.ts +1 -1
  138. package/src/resolvers/IntegrationDiscoveryResolver.ts +12 -2
  139. package/src/resolvers/PotentialDuplicateRecordResolver.ts +1 -1
  140. package/src/resolvers/RealtimeClientSessionResolver.ts +13 -0
  141. package/src/resolvers/SearchEntitiesResolver.ts +1 -1
  142. package/src/resolvers/SqlLoggingConfigResolver.ts +1 -2
  143. package/src/resolvers/SyncRolesUsersResolver.ts +2 -2
  144. package/src/resolvers/TaskGraphFrameResolver.ts +160 -0
  145. package/src/resolvers/UserFavoriteResolver.ts +1 -1
  146. package/src/rest/OAuthCallbackHandler.ts +1 -1
  147. package/src/rest/RESTEndpointHandler.ts +1 -15
  148. package/src/rest/SignatureWebhookHandler.ts +1 -1
  149. package/src/services/DurableEntityActionTaskSubmitter.ts +78 -0
  150. package/src/services/ScheduledJobsService.ts +1 -1
  151. package/src/services/StartTaskGraphDispatcher.ts +78 -0
  152. package/src/services/TaskGraphActionRunner.ts +99 -0
  153. package/src/services/TaskGraphAgentRunner.ts +115 -0
  154. package/src/services/TaskGraphContinuationDeliverer.ts +181 -0
  155. package/src/services/TaskGraphPromptRunner.ts +144 -0
  156. package/src/services/TaskGraphProviderFactory.ts +53 -0
  157. package/src/telephony/RingCentralTelephonyService.ts +1 -1
  158. package/src/telephony/TwilioTelephonyRouter.ts +1 -1
  159. package/src/telephony/VonageTelephonyRouter.ts +1 -1
  160. package/dist/resolvers/ReportResolver.d.ts +0 -24
  161. package/dist/resolvers/ReportResolver.d.ts.map +0 -1
  162. package/dist/resolvers/ReportResolver.js +0 -198
  163. package/dist/resolvers/ReportResolver.js.map +0 -1
  164. package/dist/resolvers/TaskResolver.d.ts +0 -31
  165. package/dist/resolvers/TaskResolver.d.ts.map +0 -1
  166. package/dist/resolvers/TaskResolver.js +0 -157
  167. package/dist/resolvers/TaskResolver.js.map +0 -1
  168. package/dist/services/TaskOrchestrator.d.ts +0 -130
  169. package/dist/services/TaskOrchestrator.d.ts.map +0 -1
  170. package/dist/services/TaskOrchestrator.js +0 -692
  171. package/dist/services/TaskOrchestrator.js.map +0 -1
  172. package/src/resolvers/ReportResolver.ts +0 -165
  173. package/src/resolvers/TaskResolver.ts +0 -148
  174. package/src/resolvers/__tests__/ReportResolver.test.ts +0 -279
  175. package/src/services/TaskOrchestrator.ts +0 -873
@@ -1,31 +0,0 @@
1
- import { PubSubEngine } from 'type-graphql';
2
- import { AppContext } from '../types.js';
3
- import { ResolverBase } from '../generic/ResolverBase.js';
4
- export declare class TaskExecutionResultType {
5
- taskId: string;
6
- success: boolean;
7
- output?: string;
8
- error?: string;
9
- }
10
- export declare class ExecuteTaskGraphResult {
11
- success: boolean;
12
- errorMessage?: string;
13
- results: TaskExecutionResultType[];
14
- }
15
- /**
16
- * TaskOrchestrationResolver handles multi-step task orchestration.
17
- * This resolver is called when the Conversation Manager returns a task graph
18
- * for complex workflows that require multiple agents working in sequence or parallel.
19
- */
20
- export declare class TaskOrchestrationResolver extends ResolverBase {
21
- /**
22
- * Execute a task graph from the Conversation Manager.
23
- * This creates tasks in the database, manages dependencies, and executes them in proper order.
24
- *
25
- * @param taskGraphJson - JSON string containing the task graph from Conversation Manager
26
- * @param conversationDetailId - ID of the conversation detail that triggered this workflow
27
- * @param environmentId - Environment ID for the tasks
28
- */
29
- ExecuteTaskGraph(taskGraphJson: string, conversationDetailId: string, environmentId: string, sessionId: string, pubSub: PubSubEngine, { userPayload, providers }: AppContext, createNotifications?: boolean): Promise<ExecuteTaskGraphResult>;
30
- }
31
- //# sourceMappingURL=TaskResolver.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TaskResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/TaskResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2D,YAAY,EAAE,MAAM,cAAc,CAAC;AACrG,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAI1D,qBACa,uBAAuB;IAEhC,MAAM,EAAE,MAAM,CAAC;IAGf,OAAO,EAAE,OAAO,CAAC;IAGjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBACa,sBAAsB;IAE/B,OAAO,EAAE,OAAO,CAAC;IAGjB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,OAAO,EAAE,uBAAuB,EAAE,CAAC;CACtC;AAED;;;;GAIG;AACH,qBACa,yBAA0B,SAAQ,YAAY;IACvD;;;;;;;OAOG;IAEG,gBAAgB,CACI,aAAa,EAAE,MAAM,EACd,oBAAoB,EAAE,MAAM,EACnC,aAAa,EAAE,MAAM,EACzB,SAAS,EAAE,MAAM,EACzB,MAAM,EAAE,YAAY,EACvB,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,UAAU,EACG,mBAAmB,CAAC,EAAE,OAAO,GAC9E,OAAO,CAAC,sBAAsB,CAAC;CAyFrC"}
@@ -1,157 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- 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;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __metadata = (this && this.__metadata) || function (k, v) {
8
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
- };
10
- var __param = (this && this.__param) || function (paramIndex, decorator) {
11
- return function (target, key) { decorator(target, key, paramIndex); }
12
- };
13
- import { Resolver, Mutation, Arg, Ctx, ObjectType, Field, PubSub, PubSubEngine } from 'type-graphql';
14
- import { LogError, LogStatus } from '@memberjunction/core';
15
- import { ResolverBase } from '../generic/ResolverBase.js';
16
- import { TaskOrchestrator } from '../services/TaskOrchestrator.js';
17
- import { GetReadWriteProvider } from '../util.js';
18
- let TaskExecutionResultType = class TaskExecutionResultType {
19
- };
20
- __decorate([
21
- Field(),
22
- __metadata("design:type", String)
23
- ], TaskExecutionResultType.prototype, "taskId", void 0);
24
- __decorate([
25
- Field(),
26
- __metadata("design:type", Boolean)
27
- ], TaskExecutionResultType.prototype, "success", void 0);
28
- __decorate([
29
- Field({ nullable: true }),
30
- __metadata("design:type", String)
31
- ], TaskExecutionResultType.prototype, "output", void 0);
32
- __decorate([
33
- Field({ nullable: true }),
34
- __metadata("design:type", String)
35
- ], TaskExecutionResultType.prototype, "error", void 0);
36
- TaskExecutionResultType = __decorate([
37
- ObjectType()
38
- ], TaskExecutionResultType);
39
- export { TaskExecutionResultType };
40
- let ExecuteTaskGraphResult = class ExecuteTaskGraphResult {
41
- };
42
- __decorate([
43
- Field(),
44
- __metadata("design:type", Boolean)
45
- ], ExecuteTaskGraphResult.prototype, "success", void 0);
46
- __decorate([
47
- Field({ nullable: true }),
48
- __metadata("design:type", String)
49
- ], ExecuteTaskGraphResult.prototype, "errorMessage", void 0);
50
- __decorate([
51
- Field(() => [TaskExecutionResultType]),
52
- __metadata("design:type", Array)
53
- ], ExecuteTaskGraphResult.prototype, "results", void 0);
54
- ExecuteTaskGraphResult = __decorate([
55
- ObjectType()
56
- ], ExecuteTaskGraphResult);
57
- export { ExecuteTaskGraphResult };
58
- /**
59
- * TaskOrchestrationResolver handles multi-step task orchestration.
60
- * This resolver is called when the Conversation Manager returns a task graph
61
- * for complex workflows that require multiple agents working in sequence or parallel.
62
- */
63
- let TaskOrchestrationResolver = class TaskOrchestrationResolver extends ResolverBase {
64
- /**
65
- * Execute a task graph from the Conversation Manager.
66
- * This creates tasks in the database, manages dependencies, and executes them in proper order.
67
- *
68
- * @param taskGraphJson - JSON string containing the task graph from Conversation Manager
69
- * @param conversationDetailId - ID of the conversation detail that triggered this workflow
70
- * @param environmentId - Environment ID for the tasks
71
- */
72
- async ExecuteTaskGraph(taskGraphJson, conversationDetailId, environmentId, sessionId, pubSub, { userPayload, providers }, createNotifications) {
73
- // Check API key scope authorization for task execution
74
- await this.CheckAPIKeyScopeAuthorization('task:execute', '*', userPayload);
75
- try {
76
- LogStatus(`=== EXECUTING TASK GRAPH FOR CONVERSATION: ${conversationDetailId} ===`);
77
- // Parse task graph
78
- const taskGraph = JSON.parse(taskGraphJson);
79
- // Validate task graph
80
- if (!taskGraph.workflowName || !taskGraph.tasks || taskGraph.tasks.length === 0) {
81
- throw new Error('Invalid task graph: must have workflowName and at least one task');
82
- }
83
- // Get current user
84
- const currentUser = this.GetUserFromPayload(userPayload);
85
- if (!currentUser) {
86
- throw new Error('Unable to determine current user');
87
- }
88
- LogStatus(`Workflow: ${taskGraph.workflowName} (${taskGraph.tasks.length} tasks)`);
89
- if (taskGraph.reasoning) {
90
- LogStatus(`Reasoning: ${taskGraph.reasoning}`);
91
- }
92
- // Create task orchestrator with PubSub for progress updates
93
- const provider = GetReadWriteProvider(providers, { allowFallbackToReadOnly: true });
94
- const orchestrator = new TaskOrchestrator(currentUser, pubSub, sessionId, userPayload, createNotifications || false, conversationDetailId, provider);
95
- // Create parent task and child tasks with dependencies
96
- const { parentTaskId, taskIdMap } = await orchestrator.createTasksFromGraph(taskGraph, conversationDetailId, environmentId);
97
- LogStatus(`Created parent task ${parentTaskId} with ${taskIdMap.size} child tasks`);
98
- // Execute tasks in proper order
99
- const results = await orchestrator.executeTasksForParent(parentTaskId);
100
- // Log results
101
- const successCount = results.filter(r => r.success).length;
102
- LogStatus(`Completed ${successCount} of ${results.length} tasks successfully`);
103
- for (const result of results) {
104
- if (result.success) {
105
- LogStatus(`✅ Task ${result.taskId} completed successfully`);
106
- }
107
- else {
108
- LogError(`❌ Task ${result.taskId} failed: ${result.error}`);
109
- }
110
- }
111
- // Convert results to GraphQL types
112
- const graphqlResults = results.map(r => ({
113
- taskId: r.taskId,
114
- success: r.success,
115
- output: r.output ? JSON.stringify(r.output) : undefined,
116
- error: r.error
117
- }));
118
- LogStatus(`=== TASK GRAPH EXECUTION COMPLETE ===`);
119
- const result = {
120
- success: true,
121
- results: graphqlResults
122
- };
123
- LogStatus(`Returning ExecuteTaskGraph result: ${JSON.stringify({
124
- success: result.success,
125
- resultsCount: result.results.length,
126
- firstResult: result.results[0]
127
- })}`);
128
- return result;
129
- }
130
- catch (error) {
131
- LogError(`Task graph execution failed:`, undefined, error);
132
- return {
133
- success: false,
134
- errorMessage: error.message || 'Unknown error occurred',
135
- results: []
136
- };
137
- }
138
- }
139
- };
140
- __decorate([
141
- Mutation(() => ExecuteTaskGraphResult),
142
- __param(0, Arg('taskGraphJson')),
143
- __param(1, Arg('conversationDetailId')),
144
- __param(2, Arg('environmentId')),
145
- __param(3, Arg('sessionId')),
146
- __param(4, PubSub()),
147
- __param(5, Ctx()),
148
- __param(6, Arg('createNotifications', { nullable: true })),
149
- __metadata("design:type", Function),
150
- __metadata("design:paramtypes", [String, String, String, String, PubSubEngine, Object, Boolean]),
151
- __metadata("design:returntype", Promise)
152
- ], TaskOrchestrationResolver.prototype, "ExecuteTaskGraph", null);
153
- TaskOrchestrationResolver = __decorate([
154
- Resolver()
155
- ], TaskOrchestrationResolver);
156
- export { TaskOrchestrationResolver };
157
- //# sourceMappingURL=TaskResolver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TaskResolver.js","sourceRoot":"","sources":["../../src/resolvers/TaskResolver.ts"],"names":[],"mappings":"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"}
@@ -1,130 +0,0 @@
1
- import { IMetadataProvider, UserInfo } from '@memberjunction/core';
2
- import { PubSubEngine } from 'type-graphql';
3
- import { UserPayload } from '../types.js';
4
- /**
5
- * Task definition from LLM response
6
- */
7
- export interface TaskDefinition {
8
- tempId: string;
9
- name: string;
10
- description: string;
11
- agentName: string;
12
- dependsOn: string[];
13
- inputPayload?: any;
14
- }
15
- /**
16
- * Task graph response from Conversation Manager
17
- */
18
- export interface TaskGraphResponse {
19
- workflowName: string;
20
- tasks: TaskDefinition[];
21
- reasoning?: string;
22
- }
23
- /**
24
- * Task execution result
25
- */
26
- export interface TaskExecutionResult {
27
- taskId: string;
28
- success: boolean;
29
- output?: any;
30
- error?: string;
31
- }
32
- /**
33
- * TaskOrchestrator handles multi-step task execution with dependencies
34
- */
35
- export declare class TaskOrchestrator {
36
- private contextUser;
37
- private pubSub?;
38
- private sessionId?;
39
- private userPayload?;
40
- private createNotifications;
41
- private conversationDetailId?;
42
- private provider?;
43
- private readonly JSON_ARTIFACT_TYPE_ID;
44
- private taskTypeId;
45
- constructor(contextUser: UserInfo, pubSub?: PubSubEngine, sessionId?: string, userPayload?: UserPayload, createNotifications?: boolean, conversationDetailId?: string, provider?: IMetadataProvider);
46
- private getMetadata;
47
- /**
48
- * Initialize the orchestrator by finding/creating the AI Agent Task type
49
- */
50
- private ensureTaskType;
51
- /**
52
- * Create tasks from LLM task graph response
53
- * @param taskGraph Task graph from Conversation Manager
54
- * @param conversationDetailId ID of the conversation detail that triggered this
55
- * @param environmentId Environment ID
56
- * @returns Object with parentTaskId and map of tempId -> actual MJTaskEntity ID
57
- */
58
- createTasksFromGraph(taskGraph: TaskGraphResponse, conversationDetailId: string, environmentId: string): Promise<{
59
- parentTaskId: string;
60
- taskIdMap: Map<string, string>;
61
- }>;
62
- /**
63
- * Publish task progress update via PubSub
64
- */
65
- private publishTaskProgress;
66
- /**
67
- * Publish agent progress update (nested within task)
68
- */
69
- private publishAgentProgress;
70
- /**
71
- * Find agent by name
72
- */
73
- private findAgentByName;
74
- /**
75
- * Execute all pending tasks for a parent task, respecting dependencies
76
- * @param parentTaskId Parent task ID
77
- * @returns Array of execution results
78
- */
79
- executeTasksForParent(parentTaskId: string): Promise<TaskExecutionResult[]>;
80
- /**
81
- * Find tasks that are ready to execute (pending with no incomplete dependencies)
82
- */
83
- private findEligibleTasks;
84
- /**
85
- * Update parent task progress based on child task completion
86
- */
87
- private updateParentTaskProgress;
88
- /**
89
- * Mark parent task as complete when all children are done
90
- */
91
- private completeParentTask;
92
- /**
93
- * Check if a task has incomplete dependencies
94
- */
95
- private hasIncompleteDependencies;
96
- /**
97
- * Load a task by ID
98
- */
99
- private loadTask;
100
- /**
101
- * Execute a single task
102
- */
103
- private executeTask;
104
- /**
105
- * Extract input payload from task metadata
106
- */
107
- private extractInputPayload;
108
- /**
109
- * Get outputs from tasks that this task depends on
110
- */
111
- private getDependentTaskOutputs;
112
- /**
113
- * Build conversation messages with task input and dependent outputs formatted as markdown
114
- */
115
- private buildConversationMessages;
116
- /**
117
- * Extract agent output - check both message and payload
118
- */
119
- private extractAgentOutput;
120
- /**
121
- * Create artifact from task output (handles both message and payload types)
122
- */
123
- private createArtifactFromOutput;
124
- /**
125
- * Create user notification for task graph completion
126
- * Notifies user that their multi-step workflow has completed
127
- */
128
- private createTaskGraphCompletionNotification;
129
- }
130
- //# sourceMappingURL=TaskOrchestrator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TaskOrchestrator.d.ts","sourceRoot":"","sources":["../../src/services/TaskOrchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,iBAAiB,EAAqB,QAAQ,EAAuB,MAAM,sBAAsB,CAAC;AAIjI,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI1C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,CAAC,EAAE,GAAG,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,qBAAa,gBAAgB;IAOrB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM,CAAC;IACf,OAAO,CAAC,SAAS,CAAC;IAClB,OAAO,CAAC,WAAW,CAAC;IACpB,OAAO,CAAC,mBAAmB;IAC3B,OAAO,CAAC,oBAAoB,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC;IAXrB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA0C;IAEhF,OAAO,CAAC,UAAU,CAAuB;gBAG7B,WAAW,EAAE,QAAQ,EACrB,MAAM,CAAC,EAAE,YAAY,EACrB,SAAS,CAAC,EAAE,MAAM,EAClB,WAAW,CAAC,EAAE,WAAW,EACzB,mBAAmB,GAAE,OAAe,EACpC,oBAAoB,CAAC,EAAE,MAAM,EAC7B,QAAQ,CAAC,EAAE,iBAAiB;IAGxC,OAAO,CAAC,WAAW;IAInB;;OAEG;YACW,cAAc;IAgC5B;;;;;;OAMG;IACG,oBAAoB,CACtB,SAAS,EAAE,iBAAiB,EAC5B,oBAAoB,EAAE,MAAM,EAC5B,aAAa,EAAE,MAAM,GACtB,OAAO,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;IA8GpE;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2B3B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA2B5B;;OAEG;YACW,eAAe;IAe7B;;;;OAIG;IACG,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAkDjF;;OAEG;YACW,iBAAiB;IA2B/B;;OAEG;YACW,wBAAwB;IA8BtC;;OAEG;YACW,kBAAkB;IAmBhC;;OAEG;YACW,yBAAyB;IAyBvC;;OAEG;YACW,QAAQ;IAOtB;;OAEG;YACW,WAAW;IAmHzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAc3B;;OAEG;YACW,uBAAuB;IAkCrC;;OAEG;YACW,yBAAyB;IAmCvC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAe1B;;OAEG;YACW,wBAAwB;IAmFtC;;;OAGG;YACW,qCAAqC;CA+EtD"}