@adcp/client 0.2.0

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 (99) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +166 -0
  3. package/dist/lib/agents/index.generated.d.ts +147 -0
  4. package/dist/lib/agents/index.generated.d.ts.map +1 -0
  5. package/dist/lib/agents/index.generated.js +218 -0
  6. package/dist/lib/agents/index.generated.js.map +1 -0
  7. package/dist/lib/auth/index.d.ts +22 -0
  8. package/dist/lib/auth/index.d.ts.map +1 -0
  9. package/dist/lib/auth/index.js +73 -0
  10. package/dist/lib/auth/index.js.map +1 -0
  11. package/dist/lib/core/ADCPClient.d.ts +233 -0
  12. package/dist/lib/core/ADCPClient.d.ts.map +1 -0
  13. package/dist/lib/core/ADCPClient.js +287 -0
  14. package/dist/lib/core/ADCPClient.js.map +1 -0
  15. package/dist/lib/core/ADCPMultiAgentClient.d.ts +308 -0
  16. package/dist/lib/core/ADCPMultiAgentClient.d.ts.map +1 -0
  17. package/dist/lib/core/ADCPMultiAgentClient.js +468 -0
  18. package/dist/lib/core/ADCPMultiAgentClient.js.map +1 -0
  19. package/dist/lib/core/AgentClient.d.ts +124 -0
  20. package/dist/lib/core/AgentClient.d.ts.map +1 -0
  21. package/dist/lib/core/AgentClient.js +242 -0
  22. package/dist/lib/core/AgentClient.js.map +1 -0
  23. package/dist/lib/core/ConfigurationManager.d.ts +79 -0
  24. package/dist/lib/core/ConfigurationManager.d.ts.map +1 -0
  25. package/dist/lib/core/ConfigurationManager.js +254 -0
  26. package/dist/lib/core/ConfigurationManager.js.map +1 -0
  27. package/dist/lib/core/ConversationTypes.d.ts +242 -0
  28. package/dist/lib/core/ConversationTypes.d.ts.map +1 -0
  29. package/dist/lib/core/ConversationTypes.js +5 -0
  30. package/dist/lib/core/ConversationTypes.js.map +1 -0
  31. package/dist/lib/core/ProtocolResponseParser.d.ts +45 -0
  32. package/dist/lib/core/ProtocolResponseParser.d.ts.map +1 -0
  33. package/dist/lib/core/ProtocolResponseParser.js +82 -0
  34. package/dist/lib/core/ProtocolResponseParser.js.map +1 -0
  35. package/dist/lib/core/TaskExecutor.d.ts +108 -0
  36. package/dist/lib/core/TaskExecutor.d.ts.map +1 -0
  37. package/dist/lib/core/TaskExecutor.js +422 -0
  38. package/dist/lib/core/TaskExecutor.js.map +1 -0
  39. package/dist/lib/errors/index.d.ts +125 -0
  40. package/dist/lib/errors/index.d.ts.map +1 -0
  41. package/dist/lib/errors/index.js +211 -0
  42. package/dist/lib/errors/index.js.map +1 -0
  43. package/dist/lib/handlers/types.d.ts +119 -0
  44. package/dist/lib/handlers/types.d.ts.map +1 -0
  45. package/dist/lib/handlers/types.js +239 -0
  46. package/dist/lib/handlers/types.js.map +1 -0
  47. package/dist/lib/index.d.ts +51 -0
  48. package/dist/lib/index.d.ts.map +1 -0
  49. package/dist/lib/index.js +122 -0
  50. package/dist/lib/index.js.map +1 -0
  51. package/dist/lib/protocols/a2a.d.ts +2 -0
  52. package/dist/lib/protocols/a2a.d.ts.map +1 -0
  53. package/dist/lib/protocols/a2a.js +70 -0
  54. package/dist/lib/protocols/a2a.js.map +1 -0
  55. package/dist/lib/protocols/index.d.ts +22 -0
  56. package/dist/lib/protocols/index.d.ts.map +1 -0
  57. package/dist/lib/protocols/index.js +47 -0
  58. package/dist/lib/protocols/index.js.map +1 -0
  59. package/dist/lib/protocols/mcp.d.ts +2 -0
  60. package/dist/lib/protocols/mcp.d.ts.map +1 -0
  61. package/dist/lib/protocols/mcp.js +127 -0
  62. package/dist/lib/protocols/mcp.js.map +1 -0
  63. package/dist/lib/storage/MemoryStorage.d.ts +93 -0
  64. package/dist/lib/storage/MemoryStorage.d.ts.map +1 -0
  65. package/dist/lib/storage/MemoryStorage.js +219 -0
  66. package/dist/lib/storage/MemoryStorage.js.map +1 -0
  67. package/dist/lib/storage/interfaces.d.ts +195 -0
  68. package/dist/lib/storage/interfaces.d.ts.map +1 -0
  69. package/dist/lib/storage/interfaces.js +5 -0
  70. package/dist/lib/storage/interfaces.js.map +1 -0
  71. package/dist/lib/types/adcp.d.ts +407 -0
  72. package/dist/lib/types/adcp.d.ts.map +1 -0
  73. package/dist/lib/types/adcp.js +5 -0
  74. package/dist/lib/types/adcp.js.map +1 -0
  75. package/dist/lib/types/core.generated.d.ts +469 -0
  76. package/dist/lib/types/core.generated.d.ts.map +1 -0
  77. package/dist/lib/types/core.generated.js +5 -0
  78. package/dist/lib/types/core.generated.js.map +1 -0
  79. package/dist/lib/types/index.d.ts +3 -0
  80. package/dist/lib/types/index.d.ts.map +1 -0
  81. package/dist/lib/types/index.js +19 -0
  82. package/dist/lib/types/index.js.map +1 -0
  83. package/dist/lib/types/tools.generated.d.ts +1674 -0
  84. package/dist/lib/types/tools.generated.d.ts.map +1 -0
  85. package/dist/lib/types/tools.generated.js +8 -0
  86. package/dist/lib/types/tools.generated.js.map +1 -0
  87. package/dist/lib/utils/index.d.ts +25 -0
  88. package/dist/lib/utils/index.d.ts.map +1 -0
  89. package/dist/lib/utils/index.js +109 -0
  90. package/dist/lib/utils/index.js.map +1 -0
  91. package/dist/lib/validation/index.d.ts +29 -0
  92. package/dist/lib/validation/index.d.ts.map +1 -0
  93. package/dist/lib/validation/index.js +186 -0
  94. package/dist/lib/validation/index.js.map +1 -0
  95. package/dist/lib/version.d.ts +22 -0
  96. package/dist/lib/version.d.ts.map +1 -0
  97. package/dist/lib/version.js +32 -0
  98. package/dist/lib/version.js.map +1 -0
  99. package/package.json +108 -0
@@ -0,0 +1,422 @@
1
+ "use strict";
2
+ // Core task execution engine for ADCP conversation flow
3
+ // Implements PR #78 async patterns: working/submitted/input-required/completed
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.TaskExecutor = exports.InputRequiredError = exports.DeferredTaskError = exports.MaxClarificationError = exports.TaskTimeoutError = void 0;
6
+ const crypto_1 = require("crypto");
7
+ const protocols_1 = require("../protocols");
8
+ const types_1 = require("../handlers/types");
9
+ const ProtocolResponseParser_1 = require("./ProtocolResponseParser");
10
+ /**
11
+ * Custom errors for task execution
12
+ */
13
+ class TaskTimeoutError extends Error {
14
+ constructor(taskId, timeout) {
15
+ super(`Task ${taskId} timed out after ${timeout}ms`);
16
+ this.name = 'TaskTimeoutError';
17
+ }
18
+ }
19
+ exports.TaskTimeoutError = TaskTimeoutError;
20
+ class MaxClarificationError extends Error {
21
+ constructor(taskId, maxAttempts) {
22
+ super(`Task ${taskId} exceeded maximum clarification attempts: ${maxAttempts}`);
23
+ this.name = 'MaxClarificationError';
24
+ }
25
+ }
26
+ exports.MaxClarificationError = MaxClarificationError;
27
+ class DeferredTaskError extends Error {
28
+ token;
29
+ constructor(token) {
30
+ super(`Task deferred with token: ${token}`);
31
+ this.token = token;
32
+ this.name = 'DeferredTaskError';
33
+ }
34
+ }
35
+ exports.DeferredTaskError = DeferredTaskError;
36
+ class InputRequiredError extends Error {
37
+ constructor(question) {
38
+ super(`Server requires input but no handler provided. Question: ${question}`);
39
+ this.name = 'InputRequiredError';
40
+ }
41
+ }
42
+ exports.InputRequiredError = InputRequiredError;
43
+ /**
44
+ * Core task execution engine that handles the conversation loop with agents
45
+ */
46
+ class TaskExecutor {
47
+ config;
48
+ responseParser;
49
+ activeTasks = new Map();
50
+ conversationStorage;
51
+ constructor(config = {}) {
52
+ this.config = config;
53
+ this.responseParser = new ProtocolResponseParser_1.ProtocolResponseParser();
54
+ if (config.enableConversationStorage) {
55
+ this.conversationStorage = new Map();
56
+ }
57
+ }
58
+ /**
59
+ * Execute a task with an agent using PR #78 async patterns
60
+ * Handles: working (keep SSE open), submitted (webhook), input-required (handler), completed
61
+ */
62
+ async executeTask(agent, taskName, params, inputHandler, options = {}) {
63
+ const taskId = options.contextId || (0, crypto_1.randomUUID)();
64
+ const startTime = Date.now();
65
+ const workingTimeout = this.config.workingTimeout || 120000; // 120s max per PR #78
66
+ // Create initial message
67
+ const initialMessage = {
68
+ id: (0, crypto_1.randomUUID)(),
69
+ role: 'user',
70
+ content: { tool: taskName, params },
71
+ timestamp: new Date().toISOString(),
72
+ metadata: { toolName: taskName, type: 'request' }
73
+ };
74
+ // Start streaming connection
75
+ const debugLogs = [];
76
+ try {
77
+ // Send initial request and get streaming response
78
+ const response = await protocols_1.ProtocolClient.callTool(agent, taskName, params, debugLogs);
79
+ // Add initial response message
80
+ const responseMessage = {
81
+ id: (0, crypto_1.randomUUID)(),
82
+ role: 'agent',
83
+ content: response,
84
+ timestamp: new Date().toISOString(),
85
+ metadata: { toolName: taskName, type: 'response' }
86
+ };
87
+ const messages = [initialMessage, responseMessage];
88
+ // Handle response based on status
89
+ return await this.handleAsyncResponse(agent, taskId, taskName, params, response, messages, inputHandler, options, debugLogs, startTime);
90
+ }
91
+ catch (error) {
92
+ return this.createErrorResult(taskId, agent, error, debugLogs, startTime);
93
+ }
94
+ }
95
+ /**
96
+ * Handle agent response based on ADCP status (PR #78)
97
+ */
98
+ async handleAsyncResponse(agent, taskId, taskName, params, response, messages, inputHandler, options = {}, debugLogs = [], startTime = Date.now()) {
99
+ const status = this.responseParser.getStatus(response);
100
+ switch (status) {
101
+ case ProtocolResponseParser_1.ADCP_STATUS.COMPLETED:
102
+ // Task completed immediately
103
+ return {
104
+ success: true,
105
+ status: 'completed',
106
+ data: response.result || response.data || response,
107
+ metadata: {
108
+ taskId,
109
+ taskName,
110
+ agent: { id: agent.id, name: agent.name, protocol: agent.protocol },
111
+ responseTimeMs: Date.now() - startTime,
112
+ timestamp: new Date().toISOString(),
113
+ clarificationRounds: 0,
114
+ status: 'completed'
115
+ },
116
+ conversation: messages
117
+ };
118
+ case ProtocolResponseParser_1.ADCP_STATUS.WORKING:
119
+ // Server is processing - keep connection open for up to 120s
120
+ return this.waitForWorkingCompletion(agent, taskId, taskName, params, response, messages, inputHandler, options, debugLogs, startTime);
121
+ case ProtocolResponseParser_1.ADCP_STATUS.SUBMITTED:
122
+ // Long-running task - set up webhook
123
+ return this.setupSubmittedTask(agent, taskId, taskName, response, messages, options, debugLogs, startTime);
124
+ case ProtocolResponseParser_1.ADCP_STATUS.INPUT_REQUIRED:
125
+ // Server needs input - handler is mandatory
126
+ return this.handleInputRequired(agent, taskId, taskName, params, response, messages, inputHandler, options, debugLogs, startTime);
127
+ case ProtocolResponseParser_1.ADCP_STATUS.FAILED:
128
+ case ProtocolResponseParser_1.ADCP_STATUS.REJECTED:
129
+ case ProtocolResponseParser_1.ADCP_STATUS.CANCELED:
130
+ throw new Error(`Task ${status}: ${response.error || response.message || 'Unknown error'}`);
131
+ default:
132
+ // Unknown status - treat as completed if we have data
133
+ if (response.result || response.data) {
134
+ return {
135
+ success: true,
136
+ status: 'completed',
137
+ data: response.result || response.data || response,
138
+ metadata: {
139
+ taskId,
140
+ taskName,
141
+ agent: { id: agent.id, name: agent.name, protocol: agent.protocol },
142
+ responseTimeMs: Date.now() - startTime,
143
+ timestamp: new Date().toISOString(),
144
+ clarificationRounds: 0,
145
+ status: 'completed'
146
+ },
147
+ conversation: messages
148
+ };
149
+ }
150
+ else {
151
+ throw new Error(`Unknown status: ${status || 'undefined'}`);
152
+ }
153
+ }
154
+ }
155
+ /**
156
+ * Wait for 'working' status completion (max 120s per PR #78)
157
+ */
158
+ async waitForWorkingCompletion(agent, taskId, taskName, params, initialResponse, messages, inputHandler, options = {}, debugLogs = [], startTime = Date.now()) {
159
+ // TODO: Implement SSE/streaming connection waiting
160
+ // For now, simulate by polling tasks/get endpoint
161
+ const workingTimeout = this.config.workingTimeout || 120000;
162
+ const pollInterval = 2000; // Poll every 2 seconds
163
+ const deadline = Date.now() + workingTimeout;
164
+ while (Date.now() < deadline) {
165
+ await this.sleep(pollInterval);
166
+ try {
167
+ const taskInfo = await this.getTaskStatus(agent, taskId);
168
+ if (taskInfo.status === ProtocolResponseParser_1.ADCP_STATUS.COMPLETED) {
169
+ return {
170
+ success: true,
171
+ status: 'completed',
172
+ data: taskInfo.result,
173
+ metadata: {
174
+ taskId,
175
+ taskName,
176
+ agent: { id: agent.id, name: agent.name, protocol: agent.protocol },
177
+ responseTimeMs: Date.now() - startTime,
178
+ timestamp: new Date().toISOString(),
179
+ clarificationRounds: 0,
180
+ status: 'completed'
181
+ },
182
+ conversation: messages
183
+ };
184
+ }
185
+ if (taskInfo.status === ProtocolResponseParser_1.ADCP_STATUS.INPUT_REQUIRED) {
186
+ // Transition to input handling
187
+ return this.handleInputRequired(agent, taskId, taskName, params, taskInfo, messages, inputHandler, options, debugLogs, startTime);
188
+ }
189
+ if (taskInfo.status === ProtocolResponseParser_1.ADCP_STATUS.FAILED) {
190
+ throw new Error(`Task failed: ${taskInfo.error}`);
191
+ }
192
+ // Still working, continue polling
193
+ }
194
+ catch (error) {
195
+ // Network error during polling - continue trying
196
+ console.warn(`Polling error for task ${taskId}:`, error);
197
+ }
198
+ }
199
+ throw new TaskTimeoutError(taskId, workingTimeout);
200
+ }
201
+ /**
202
+ * Set up submitted task with webhook
203
+ */
204
+ async setupSubmittedTask(agent, taskId, taskName, response, messages, options = {}, debugLogs = [], startTime = Date.now()) {
205
+ let webhookUrl = response.webhookUrl;
206
+ // If no webhook URL provided by server, generate one
207
+ if (!webhookUrl && this.config.webhookManager) {
208
+ webhookUrl = this.config.webhookManager.generateUrl(taskId);
209
+ await this.config.webhookManager.registerWebhook(agent, taskId, webhookUrl);
210
+ }
211
+ const submitted = {
212
+ taskId,
213
+ webhookUrl,
214
+ track: () => this.getTaskStatus(agent, taskId),
215
+ waitForCompletion: (pollInterval = 60000) => this.pollTaskCompletion(agent, taskId, pollInterval)
216
+ };
217
+ return {
218
+ success: false,
219
+ status: 'submitted',
220
+ submitted,
221
+ metadata: {
222
+ taskId,
223
+ taskName,
224
+ agent: { id: agent.id, name: agent.name, protocol: agent.protocol },
225
+ responseTimeMs: Date.now() - startTime,
226
+ timestamp: new Date().toISOString(),
227
+ clarificationRounds: 0,
228
+ status: 'submitted'
229
+ },
230
+ conversation: messages
231
+ };
232
+ }
233
+ /**
234
+ * Handle input-required status (handler mandatory)
235
+ */
236
+ async handleInputRequired(agent, taskId, taskName, params, response, messages, inputHandler, options = {}, debugLogs = [], startTime = Date.now()) {
237
+ const inputRequest = this.responseParser.parseInputRequest(response);
238
+ // Handler is mandatory for input-required
239
+ if (!inputHandler) {
240
+ throw new InputRequiredError(inputRequest.question);
241
+ }
242
+ // Build context for handler
243
+ const context = {
244
+ messages,
245
+ inputRequest,
246
+ taskId,
247
+ agent: { id: agent.id, name: agent.name, protocol: agent.protocol },
248
+ attempt: 1,
249
+ maxAttempts: options.maxClarifications || 3,
250
+ deferToHuman: async () => ({ defer: true, token: (0, crypto_1.randomUUID)() }),
251
+ abort: (reason) => { throw new Error(reason || 'Task aborted'); },
252
+ getSummary: () => messages.map(m => `${m.role}: ${JSON.stringify(m.content)}`).join('\n'),
253
+ wasFieldDiscussed: (field) => messages.some(m => m.content && typeof m.content === 'object' && m.content[field] !== undefined),
254
+ getPreviousResponse: (field) => {
255
+ const msg = messages.find(m => m.role === 'user' && m.content && typeof m.content === 'object' && m.content[field] !== undefined);
256
+ return msg?.content[field];
257
+ }
258
+ };
259
+ // Call handler
260
+ const handlerResponse = await inputHandler(context);
261
+ // Check if handler wants to defer
262
+ if ((0, types_1.isDeferResponse)(handlerResponse)) {
263
+ const token = handlerResponse.token;
264
+ // Save deferred state for later resumption
265
+ if (this.config.deferredStorage) {
266
+ await this.config.deferredStorage.set(token, {
267
+ taskId,
268
+ contextId: response.contextId || taskId,
269
+ agent,
270
+ taskName,
271
+ params,
272
+ messages,
273
+ createdAt: Date.now()
274
+ });
275
+ }
276
+ const deferred = {
277
+ token,
278
+ question: inputRequest.question,
279
+ resume: (input) => this.resumeDeferredTask(token, input)
280
+ };
281
+ return {
282
+ success: false,
283
+ status: 'deferred',
284
+ deferred,
285
+ metadata: {
286
+ taskId,
287
+ taskName,
288
+ agent: { id: agent.id, name: agent.name, protocol: agent.protocol },
289
+ responseTimeMs: Date.now() - startTime,
290
+ timestamp: new Date().toISOString(),
291
+ clarificationRounds: 1,
292
+ status: 'deferred'
293
+ },
294
+ conversation: messages
295
+ };
296
+ }
297
+ // Handler provided input - continue with the task
298
+ return this.continueTaskWithInput(agent, taskId, taskName, params, response.contextId, handlerResponse, messages, options, debugLogs, startTime);
299
+ }
300
+ /**
301
+ * Task tracking methods (PR #78)
302
+ */
303
+ async listTasks(agent) {
304
+ try {
305
+ const response = await protocols_1.ProtocolClient.callTool(agent, 'tasks/list', {});
306
+ return response.tasks || [];
307
+ }
308
+ catch (error) {
309
+ console.warn('Failed to list tasks:', error);
310
+ return [];
311
+ }
312
+ }
313
+ async getTaskStatus(agent, taskId) {
314
+ const response = await protocols_1.ProtocolClient.callTool(agent, 'tasks/get', { taskId });
315
+ return response.task || response;
316
+ }
317
+ async pollTaskCompletion(agent, taskId, pollInterval = 60000) {
318
+ while (true) {
319
+ const status = await this.getTaskStatus(agent, taskId);
320
+ if (status.status === ProtocolResponseParser_1.ADCP_STATUS.COMPLETED) {
321
+ return {
322
+ success: true,
323
+ status: 'completed',
324
+ data: status.result,
325
+ metadata: {
326
+ taskId,
327
+ taskName: status.taskType,
328
+ agent: { id: agent.id, name: agent.name, protocol: agent.protocol },
329
+ responseTimeMs: Date.now() - status.createdAt,
330
+ timestamp: new Date().toISOString(),
331
+ clarificationRounds: 0,
332
+ status: 'completed'
333
+ }
334
+ };
335
+ }
336
+ if (status.status === ProtocolResponseParser_1.ADCP_STATUS.FAILED || status.status === ProtocolResponseParser_1.ADCP_STATUS.CANCELED) {
337
+ throw new Error(`Task ${status.status}: ${status.error}`);
338
+ }
339
+ await this.sleep(pollInterval);
340
+ }
341
+ }
342
+ /**
343
+ * Resume a deferred task (client deferral)
344
+ */
345
+ async resumeDeferredTask(token, input) {
346
+ if (!this.config.deferredStorage) {
347
+ throw new Error('Deferred storage not configured');
348
+ }
349
+ const state = await this.config.deferredStorage.get(token);
350
+ if (!state) {
351
+ throw new Error(`Deferred task not found: ${token}`);
352
+ }
353
+ // Continue task with the provided input
354
+ return this.continueTaskWithInput(state.agent, state.taskId, state.taskName, state.params, state.contextId, input, state.messages);
355
+ }
356
+ /**
357
+ * Continue a task after receiving input
358
+ */
359
+ async continueTaskWithInput(agent, taskId, taskName, params, contextId, input, messages, options = {}, debugLogs = [], startTime = Date.now()) {
360
+ // Add user input message
361
+ const inputMessage = {
362
+ id: (0, crypto_1.randomUUID)(),
363
+ role: 'user',
364
+ content: input,
365
+ timestamp: new Date().toISOString(),
366
+ metadata: { type: 'input_response' }
367
+ };
368
+ messages.push(inputMessage);
369
+ // Continue the task with input
370
+ const response = await protocols_1.ProtocolClient.callTool(agent, 'continue_task', {
371
+ contextId,
372
+ input
373
+ }, debugLogs);
374
+ // Add response message
375
+ const responseMessage = {
376
+ id: (0, crypto_1.randomUUID)(),
377
+ role: 'agent',
378
+ content: response,
379
+ timestamp: new Date().toISOString(),
380
+ metadata: { type: 'continued_response' }
381
+ };
382
+ messages.push(responseMessage);
383
+ // Handle the continued response
384
+ return this.handleAsyncResponse(agent, taskId, taskName, params, response, messages, undefined, options, debugLogs, startTime);
385
+ }
386
+ /**
387
+ * Utility methods
388
+ */
389
+ sleep(ms) {
390
+ return new Promise(resolve => setTimeout(resolve, ms));
391
+ }
392
+ createErrorResult(taskId, agent, error, debugLogs = [], startTime = Date.now()) {
393
+ return {
394
+ success: false,
395
+ status: 'completed', // TaskResult status
396
+ error: error.message || String(error),
397
+ metadata: {
398
+ taskId,
399
+ taskName: 'unknown',
400
+ agent: { id: agent.id, name: agent.name, protocol: agent.protocol },
401
+ responseTimeMs: Date.now() - startTime,
402
+ timestamp: new Date().toISOString(),
403
+ clarificationRounds: 0,
404
+ status: 'failed' // metadata status
405
+ }
406
+ };
407
+ }
408
+ /**
409
+ * Legacy methods for backward compatibility
410
+ */
411
+ getConversationHistory(taskId) {
412
+ return this.conversationStorage?.get(taskId);
413
+ }
414
+ clearConversationHistory(taskId) {
415
+ this.conversationStorage?.delete(taskId);
416
+ }
417
+ getActiveTasks() {
418
+ return Array.from(this.activeTasks.values());
419
+ }
420
+ }
421
+ exports.TaskExecutor = TaskExecutor;
422
+ //# sourceMappingURL=TaskExecutor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskExecutor.js","sourceRoot":"","sources":["../../../src/lib/core/TaskExecutor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,125 @@
1
+ /**
2
+ * Base class for all ADCP client errors
3
+ */
4
+ export declare abstract class ADCPError extends Error {
5
+ details?: any | undefined;
6
+ abstract readonly code: string;
7
+ constructor(message: string, details?: any | undefined);
8
+ }
9
+ /**
10
+ * Error thrown when a task times out
11
+ */
12
+ export declare class TaskTimeoutError extends ADCPError {
13
+ readonly taskId: string;
14
+ readonly timeout: number;
15
+ readonly code = "TASK_TIMEOUT";
16
+ constructor(taskId: string, timeout: number);
17
+ }
18
+ /**
19
+ * Error thrown when maximum clarification attempts are exceeded
20
+ */
21
+ export declare class MaxClarificationError extends ADCPError {
22
+ readonly taskId: string;
23
+ readonly maxAttempts: number;
24
+ readonly code = "MAX_CLARIFICATIONS";
25
+ constructor(taskId: string, maxAttempts: number);
26
+ }
27
+ /**
28
+ * Error thrown when a task is deferred to human
29
+ * Contains the token needed to resume the task
30
+ */
31
+ export declare class DeferredTaskError extends ADCPError {
32
+ readonly token: string;
33
+ readonly code = "TASK_DEFERRED";
34
+ constructor(token: string);
35
+ }
36
+ /**
37
+ * Error thrown when a task is aborted
38
+ */
39
+ export declare class TaskAbortedError extends ADCPError {
40
+ readonly taskId: string;
41
+ readonly reason?: string | undefined;
42
+ readonly code = "TASK_ABORTED";
43
+ constructor(taskId: string, reason?: string | undefined);
44
+ }
45
+ /**
46
+ * Error thrown when an agent is not found
47
+ */
48
+ export declare class AgentNotFoundError extends ADCPError {
49
+ readonly agentId: string;
50
+ readonly availableAgents: string[];
51
+ readonly code = "AGENT_NOT_FOUND";
52
+ constructor(agentId: string, availableAgents: string[]);
53
+ }
54
+ /**
55
+ * Error thrown when an agent doesn't support a task
56
+ */
57
+ export declare class UnsupportedTaskError extends ADCPError {
58
+ readonly agentId: string;
59
+ readonly taskName: string;
60
+ readonly supportedTasks?: string[] | undefined;
61
+ readonly code = "UNSUPPORTED_TASK";
62
+ constructor(agentId: string, taskName: string, supportedTasks?: string[] | undefined);
63
+ }
64
+ /**
65
+ * Error thrown when protocol communication fails
66
+ */
67
+ export declare class ProtocolError extends ADCPError {
68
+ readonly protocol: 'mcp' | 'a2a';
69
+ readonly originalError?: Error | undefined;
70
+ readonly code = "PROTOCOL_ERROR";
71
+ constructor(protocol: 'mcp' | 'a2a', message: string, originalError?: Error | undefined);
72
+ }
73
+ /**
74
+ * Error thrown when validation fails
75
+ */
76
+ export declare class ValidationError extends ADCPError {
77
+ readonly field: string;
78
+ readonly value: any;
79
+ readonly constraint: string;
80
+ readonly code = "VALIDATION_ERROR";
81
+ constructor(field: string, value: any, constraint: string);
82
+ }
83
+ /**
84
+ * Error thrown when input handler is missing but required
85
+ */
86
+ export declare class MissingInputHandlerError extends ADCPError {
87
+ readonly taskId: string;
88
+ readonly question: string;
89
+ readonly code = "MISSING_INPUT_HANDLER";
90
+ constructor(taskId: string, question: string);
91
+ }
92
+ /**
93
+ * Error thrown when conversation context is invalid
94
+ */
95
+ export declare class InvalidContextError extends ADCPError {
96
+ readonly contextId: string;
97
+ readonly code = "INVALID_CONTEXT";
98
+ constructor(contextId: string, reason: string);
99
+ }
100
+ /**
101
+ * Error thrown when configuration is invalid
102
+ */
103
+ export declare class ConfigurationError extends ADCPError {
104
+ readonly configField?: string | undefined;
105
+ readonly code = "CONFIGURATION_ERROR";
106
+ constructor(message: string, configField?: string | undefined);
107
+ }
108
+ /**
109
+ * Type guard to check if an error is an ADCP error
110
+ */
111
+ export declare function isADCPError(error: unknown): error is ADCPError;
112
+ /**
113
+ * Type guard to check if an error is a specific ADCP error type
114
+ */
115
+ export declare function isErrorOfType<T extends ADCPError>(error: unknown, ErrorClass: new (...args: any[]) => T): error is T;
116
+ /**
117
+ * Utility to extract error information for logging/debugging
118
+ */
119
+ export declare function extractErrorInfo(error: unknown): {
120
+ message: string;
121
+ code?: string;
122
+ details?: any;
123
+ stack?: string;
124
+ };
125
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/errors/index.ts"],"names":[],"mappings":"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"}