n8n-nodes-simple 2.5.7 → 2.5.10

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 (44) hide show
  1. package/dist/nodes/shared/config/constants.d.ts +50 -0
  2. package/dist/nodes/shared/config/constants.js +54 -0
  3. package/dist/nodes/shared/config/constants.js.map +1 -0
  4. package/dist/nodes/shared/config/parameters.d.ts +10 -8
  5. package/dist/nodes/shared/config/parameters.js +23 -13
  6. package/dist/nodes/shared/config/parameters.js.map +1 -1
  7. package/dist/nodes/shared/config/properties/messages.js.map +1 -1
  8. package/dist/nodes/shared/config/properties/options.js +13 -1
  9. package/dist/nodes/shared/config/properties/options.js.map +1 -1
  10. package/dist/nodes/shared/config/properties/output.js +35 -5
  11. package/dist/nodes/shared/config/properties/output.js.map +1 -1
  12. package/dist/nodes/shared/core/execution/executionHelpers.d.ts +11 -0
  13. package/dist/nodes/shared/core/execution/executionHelpers.js +32 -0
  14. package/dist/nodes/shared/core/execution/executionHelpers.js.map +1 -0
  15. package/dist/nodes/shared/core/execution/executionSetup.d.ts +22 -3
  16. package/dist/nodes/shared/core/execution/executionSetup.js +35 -15
  17. package/dist/nodes/shared/core/execution/executionSetup.js.map +1 -1
  18. package/dist/nodes/shared/core/execution/executor.d.ts +2 -2
  19. package/dist/nodes/shared/core/execution/executor.js +26 -86
  20. package/dist/nodes/shared/core/execution/executor.js.map +1 -1
  21. package/dist/nodes/shared/core/execution/modelAttempt.d.ts +23 -0
  22. package/dist/nodes/shared/core/execution/modelAttempt.js +64 -0
  23. package/dist/nodes/shared/core/execution/modelAttempt.js.map +1 -0
  24. package/dist/nodes/shared/core/execution/outputData.js.map +1 -1
  25. package/dist/nodes/shared/core/execution/responseParser.d.ts +1 -1
  26. package/dist/nodes/shared/core/execution/responseParser.js +18 -6
  27. package/dist/nodes/shared/core/execution/responseParser.js.map +1 -1
  28. package/dist/nodes/shared/core/execution/retryHandler.d.ts +2 -2
  29. package/dist/nodes/shared/core/execution/retryHandler.js +23 -17
  30. package/dist/nodes/shared/core/execution/retryHandler.js.map +1 -1
  31. package/dist/nodes/shared/core/request/structuredOutput.d.ts +1 -1
  32. package/dist/nodes/shared/core/request/structuredOutput.js +4 -4
  33. package/dist/nodes/shared/core/request/structuredOutput.js.map +1 -1
  34. package/dist/nodes/shared/core/request/validation.js +4 -4
  35. package/dist/nodes/shared/core/request/validation.js.map +1 -1
  36. package/dist/nodes/shared/core/tools/executor.d.ts +2 -1
  37. package/dist/nodes/shared/core/tools/executor.js +11 -6
  38. package/dist/nodes/shared/core/tools/executor.js.map +1 -1
  39. package/dist/nodes/shared/core/tools/setup.d.ts +5 -4
  40. package/dist/nodes/shared/core/tools/setup.js +3 -1
  41. package/dist/nodes/shared/core/tools/setup.js.map +1 -1
  42. package/dist/package.json +3 -2
  43. package/dist/tsconfig.tsbuildinfo +1 -1
  44. package/package.json +3 -2
@@ -1,110 +1,50 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.runModel = runModel;
4
- const n8n_workflow_1 = require("n8n-workflow");
5
- const body_1 = require("../request/body");
6
- const executor_1 = require("../tools/executor");
7
- const outputData_1 = require("./outputData");
8
- const io_1 = require("../memory/io");
9
- const validation_1 = require("../request/validation");
10
- const errors_1 = require("./errors");
11
- const retryHandler_1 = require("./retryHandler");
12
4
  const usageTracking_1 = require("./usageTracking");
13
5
  const modelConfig_1 = require("./modelConfig");
14
- const responseParser_1 = require("./responseParser");
15
6
  const executionSetup_1 = require("./executionSetup");
7
+ const retryHandler_1 = require("./retryHandler");
8
+ const modelAttempt_1 = require("./modelAttempt");
16
9
  async function runModel(executeFunctions, params, messages, index, modelToUse, fallbackModelToUse, memory) {
17
10
  const context = await (0, executionSetup_1.prepareExecutionContext)(executeFunctions, params);
18
- const { responseFormat, tools, invokableTools, tool_choice, structuredOutputTool, validationSchema, shouldValidate } = context;
19
11
  const modelsToTry = (0, modelConfig_1.buildModelsToTry)(modelToUse, fallbackModelToUse, params.tenacityMaxRetries, params.fallbackTenacityMaxRetries);
12
+ if (modelsToTry.length === 0) {
13
+ throw new Error('No models available to try');
14
+ }
20
15
  const totalAccumulatedUsage = (0, usageTracking_1.initializeAccumulatedUsage)();
21
- let lastError = null;
22
16
  for (let modelIndex = 0; modelIndex < modelsToTry.length; modelIndex++) {
23
17
  const { model: currentModel, maxRetries } = modelsToTry[modelIndex];
24
18
  const isLastModel = modelIndex === modelsToTry.length - 1;
25
19
  try {
26
- const messagesForThisModel = [...messages];
27
- let retryState = {
28
- retriesRemaining: maxRetries,
29
- attemptNumber: 1,
30
- };
31
- let messagesBeforeRetries = messagesForThisModel.length;
32
- let currentIteration = 1;
33
- while (true) {
34
- let body = (0, body_1.prepareRequestBody)(currentModel, messagesForThisModel, tools, tool_choice, responseFormat, params.options, params.customParameters);
35
- const { response, structuredOutputToolResponse, finalIteration, finalBody, accumulatedUsage } = await (0, executor_1.processToolCalls)(executeFunctions, body, messagesForThisModel, invokableTools, params.maxToolsIterations, structuredOutputTool, params.abortSignal, currentIteration);
36
- (0, usageTracking_1.mergeUsageData)(totalAccumulatedUsage, accumulatedUsage);
37
- currentIteration = finalIteration;
38
- body = finalBody;
39
- if (retryState.attemptNumber === 1) {
40
- messagesBeforeRetries = messagesForThisModel.length;
41
- }
42
- const parseResult = (0, responseParser_1.parseAssistantResponse)(response, structuredOutputToolResponse, params.responseFormat);
43
- let output;
44
- let parseError = null;
45
- if (!parseResult.success) {
46
- if (shouldValidate && retryState.retriesRemaining > 0) {
47
- parseError = parseResult.error;
48
- }
49
- else {
50
- const errorData = (0, errors_1.buildDetailedParseError)(parseResult.error, response, structuredOutputToolResponse, body, totalAccumulatedUsage);
51
- throw new n8n_workflow_1.NodeOperationError(executeFunctions.getNode(), errorData.message, {
52
- description: errorData.description,
53
- itemIndex: index,
54
- });
55
- }
56
- }
57
- else {
58
- output = parseResult.output;
59
- }
60
- if (parseError) {
61
- const shouldRetry = await (0, retryHandler_1.handleParseError)(parseError, response, messagesForThisModel, retryState, params.structuredOutputMode, structuredOutputTool, params.structuredOutputName, tools, validationSchema);
62
- if (shouldRetry) {
63
- const model = body.model || 'unknown';
64
- (0, usageTracking_1.trackFailedRequest)(totalAccumulatedUsage, model, `JSON parse error: ${parseError}`);
65
- retryState = (0, retryHandler_1.updateRetryState)(retryState);
66
- (0, usageTracking_1.incrementRetriedRequests)(totalAccumulatedUsage);
67
- continue;
68
- }
69
- }
70
- if (shouldValidate) {
71
- const validationResult = (0, validation_1.validateStructuredOutput)(validationSchema, output);
72
- if (!validationResult.isValid) {
73
- const validationError = validationResult.error || 'Unknown validation error';
74
- const shouldRetry = await (0, retryHandler_1.handleValidationError)(validationError, output, response, messagesForThisModel, retryState, params.structuredOutputMode, structuredOutputTool, params.structuredOutputName);
75
- if (shouldRetry) {
76
- const model = body.model || 'unknown';
77
- (0, usageTracking_1.trackFailedRequest)(totalAccumulatedUsage, model, `Validation error: ${validationError}`);
78
- retryState = (0, retryHandler_1.updateRetryState)(retryState);
79
- (0, usageTracking_1.incrementRetriedRequests)(totalAccumulatedUsage);
80
- continue;
81
- }
82
- else {
83
- const errorData = (0, errors_1.buildValidationError)(maxRetries, validationError, output, body, response, totalAccumulatedUsage);
84
- throw new n8n_workflow_1.NodeOperationError(executeFunctions.getNode(), errorData.message, {
85
- description: errorData.description,
86
- itemIndex: index,
87
- });
88
- }
89
- }
90
- }
91
- const outputData = await (0, outputData_1.prepareOutputData)(response, output, messagesForThisModel, messagesBeforeRetries, params.addToOutput, executeFunctions, index, body, totalAccumulatedUsage);
92
- if (memory) {
93
- await (0, io_1.saveToMemory)(messagesForThisModel, output, params.saveToolCallsInChatMemory, memory);
94
- }
95
- return outputData;
96
- }
20
+ return await (0, modelAttempt_1.executeModelAttemptWithRetries)({
21
+ executeFunctions,
22
+ params,
23
+ index,
24
+ currentModel,
25
+ maxRetries,
26
+ messages: messages,
27
+ tools: context.tools,
28
+ tool_choice: context.tool_choice,
29
+ responseFormat: context.responseFormat,
30
+ invokableTools: context.invokableTools,
31
+ structuredOutputTool: context.structuredOutputTool,
32
+ validationSchema: context.validationSchema,
33
+ shouldValidate: context.shouldValidate,
34
+ appendRetryErrorMessages: params.appendRetryErrorMessages,
35
+ totalAccumulatedUsage,
36
+ memory,
37
+ });
97
38
  }
98
39
  catch (error) {
99
- lastError = error;
100
- const errorMessage = error instanceof Error ? error.message : String(error);
101
- (0, usageTracking_1.trackFailedRequest)(totalAccumulatedUsage, currentModel, errorMessage);
40
+ const errorInstance = error instanceof Error ? error : new Error(String(error));
41
+ (0, usageTracking_1.trackFailedRequest)(totalAccumulatedUsage, currentModel, errorInstance.message);
102
42
  if (isLastModel) {
103
43
  throw error;
104
44
  }
105
45
  await (0, retryHandler_1.waitBeforeRetry)();
106
46
  }
107
47
  }
108
- throw lastError || new Error('All models failed');
48
+ throw new Error('All model attempts exhausted');
109
49
  }
110
50
  //# sourceMappingURL=executor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/executor.ts"],"names":[],"mappings":";;AAYA,4BA6DC;AAtED,mDAAiF;AACjF,+CAAiD;AACjD,qDAA2D;AAC3D,iDAAiD;AACjD,iDAAgE;AAKzD,KAAK,UAAU,QAAQ,CAC7B,gBAAmC,EACnC,MAA2B,EAC3B,QAAgC,EAChC,KAAa,EACb,UAAkB,EAClB,kBAA2B,EAC3B,MAA2B;IAE3B,MAAM,OAAO,GAAG,MAAM,IAAA,wCAAuB,EAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IACxE,MAAM,WAAW,GAAG,IAAA,8BAAgB,EACnC,UAAU,EACV,kBAAkB,EAClB,MAAM,CAAC,kBAAkB,EACzB,MAAM,CAAC,0BAA0B,CACjC,CAAC;IAEF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,qBAAqB,GAAG,IAAA,0CAA0B,GAAE,CAAC;IAE3D,KAAK,IAAI,UAAU,GAAG,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC;QACxE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,UAAU,KAAK,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;QAE1D,IAAI,CAAC;YACJ,OAAO,MAAM,IAAA,6CAA8B,EAAC;gBAC3C,gBAAgB;gBAChB,MAAM;gBACN,KAAK;gBACL,YAAY;gBACZ,UAAU;gBACV,QAAQ,EAAE,QAAyB;gBACnC,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;gBAClD,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;gBAC1C,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,wBAAwB,EAAE,MAAM,CAAC,wBAAwB;gBACzD,qBAAqB;gBACrB,MAAM;aACN,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,aAAa,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAChF,IAAA,kCAAkB,EAAC,qBAAqB,EAAE,YAAY,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;YAG/E,IAAI,WAAW,EAAE,CAAC;gBACjB,MAAM,KAAK,CAAC;YACb,CAAC;YAED,MAAM,IAAA,8BAAe,GAAE,CAAC;QACzB,CAAC;IACF,CAAC;IAGD,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;AACjD,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { IExecuteFunctions, INodeExecutionData, IDataObject } from 'n8n-workflow';
2
+ import type { BufferWindowMemory } from 'langchain/memory';
3
+ import type { ExtractedParameters } from '../../config/parameters';
4
+ import { type AccumulatedUsage } from './usageTracking';
5
+ export interface ModelAttemptContext {
6
+ executeFunctions: IExecuteFunctions;
7
+ params: ExtractedParameters;
8
+ index: number;
9
+ currentModel: string;
10
+ maxRetries: number;
11
+ messages: IDataObject[];
12
+ tools: any[];
13
+ tool_choice: any;
14
+ responseFormat: any;
15
+ invokableTools: any[];
16
+ structuredOutputTool: any;
17
+ validationSchema: any;
18
+ shouldValidate: boolean;
19
+ appendRetryErrorMessages: boolean;
20
+ totalAccumulatedUsage: AccumulatedUsage;
21
+ memory?: BufferWindowMemory;
22
+ }
23
+ export declare function executeModelAttemptWithRetries(context: ModelAttemptContext): Promise<INodeExecutionData[]>;
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.executeModelAttemptWithRetries = executeModelAttemptWithRetries;
4
+ const body_1 = require("../request/body");
5
+ const executor_1 = require("../tools/executor");
6
+ const outputData_1 = require("./outputData");
7
+ const io_1 = require("../memory/io");
8
+ const validation_1 = require("../request/validation");
9
+ const errors_1 = require("./errors");
10
+ const retryHandler_1 = require("./retryHandler");
11
+ const usageTracking_1 = require("./usageTracking");
12
+ const responseParser_1 = require("./responseParser");
13
+ const executionHelpers_1 = require("./executionHelpers");
14
+ async function executeModelAttemptWithRetries(context) {
15
+ const { executeFunctions, params, index, currentModel, maxRetries, messages, tools, tool_choice, responseFormat, invokableTools, structuredOutputTool, validationSchema, shouldValidate, totalAccumulatedUsage, memory, } = context;
16
+ let retryState = {
17
+ retriesRemaining: maxRetries,
18
+ attemptNumber: 1,
19
+ };
20
+ let messagesCountBeforeValidationRetries = messages.length;
21
+ let currentIteration = 1;
22
+ while (true) {
23
+ let body = (0, body_1.prepareRequestBody)(currentModel, messages, tools, tool_choice, responseFormat, params.options, params.customParameters);
24
+ const { response, structuredOutputToolResponse, finalIteration, finalBody, accumulatedUsage } = await (0, executor_1.processToolCalls)(executeFunctions, body, messages, invokableTools, params.maxToolsIterations, structuredOutputTool, params.abortSignal, currentIteration);
25
+ (0, usageTracking_1.mergeUsageData)(totalAccumulatedUsage, accumulatedUsage);
26
+ currentIteration = finalIteration;
27
+ body = finalBody;
28
+ if (retryState.attemptNumber === 1) {
29
+ messagesCountBeforeValidationRetries = messages.length;
30
+ }
31
+ const parseResult = (0, responseParser_1.parseAssistantResponse)(response, structuredOutputToolResponse, params.responseFormat, params.extractFirstObjectOnly);
32
+ if (!parseResult.success) {
33
+ if (!shouldValidate || !(0, executionHelpers_1.canRetry)(retryState)) {
34
+ const errorData = (0, errors_1.buildDetailedParseError)(parseResult.error, response, structuredOutputToolResponse, body, totalAccumulatedUsage);
35
+ (0, executionHelpers_1.throwOperationError)(executeFunctions, errorData, index);
36
+ }
37
+ const shouldRetry = await (0, retryHandler_1.handleParseError)(parseResult.error, response, messages, retryState, params.structuredOutputMode, structuredOutputTool, params.structuredOutputName, tools, validationSchema, params.appendRetryErrorMessages);
38
+ if (shouldRetry) {
39
+ retryState = (0, executionHelpers_1.processRetry)(retryState, totalAccumulatedUsage, body, 'JSON parse error', parseResult.error);
40
+ continue;
41
+ }
42
+ }
43
+ const parsedOutput = parseResult.output;
44
+ if (shouldValidate) {
45
+ const validationResult = (0, validation_1.validateStructuredOutput)(validationSchema, parsedOutput);
46
+ if (!validationResult.isValid) {
47
+ const validationError = validationResult.error || 'Unknown validation error';
48
+ const shouldRetry = await (0, retryHandler_1.handleValidationError)(validationError, parsedOutput, response, messages, retryState, params.structuredOutputMode, structuredOutputTool, params.structuredOutputName, params.appendRetryErrorMessages);
49
+ if (shouldRetry) {
50
+ retryState = (0, executionHelpers_1.processRetry)(retryState, totalAccumulatedUsage, body, 'Validation error', validationError);
51
+ continue;
52
+ }
53
+ const errorData = (0, errors_1.buildValidationError)(maxRetries, validationError, parsedOutput, body, response, totalAccumulatedUsage);
54
+ (0, executionHelpers_1.throwOperationError)(executeFunctions, errorData, index);
55
+ }
56
+ }
57
+ const outputData = await (0, outputData_1.prepareOutputData)(response, parsedOutput, messages, messagesCountBeforeValidationRetries, params.addToOutput, executeFunctions, index, body, totalAccumulatedUsage);
58
+ if (memory) {
59
+ await (0, io_1.saveToMemory)(messages, parsedOutput, params.saveToolCallsInChatMemory, memory);
60
+ }
61
+ return outputData;
62
+ }
63
+ }
64
+ //# sourceMappingURL=modelAttempt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modelAttempt.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/modelAttempt.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"outputData.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/outputData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"outputData.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/outputData.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,4 @@ export interface ParseResult {
3
3
  output?: any;
4
4
  error?: string;
5
5
  }
6
- export declare function parseAssistantResponse(response: any, structuredOutputToolResponse: any, responseFormat: string): ParseResult;
6
+ export declare function parseAssistantResponse(response: any, structuredOutputToolResponse: any, responseFormat: string, extractFirstObjectOnly?: boolean): ParseResult;
@@ -1,13 +1,25 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.parseAssistantResponse = parseAssistantResponse;
4
- function parseAssistantResponse(response, structuredOutputToolResponse, responseFormat) {
5
- var _a, _b;
4
+ const jsonrepair_1 = require("jsonrepair");
5
+ function parseAssistantResponse(response, structuredOutputToolResponse, responseFormat, extractFirstObjectOnly = true) {
6
+ var _a, _b, _c;
6
7
  try {
7
- const output = JSON.parse(structuredOutputToolResponse)
8
- || (responseFormat === "plainText"
9
- ? (_a = response === null || response === void 0 ? void 0 : response.choices[0]) === null || _a === void 0 ? void 0 : _a.message.content
10
- : JSON.parse((_b = response === null || response === void 0 ? void 0 : response.choices[0]) === null || _b === void 0 ? void 0 : _b.message.content));
8
+ let output;
9
+ if (structuredOutputToolResponse) {
10
+ output = JSON.parse(structuredOutputToolResponse);
11
+ }
12
+ else if (responseFormat === "plainText") {
13
+ output = (_a = response === null || response === void 0 ? void 0 : response.choices[0]) === null || _a === void 0 ? void 0 : _a.message.content;
14
+ }
15
+ else {
16
+ const content = (_b = response === null || response === void 0 ? void 0 : response.choices[0]) === null || _b === void 0 ? void 0 : _b.message.content;
17
+ const repairedJson = (0, jsonrepair_1.jsonrepair)(content);
18
+ const parsed = JSON.parse(repairedJson);
19
+ output = (extractFirstObjectOnly && Array.isArray(parsed))
20
+ ? ((_c = parsed.find(item => typeof item === 'object' && item !== null && !Array.isArray(item))) !== null && _c !== void 0 ? _c : parsed)
21
+ : parsed;
22
+ }
11
23
  return {
12
24
  success: true,
13
25
  output,
@@ -1 +1 @@
1
- {"version":3,"file":"responseParser.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/responseParser.ts"],"names":[],"mappings":";;AAaA,wDAsBC;AAtBD,SAAgB,sBAAsB,CACrC,QAAa,EACb,4BAAiC,EACjC,cAAsB;;IAEtB,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC;eACnD,CAAC,cAAc,KAAK,WAAW;gBACjC,CAAC,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAC,CAAC,CAAC,0CAAE,OAAO,CAAC,OAAO;gBACvC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAC,CAAC,CAAC,0CAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QAEvD,OAAO;YACN,OAAO,EAAE,IAAI;YACb,MAAM;SACN,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,OAAO;YACN,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,YAAY;SACnB,CAAC;IACH,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"responseParser.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/responseParser.ts"],"names":[],"mappings":";;AAeA,wDAwCC;AAvDD,2CAAwC;AAexC,SAAgB,sBAAsB,CACrC,QAAa,EACb,4BAAiC,EACjC,cAAsB,EACtB,yBAAkC,IAAI;;IAEtC,IAAI,CAAC;QACJ,IAAI,MAAM,CAAC;QAGX,IAAI,4BAA4B,EAAE,CAAC;YAClC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACnD,CAAC;aAEI,IAAI,cAAc,KAAK,WAAW,EAAE,CAAC;YACzC,MAAM,GAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAC,CAAC,CAAC,0CAAE,OAAO,CAAC,OAAO,CAAC;QAChD,CAAC;aAEI,CAAC;YACL,MAAM,OAAO,GAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAC,CAAC,CAAC,0CAAE,OAAO,CAAC,OAAO,CAAC;YACtD,MAAM,YAAY,GAAG,IAAA,uBAAU,EAAC,OAAO,CAAC,CAAC;YACzC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAGxC,MAAM,GAAG,CAAC,sBAAsB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBACzD,CAAC,CAAC,CAAC,MAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,mCAAI,MAAM,CAAC;gBACpG,CAAC,CAAC,MAAM,CAAC;QACX,CAAC;QAED,OAAO;YACN,OAAO,EAAE,IAAI;YACb,MAAM;SACN,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,OAAO;YACN,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,YAAY;SACnB,CAAC;IACH,CAAC;AACF,CAAC"}
@@ -5,5 +5,5 @@ export interface RetryState {
5
5
  }
6
6
  export declare function waitBeforeRetry(delayMs?: number): Promise<void>;
7
7
  export declare function updateRetryState(state: RetryState): RetryState;
8
- export declare function handleParseError(parseError: string, response: any, messages: IDataObject[], retryState: RetryState, structuredOutputMode: string, structuredOutputTool: IDataObject | null | undefined, structuredOutputName: string | undefined, tools: any[], validationSchema: IDataObject | undefined): Promise<boolean>;
9
- export declare function handleValidationError(validationError: string, output: any, response: any, messages: IDataObject[], retryState: RetryState, structuredOutputMode: string, structuredOutputTool: IDataObject | null | undefined, structuredOutputName?: string): Promise<boolean>;
8
+ export declare function handleParseError(parseError: string, response: any, messages: IDataObject[], retryState: RetryState, structuredOutputMode: string | undefined, structuredOutputTool: IDataObject | null | undefined, structuredOutputName: string | undefined, tools: any[], validationSchema: IDataObject | undefined, appendRetryErrorMessages: boolean): Promise<boolean>;
9
+ export declare function handleValidationError(validationError: string, output: any, response: any, messages: IDataObject[], retryState: RetryState, structuredOutputMode: string | undefined, structuredOutputTool: IDataObject | null | undefined, structuredOutputName: string | undefined, appendRetryErrorMessages: boolean): Promise<boolean>;
@@ -34,11 +34,11 @@ function extractSchemaParameters(schema) {
34
34
  jsonExample[key] = `[${type}]`;
35
35
  }
36
36
  const jsonFormat = parameterNames.length > 0
37
- ? `\n\nJSON output format:\n${JSON.stringify(jsonExample, null, 4)}`
37
+ ? `\n\nExpected JSON output format:\n${JSON.stringify(jsonExample, null, 4)}`
38
38
  : '';
39
39
  return { parameterNames, jsonFormat };
40
40
  }
41
- async function handleParseError(parseError, response, messages, retryState, structuredOutputMode, structuredOutputTool, structuredOutputName, tools, validationSchema) {
41
+ async function handleParseError(parseError, response, messages, retryState, structuredOutputMode, structuredOutputTool, structuredOutputName, tools, validationSchema, appendRetryErrorMessages) {
42
42
  var _a, _b, _c, _d, _e, _f;
43
43
  if (retryState.retriesRemaining === 0) {
44
44
  return false;
@@ -48,6 +48,10 @@ async function handleParseError(parseError, response, messages, retryState, stru
48
48
  await waitBeforeRetry();
49
49
  return true;
50
50
  }
51
+ if (!appendRetryErrorMessages) {
52
+ await waitBeforeRetry();
53
+ return true;
54
+ }
51
55
  if (structuredOutputMode === 'tools') {
52
56
  messages.push({
53
57
  role: 'assistant',
@@ -66,10 +70,10 @@ async function handleParseError(parseError, response, messages, retryState, stru
66
70
  errorMessage += ` did not correctly call a tool.\n\nYou MUST call one of the available tools: ${toolNames}`;
67
71
  }
68
72
  else if (tools.length > 0) {
69
- errorMessage += ` had an invalid format.\n\nYou MUST either: (1) call one of the available tools: ${toolNames}; or (2) parse the arguments${parameterList} and output them in JSON format matching the \`${schemaName}\` schema${jsonFormat}`;
73
+ errorMessage += ` had an invalid format.\n\nYou MUST either: (1) call one of the available tools: ${toolNames}; or (2) output the arguments${parameterList} in JSON format matching the \`${schemaName}\` schema${jsonFormat}`;
70
74
  }
71
75
  else {
72
- errorMessage += ` had an invalid format.\n\nYou MUST parse the arguments${parameterList} and output them in JSON format matching the \`${schemaName}\` schema.${jsonFormat}`;
76
+ errorMessage += ` had an invalid format.\n\nYou MUST output the arguments ${parameterList} in JSON format.${jsonFormat}`;
73
77
  }
74
78
  messages.push({
75
79
  role: 'system',
@@ -78,7 +82,7 @@ async function handleParseError(parseError, response, messages, retryState, stru
78
82
  await waitBeforeRetry();
79
83
  return true;
80
84
  }
81
- async function handleValidationError(validationError, output, response, messages, retryState, structuredOutputMode, structuredOutputTool, structuredOutputName) {
85
+ async function handleValidationError(validationError, output, response, messages, retryState, structuredOutputMode, structuredOutputTool, structuredOutputName, appendRetryErrorMessages) {
82
86
  var _a, _b, _c;
83
87
  if (retryState.retriesRemaining === 0) {
84
88
  return false;
@@ -88,21 +92,23 @@ async function handleValidationError(validationError, output, response, messages
88
92
  await waitBeforeRetry();
89
93
  return true;
90
94
  }
91
- if (structuredOutputMode === 'tools') {
95
+ if (appendRetryErrorMessages) {
96
+ if (structuredOutputMode === 'tools') {
97
+ messages.push({
98
+ role: 'assistant',
99
+ content: JSON.stringify(output),
100
+ });
101
+ }
102
+ else {
103
+ messages.push(response.choices[0].message);
104
+ }
105
+ const schemaName = structuredOutputTool ? (_c = structuredOutputTool.function) === null || _c === void 0 ? void 0 : _c.name : structuredOutputName;
106
+ const errorMessage = (0, validation_1.formatValidationErrorMessage)(validationError, retryState.attemptNumber, structuredOutputMode, schemaName);
92
107
  messages.push({
93
- role: 'assistant',
94
- content: JSON.stringify(output),
108
+ role: 'system',
109
+ content: errorMessage,
95
110
  });
96
111
  }
97
- else {
98
- messages.push(response.choices[0].message);
99
- }
100
- const schemaName = structuredOutputTool ? (_c = structuredOutputTool.function) === null || _c === void 0 ? void 0 : _c.name : structuredOutputName;
101
- const errorMessage = (0, validation_1.formatValidationErrorMessage)(validationError, retryState.attemptNumber, structuredOutputMode, schemaName);
102
- messages.push({
103
- role: 'system',
104
- content: errorMessage,
105
- });
106
112
  await waitBeforeRetry();
107
113
  return true;
108
114
  }
@@ -1 +1 @@
1
- {"version":3,"file":"retryHandler.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/retryHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"retryHandler.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/retryHandler.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  import type { IDataObject } from 'n8n-workflow';
2
2
  import { VisualEditorProperties } from './visualEditor';
3
- export declare function prepareResponseFormatField(responseFormat: string, outputJsonSchemaDefinition: string, structuredOutputName: string, structuredOutputDescription: string, structuredOutputProperties: VisualEditorProperties[], structuredOutputIsArray: boolean, structuredOutputArrayName: string, structuredOutputArrayDescription: string): IDataObject | undefined;
3
+ export declare function prepareResponseFormatField(responseFormat: string, outputJsonSchemaDefinition?: string, structuredOutputName?: string, structuredOutputDescription?: string, structuredOutputProperties?: VisualEditorProperties[], structuredOutputIsArray?: boolean, structuredOutputArrayName?: string, structuredOutputArrayDescription?: string): IDataObject | undefined;
@@ -5,20 +5,20 @@ const visualEditor_1 = require("./visualEditor");
5
5
  const constants_1 = require("./constants");
6
6
  function prepareResponseFormatField(responseFormat, outputJsonSchemaDefinition, structuredOutputName, structuredOutputDescription, structuredOutputProperties, structuredOutputIsArray, structuredOutputArrayName, structuredOutputArrayDescription) {
7
7
  let response_format;
8
- if (responseFormat === 'structuredOutputSchema') {
8
+ if (responseFormat === 'structuredOutputSchema' && outputJsonSchemaDefinition) {
9
9
  const jsonSchema = JSON.parse(outputJsonSchemaDefinition);
10
10
  if (!jsonSchema.description) {
11
11
  jsonSchema.description = constants_1.DEFAULT_STRUCTURED_OUTPUT_DESCRIPTION;
12
12
  }
13
13
  response_format = { type: 'json_schema', json_schema: jsonSchema };
14
14
  }
15
- else if (responseFormat === 'structuredOutputVisual') {
15
+ else if (responseFormat === 'structuredOutputVisual' && structuredOutputName && structuredOutputProperties) {
16
16
  response_format = {
17
17
  type: 'json_schema',
18
18
  json_schema: {
19
19
  name: structuredOutputName,
20
- description: structuredOutputDescription.trim() || constants_1.DEFAULT_STRUCTURED_OUTPUT_DESCRIPTION,
21
- schema: (0, visualEditor_1.convertVisualEditorToSchema)(structuredOutputProperties, structuredOutputIsArray, structuredOutputArrayName, structuredOutputArrayDescription),
20
+ description: (structuredOutputDescription === null || structuredOutputDescription === void 0 ? void 0 : structuredOutputDescription.trim()) || constants_1.DEFAULT_STRUCTURED_OUTPUT_DESCRIPTION,
21
+ schema: (0, visualEditor_1.convertVisualEditorToSchema)(structuredOutputProperties, structuredOutputIsArray !== null && structuredOutputIsArray !== void 0 ? structuredOutputIsArray : false, structuredOutputArrayName !== null && structuredOutputArrayName !== void 0 ? structuredOutputArrayName : '', structuredOutputArrayDescription !== null && structuredOutputArrayDescription !== void 0 ? structuredOutputArrayDescription : ''),
22
22
  strict: true,
23
23
  },
24
24
  };
@@ -1 +1 @@
1
- {"version":3,"file":"structuredOutput.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/request/structuredOutput.ts"],"names":[],"mappings":";;AAOA,gEAsCC;AA5CD,iDAAqF;AACrF,2CAAoE;AAKpE,SAAgB,0BAA0B,CACzC,cAAsB,EACtB,0BAAkC,EAClC,oBAA4B,EAC5B,2BAAmC,EACnC,0BAAoD,EACpD,uBAAgC,EAChC,yBAAiC,EACjC,gCAAwC;IAExC,IAAI,eAAe,CAAC;IACpB,IAAI,cAAc,KAAK,wBAAwB,EAAE,CAAC;QACjD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAE1D,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YAC7B,UAAU,CAAC,WAAW,GAAG,iDAAqC,CAAC;QAChE,CAAC;QACD,eAAe,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;IACpE,CAAC;SAAM,IAAI,cAAc,KAAK,wBAAwB,EAAE,CAAC;QACxD,eAAe,GAAG;YACjB,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE;gBACZ,IAAI,EAAE,oBAAoB;gBAC1B,WAAW,EAAE,2BAA2B,CAAC,IAAI,EAAE,IAAI,iDAAqC;gBACxF,MAAM,EAAE,IAAA,0CAA2B,EAClC,0BAA0B,EAC1B,uBAAuB,EACvB,yBAAyB,EACzB,gCAAgC,CAChC;gBACD,MAAM,EAAE,IAAI;aACZ;SACD,CAAC;IACH,CAAC;SAAM,IAAI,cAAc,KAAK,UAAU,EAAE,CAAC;QAC1C,eAAe,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;IAC3C,CAAC;IAED,OAAO,eAAe,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"structuredOutput.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/request/structuredOutput.ts"],"names":[],"mappings":";;AAOA,gEAsCC;AA5CD,iDAAqF;AACrF,2CAAoE;AAKpE,SAAgB,0BAA0B,CACzC,cAAsB,EACtB,0BAAmC,EACnC,oBAA6B,EAC7B,2BAAoC,EACpC,0BAAqD,EACrD,uBAAiC,EACjC,yBAAkC,EAClC,gCAAyC;IAEzC,IAAI,eAAe,CAAC;IACpB,IAAI,cAAc,KAAK,wBAAwB,IAAI,0BAA0B,EAAE,CAAC;QAC/E,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAE1D,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YAC7B,UAAU,CAAC,WAAW,GAAG,iDAAqC,CAAC;QAChE,CAAC;QACD,eAAe,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;IACpE,CAAC;SAAM,IAAI,cAAc,KAAK,wBAAwB,IAAI,oBAAoB,IAAI,0BAA0B,EAAE,CAAC;QAC9G,eAAe,GAAG;YACjB,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE;gBACZ,IAAI,EAAE,oBAAoB;gBAC1B,WAAW,EAAE,CAAA,2BAA2B,aAA3B,2BAA2B,uBAA3B,2BAA2B,CAAE,IAAI,EAAE,KAAI,iDAAqC;gBACzF,MAAM,EAAE,IAAA,0CAA2B,EAClC,0BAA0B,EAC1B,uBAAuB,aAAvB,uBAAuB,cAAvB,uBAAuB,GAAI,KAAK,EAChC,yBAAyB,aAAzB,yBAAyB,cAAzB,yBAAyB,GAAI,EAAE,EAC/B,gCAAgC,aAAhC,gCAAgC,cAAhC,gCAAgC,GAAI,EAAE,CACtC;gBACD,MAAM,EAAE,IAAI;aACZ;SACD,CAAC;IACH,CAAC;SAAM,IAAI,cAAc,KAAK,UAAU,EAAE,CAAC;QAC1C,eAAe,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;IAC3C,CAAC;IAED,OAAO,eAAe,CAAC;AACxB,CAAC"}
@@ -23,7 +23,7 @@ function validateStructuredOutput(jsonSchema, output) {
23
23
  .join('\n');
24
24
  return {
25
25
  isValid: false,
26
- error: `Validation failed:\n${errorMessage}`,
26
+ error: errorMessage,
27
27
  errors,
28
28
  };
29
29
  }
@@ -36,12 +36,12 @@ function validateStructuredOutput(jsonSchema, output) {
36
36
  }
37
37
  }
38
38
  function formatValidationErrorMessage(validationError, attemptNumber, structuredOutputMode = 'native', schemaName) {
39
- const baseMessage = `Your previous response (attempt ${attemptNumber}) did not conform to the required JSON schema. Please correct the following validation errors and try again:\n\n${validationError}\n\n`;
39
+ const baseMessage = `Your previous response (attempt ${attemptNumber}) failed validation:\n\n${validationError}\n\n`;
40
40
  if (structuredOutputMode === 'tools' && schemaName) {
41
- return baseMessage + `You MUST call the \`${schemaName}\` tool with corrected arguments that strictly follow the required schema.`;
41
+ return baseMessage + `You MUST call the \`${schemaName}\` tool with valid arguments.`;
42
42
  }
43
43
  else {
44
- return baseMessage + 'Ensure your response strictly follows the schema requirements.';
44
+ return baseMessage + 'You MUST return a valid JSON object matching the required schema.';
45
45
  }
46
46
  }
47
47
  //# sourceMappingURL=validation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/request/validation.ts"],"names":[],"mappings":";;AAmBA,4DA2CC;AAUD,oEAaC;AAnFD,8DAAkE;AAiBlE,SAAgB,wBAAwB,CACvC,UAAmC,EACnC,MAAW;IAGX,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,CAAC;QAEJ,MAAM,SAAS,GAAG,IAAA,wCAAsB,EAAC,UAAyB,CAAC,CAAC;QAGpE,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAE3C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC1B,CAAC;aAAM,CAAC;YAEP,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAChD,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;gBACxB,OAAO,EAAE,GAAG,CAAC,OAAO;aACpB,CAAC,CAAC,CAAC;YAGJ,MAAM,YAAY,GAAG,MAAM;iBACzB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;iBACpE,IAAI,CAAC,IAAI,CAAC,CAAC;YAEb,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,uBAAuB,YAAY,EAAE;gBAC5C,MAAM;aACN,CAAC;QACH,CAAC;IACF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAEhB,OAAO;YACN,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,4BAA4B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;SAC3F,CAAC;IACH,CAAC;AACF,CAAC;AAUD,SAAgB,4BAA4B,CAC3C,eAAuB,EACvB,aAAqB,EACrB,uBAA+B,QAAQ,EACvC,UAAmB;IAEnB,MAAM,WAAW,GAAG,mCAAmC,aAAa,mHAAmH,eAAe,MAAM,CAAC;IAE7M,IAAI,oBAAoB,KAAK,OAAO,IAAI,UAAU,EAAE,CAAC;QACpD,OAAO,WAAW,GAAG,uBAAuB,UAAU,4EAA4E,CAAC;IACpI,CAAC;SAAM,CAAC;QACP,OAAO,WAAW,GAAG,gEAAgE,CAAC;IACvF,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/request/validation.ts"],"names":[],"mappings":";;AAmBA,4DA2CC;AAUD,oEAaC;AAnFD,8DAAkE;AAiBlE,SAAgB,wBAAwB,CACvC,UAAmC,EACnC,MAAW;IAGX,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,CAAC;QAEJ,MAAM,SAAS,GAAG,IAAA,wCAAsB,EAAC,UAAyB,CAAC,CAAC;QAGpE,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAE3C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC1B,CAAC;aAAM,CAAC;YAEP,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAChD,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;gBACxB,OAAO,EAAE,GAAG,CAAC,OAAO;aACpB,CAAC,CAAC,CAAC;YAGJ,MAAM,YAAY,GAAG,MAAM;iBACzB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;iBACpE,IAAI,CAAC,IAAI,CAAC,CAAC;YAEb,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,YAAY;gBACnB,MAAM;aACN,CAAC;QACH,CAAC;IACF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAEhB,OAAO;YACN,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,4BAA4B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;SAC3F,CAAC;IACH,CAAC;AACF,CAAC;AAUD,SAAgB,4BAA4B,CAC3C,eAAuB,EACvB,aAAqB,EACrB,uBAA+B,QAAQ,EACvC,UAAmB;IAEnB,MAAM,WAAW,GAAG,mCAAmC,aAAa,2BAA2B,eAAe,MAAM,CAAC;IAErH,IAAI,oBAAoB,KAAK,OAAO,IAAI,UAAU,EAAE,CAAC;QACpD,OAAO,WAAW,GAAG,uBAAuB,UAAU,+BAA+B,CAAC;IACvF,CAAC;SAAM,CAAC;QACP,OAAO,WAAW,GAAG,mEAAmE,CAAC;IAC1F,CAAC;AACF,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import type { IExecuteFunctions, IDataObject } from 'n8n-workflow';
2
2
  import type { ChatCompletion, AccumulatedUsage } from '../../api/types';
3
- export declare function processToolCalls(executeFunctions: IExecuteFunctions, body: IDataObject, messages: IDataObject[], invokableTools: any[], maxToolsIterations: number, structuredOutputTool?: IDataObject, abortSignal?: AbortSignal, startingIteration?: number): Promise<{
3
+ import type { InvokableTool } from '../execution/executionSetup';
4
+ export declare function processToolCalls(executeFunctions: IExecuteFunctions, body: IDataObject, messages: IDataObject[], invokableTools: InvokableTool[], maxToolsIterations: number, structuredOutputTool?: IDataObject, abortSignal?: AbortSignal, startingIteration?: number): Promise<{
4
5
  response: ChatCompletion;
5
6
  structuredOutputToolResponse: any;
6
7
  finalIteration: number;
@@ -163,12 +163,17 @@ async function processToolCalls(executeFunctions, body, messages, invokableTools
163
163
  break;
164
164
  }
165
165
  if (invokableTool.name === calledFunctionName) {
166
- const parsedArgs = (0, n8n_workflow_1.jsonParse)(calledFunctionArgs);
167
- content = await invokableTool.invoke(parsedArgs);
168
- content =
169
- Array.isArray(content) && typeof ((_f = content[0]) === null || _f === void 0 ? void 0 : _f.text) === 'string'
170
- ? content[0].text
171
- : content;
166
+ if ('invoke' in invokableTool && typeof invokableTool.invoke === 'function') {
167
+ const parsedArgs = (0, n8n_workflow_1.jsonParse)(calledFunctionArgs);
168
+ content = await invokableTool.invoke(parsedArgs);
169
+ content =
170
+ Array.isArray(content) && typeof ((_f = content[0]) === null || _f === void 0 ? void 0 : _f.text) === 'string'
171
+ ? content[0].text
172
+ : content;
173
+ }
174
+ else {
175
+ content = null;
176
+ }
172
177
  toolFound = true;
173
178
  break;
174
179
  }
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/tools/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/tools/executor.ts"],"names":[],"mappings":";;AAsFA,4CAgPC;AArUD,+CAAyC;AACzC,iEAA8D;AAO9D,SAAS,eAAe,CACvB,WAA6B,EAC7B,QAAiC;IAGjC,MAAM,YAAY,GAAG,CAAC,MAAW,EAAE,MAAW,EAAE,EAAE;QACjD,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YAC1B,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAErC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAChD,CAAC;iBAAM,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;gBAEjC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;YACpB,CAAC;iBAAM,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gBAE7C,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;YAC1C,CAAC;iBAAM,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;gBAEpE,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBAChC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACxC,CAAC;iBAAM,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gBAEtC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;QACF,CAAC;IACF,CAAC,CAAC;IAGF,WAAW,CAAC,aAAa,IAAI,QAAQ,CAAC,aAAa,IAAI,CAAC,CAAC;IACzD,WAAW,CAAC,iBAAiB,IAAI,QAAQ,CAAC,iBAAiB,IAAI,CAAC,CAAC;IACjE,WAAW,CAAC,YAAY,IAAI,QAAQ,CAAC,YAAY,IAAI,CAAC,CAAC;IAGvD,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACjC,WAAW,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC5D,CAAC;IAGD,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACpC,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC;IAC/D,CAAC;IAGD,IAAI,QAAQ,CAAC,qBAAqB,EAAE,CAAC;QACpC,WAAW,CAAC,qBAAqB,GAAG,WAAW,CAAC,qBAAqB,IAAI,EAAE,CAAC;QAC5E,YAAY,CAAC,WAAW,CAAC,qBAAqB,EAAE,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IACjF,CAAC;IAED,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC3B,WAAW,CAAC,YAAY,GAAG,WAAW,CAAC,YAAY,IAAI,EAAE,CAAC;QAC1D,YAAY,CAAC,WAAW,CAAC,YAAY,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,QAAQ,CAAC,yBAAyB,EAAE,CAAC;QACxC,WAAW,CAAC,yBAAyB,GAAG,WAAW,CAAC,yBAAyB,IAAI,EAAE,CAAC;QACpF,YAAY,CAAC,WAAW,CAAC,yBAAyB,EAAE,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IACzF,CAAC;IAGD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC5B,IAAI,CAAC,CAAC,eAAe,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS;YAC5E,uBAAuB,EAAE,cAAc,EAAE,2BAA2B,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACtF,IAAI,OAAO,QAAQ,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACvC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC5D,CAAC;iBAAM,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC3C,WAAW,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;YAClC,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,WAAW,CAAC;AACpB,CAAC;AAKM,KAAK,UAAU,gBAAgB,CACrC,gBAAmC,EACnC,IAAiB,EACjB,QAAuB,EACvB,cAA+B,EAC/B,kBAA0B,EAC1B,oBAAkC,EAClC,WAAyB,EACzB,oBAA4B,CAAC;;IAS7B,MAAM,gBAAgB,GAAqB;QAC1C,aAAa,EAAE,CAAC;QAChB,iBAAiB,EAAE,CAAC;QACpB,YAAY,EAAE,CAAC;QACf,cAAc,EAAE,CAAC;QACjB,gBAAgB,EAAE,CAAC;QACnB,eAAe,EAAE,EAAE;KACnB,CAAC;IAEF,IAAI,SAAS,GAAG,IAAI,CAAC;IACrB,IAAI,QAAwB,CAAC;IAE7B,IAAI,CAAC;QACJ,QAAQ,GAAG,CAAC,MAAM,mCAAgB,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,EAAE,mBAAmB,EAAE;YACtF,IAAI,EAAE,SAAS;SACf,CAAC,CAAmB,CAAC;QAGtB,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACpB,eAAe,CAAC,gBAAgB,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;YAClD,gBAAgB,CAAC,cAAc,EAAE,CAAC;QACnC,CAAC;IACF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAEhB,MAAM,KAAK,GAAI,SAAS,CAAC,KAAgB,IAAI,SAAS,CAAC;QACvD,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,gBAAgB,CAAC,eAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QACvE,MAAM,KAAK,CAAC;IACb,CAAC;IAGD,IAAI,SAAS,GAAG,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAC,CAAC,CAAC,0CAAE,OAAO,0CAAE,UAAU,CAAC;IAC1D,IAAI,gBAAgB,GAAG,iBAAiB,CAAC;IACzC,IAAI,4BAA4B,GAAG,IAAI,CAAC;IAGxC,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAU,CAAC;IAE/C,OAAO,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,EAAE,CAAC;QAE1B,MAAM,oBAAoB,GAAG,kBAAkB,IAAI,CAAC,IAAI,gBAAgB,GAAG,kBAAkB,CAAC;QAG9F,IAAI,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,EAAE,CAAC;YAC1B,MAAM;QACP,CAAC;QAGD,IAAI,oBAAoB,EAAE,CAAC;YAE1B,IAAI,oBAAoB,IAAI,CAAC,4BAA4B,EAAE,CAAC;gBAE3D,SAAS,GAAG;oBACX,GAAG,IAAI;oBACP,QAAQ,EAAE,QAAQ;oBAClB,KAAK,EAAE,CAAC,oBAAoB,CAAC;oBAC7B,WAAW,EAAE;wBACZ,IAAI,EAAE,UAAU;wBAChB,QAAQ,EAAE,EAAE,IAAI,EAAG,oBAAoB,CAAC,QAAwB,CAAC,IAAc,EAAE;qBACjF;iBACD,CAAC;YACH,CAAC;iBAAM,CAAC;gBAEP,SAAS,GAAG;oBACX,GAAG,IAAI;oBACP,QAAQ,EAAE,QAAQ;oBAClB,KAAK,EAAE,EAAE;oBACT,WAAW,EAAE,SAAS;iBACtB,CAAC;YACH,CAAC;YAGD,IAAI,CAAC;gBACJ,QAAQ,GAAG,CAAC,MAAM,mCAAgB,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,EAAE,mBAAmB,EAAE;oBACtF,IAAI,EAAE,SAAS;iBACf,CAAC,CAAmB,CAAC;gBAGtB,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACpB,eAAe,CAAC,gBAAgB,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;oBAClD,gBAAgB,CAAC,cAAc,EAAE,CAAC;gBACnC,CAAC;YACF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAEhB,MAAM,KAAK,GAAI,SAAS,CAAC,KAAgB,IAAI,SAAS,CAAC;gBACvD,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5E,gBAAgB,CAAC,eAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;gBACvE,MAAM,KAAK,CAAC;YACb,CAAC;YAGD,IAAI,oBAAoB,IAAI,CAAC,4BAA4B,KAAI,MAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,0CAAG,CAAC,CAAC,0CAAE,OAAO,0CAAE,UAAU,CAAA,EAAE,CAAC;gBAC1G,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;gBAC9D,KAAK,MAAM,QAAQ,IAAI,cAAc,EAAE,CAAC;oBACvC,IACG,oBAAoB,CAAC,QAAwB,CAAC,IAAe;wBAC/D,QAAQ,CAAC,QAAQ,CAAC,IAAI,EACrB,CAAC;wBACF,4BAA4B,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;wBAC3D,MAAM;oBACP,CAAC;gBACF,CAAC;YACF,CAAC;YAED,MAAM;QACP,CAAC;QAGD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAClC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;YAClD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;YACvD,MAAM,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAC;YAG/B,IAAI,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC1C,OAAO,CAAC,GAAG,CAAC,oCAAoC,UAAU,EAAE,CAAC,CAAC;gBAC9D,SAAS;YACV,CAAC;YACD,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAGrC,IAAI,OAAO,GAAkB,IAAI,CAAC;YAClC,IAAI,SAAS,GAAG,KAAK,CAAC;YAEtB,IAAI,CAAC;gBACJ,KAAK,MAAM,aAAa,IAAI,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,EAAE,EAAE,CAAC;oBAElD,IACC,oBAAoB;wBAClB,oBAAoB,CAAC,QAAwB,CAAC,IAAe,KAAK,kBAAkB,EACrF,CAAC;wBACF,4BAA4B,GAAG,kBAAkB,CAAC;wBAClD,SAAS,GAAG,IAAI,CAAC;wBACjB,MAAM;oBACP,CAAC;oBAED,IAAI,aAAa,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;wBAE/C,IAAI,QAAQ,IAAI,aAAa,IAAI,OAAO,aAAa,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;4BAE7E,MAAM,UAAU,GAAsB,IAAA,wBAAS,EAAC,kBAAkB,CAAC,CAAC;4BAGpE,OAAO,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;4BAGjD,OAAO;gCACN,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAA,MAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA,KAAK,QAAQ;oCAC7D,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;oCACjB,CAAC,CAAC,OAAO,CAAC;wBACb,CAAC;6BAAM,CAAC;4BAEP,OAAO,GAAG,IAAI,CAAC;wBAChB,CAAC;wBAED,SAAS,GAAG,IAAI,CAAC;wBACjB,MAAM;oBACP,CAAC;gBACF,CAAC;gBAED,IAAI,CAAC,SAAS,EAAE,CAAC;oBAChB,OAAO,GAAG,gBAAgB,kBAAkB,gCAAgC,CAAC;oBAC7E,OAAO,CAAC,KAAK,CAAC,mBAAmB,kBAAkB,EAAE,CAAC,CAAC;gBACxD,CAAC;YACF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,OAAO,GAAG,yBAAyB,kBAAkB,MAAM,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YACrH,CAAC;YAED,IAAI,4BAA4B,EAAE,CAAC;gBAClC,MAAM;YACP,CAAC;YAGD,IAAI,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC5C,CAAC;YAGD,IAAI,WAAW,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;gBAAC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,OAAO,OAAO,CAAC;YAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;YAGrK,QAAQ,CAAC,IAAI,CAAC;gBACb,YAAY,EAAE,UAAU;gBACxB,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,WAAW;aACpB,CAAC,CAAC;QACJ,CAAC;QAED,IAAI,4BAA4B,EAAE,CAAC;YAClC,MAAM;QACP,CAAC;QAGD,SAAS,GAAG;YACX,GAAG,IAAI;YACP,QAAQ,EAAE,QAAQ;SAClB,CAAC;QAGF,IAAI,CAAC;YACJ,QAAQ,GAAG,CAAC,MAAM,mCAAgB,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,EAAE,mBAAmB,EAAE;gBACtF,IAAI,EAAE,SAAS;aACf,CAAC,CAAmB,CAAC;YAGtB,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACpB,eAAe,CAAC,gBAAgB,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAClD,gBAAgB,CAAC,cAAc,EAAE,CAAC;YACnC,CAAC;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAEhB,MAAM,KAAK,GAAI,SAAS,CAAC,KAAgB,IAAI,SAAS,CAAC;YACvD,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,gBAAgB,CAAC,eAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;YACvE,MAAM,KAAK,CAAC;QACb,CAAC;QAGD,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QACnD,gBAAgB,IAAI,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,4BAA4B,EAAE,cAAc,EAAE,gBAAgB,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAClH,CAAC"}