[AI] Drop 'serialization' from tool output naming (#20052)
didnt made sense anymore -- we dont really 'serialize'
This commit is contained in:
+1
-1
@@ -8,5 +8,5 @@ export type ToolRetrievalOptions = {
|
||||
// Apply output compaction (strip nulls/empty values) to dispatch results
|
||||
// before returning. Chat enables this to reduce token usage in the
|
||||
// conversation context; MCP and workflow agents leave raw output intact.
|
||||
serializeOutput?: boolean;
|
||||
compactOutput?: boolean;
|
||||
};
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
import { stripEmptyValues } from 'src/engine/core-modules/tool-provider/output-serialization/strip-empty-values.util';
|
||||
import { stripEmptyValues } from 'src/engine/core-modules/tool-provider/output-transforms/strip-empty-values.util';
|
||||
|
||||
describe('stripEmptyValues', () => {
|
||||
it('should remove null values', () => {
|
||||
+10
-10
@@ -7,7 +7,7 @@ import { type ToolProviderContext } from 'src/engine/core-modules/tool-provider/
|
||||
import { type ToolRetrievalOptions } from 'src/engine/core-modules/tool-provider/interfaces/tool-retrieval-options.type';
|
||||
|
||||
import { TOOL_PROVIDERS } from 'src/engine/core-modules/tool-provider/constants/tool-providers.token';
|
||||
import { compactToolOutput } from 'src/engine/core-modules/tool-provider/output-serialization/compact-tool-output.util';
|
||||
import { compactToolOutput } from 'src/engine/core-modules/tool-provider/output-transforms/compact-tool-output.util';
|
||||
import { ToolExecutorService } from 'src/engine/core-modules/tool-provider/services/tool-executor.service';
|
||||
import { type LearnToolsAspect } from 'src/engine/core-modules/tool-provider/tools/learn-tools.tool';
|
||||
import { type ToolContext } from 'src/engine/core-modules/tool-provider/types/tool-context.type';
|
||||
@@ -107,12 +107,12 @@ export class ToolRegistryService {
|
||||
options?: {
|
||||
wrapWithErrorContext?: boolean;
|
||||
includeLoadingMessage?: boolean;
|
||||
serializeOutput?: boolean;
|
||||
compactOutput?: boolean;
|
||||
},
|
||||
): ToolSet {
|
||||
const toolSet: ToolSet = {};
|
||||
const includeLoadingMessage = options?.includeLoadingMessage ?? true;
|
||||
const serializeOutput = options?.serializeOutput ?? false;
|
||||
const compactOutput = options?.compactOutput ?? false;
|
||||
|
||||
for (const descriptor of descriptors) {
|
||||
const baseSchema = descriptor.inputSchema as Record<string, unknown>;
|
||||
@@ -133,7 +133,7 @@ export class ToolRegistryService {
|
||||
context,
|
||||
);
|
||||
|
||||
return serializeOutput
|
||||
return compactOutput
|
||||
? (compactToolOutput(result) as ToolOutput)
|
||||
: result;
|
||||
};
|
||||
@@ -170,7 +170,7 @@ export class ToolRegistryService {
|
||||
context: ToolContext,
|
||||
options?: {
|
||||
includeLoadingMessage?: boolean;
|
||||
serializeOutput?: boolean;
|
||||
compactOutput?: boolean;
|
||||
},
|
||||
): Promise<ToolSet> {
|
||||
const fullContext = this.buildContextFromToolContext(context);
|
||||
@@ -190,7 +190,7 @@ export class ToolRegistryService {
|
||||
|
||||
return this.hydrateToolSet(descriptors, fullContext, {
|
||||
includeLoadingMessage: options?.includeLoadingMessage,
|
||||
serializeOutput: options?.serializeOutput,
|
||||
compactOutput: options?.compactOutput,
|
||||
});
|
||||
}
|
||||
|
||||
@@ -236,7 +236,7 @@ export class ToolRegistryService {
|
||||
toolName: string,
|
||||
args: Record<string, unknown> | undefined,
|
||||
context: ToolContext,
|
||||
options?: { serializeOutput?: boolean },
|
||||
options?: { compactOutput?: boolean },
|
||||
): Promise<ToolOutput> {
|
||||
try {
|
||||
const fullContext = this.buildContextFromToolContext(context);
|
||||
@@ -258,7 +258,7 @@ export class ToolRegistryService {
|
||||
fullContext,
|
||||
);
|
||||
|
||||
return options?.serializeOutput
|
||||
return options?.compactOutput
|
||||
? (compactToolOutput(result) as ToolOutput)
|
||||
: result;
|
||||
} catch (error) {
|
||||
@@ -286,7 +286,7 @@ export class ToolRegistryService {
|
||||
excludeTools,
|
||||
wrapWithErrorContext,
|
||||
includeLoadingMessage,
|
||||
serializeOutput,
|
||||
compactOutput,
|
||||
} = options;
|
||||
const categorySet = categories ? new Set(categories) : undefined;
|
||||
|
||||
@@ -321,7 +321,7 @@ export class ToolRegistryService {
|
||||
const toolSet = this.hydrateToolSet(filteredDescriptors, context, {
|
||||
wrapWithErrorContext,
|
||||
includeLoadingMessage,
|
||||
serializeOutput,
|
||||
compactOutput,
|
||||
});
|
||||
|
||||
this.logger.log(
|
||||
|
||||
+2
-2
@@ -49,7 +49,7 @@ export const createExecuteToolTool = (
|
||||
context: ToolContext,
|
||||
options?: {
|
||||
excludeTools?: Set<string>;
|
||||
serializeOutput?: boolean;
|
||||
compactOutput?: boolean;
|
||||
},
|
||||
) => ({
|
||||
description:
|
||||
@@ -67,7 +67,7 @@ export const createExecuteToolTool = (
|
||||
}
|
||||
|
||||
return toolRegistry.resolveAndExecute(toolName, args, context, {
|
||||
serializeOutput: options?.serializeOutput,
|
||||
compactOutput: options?.compactOutput,
|
||||
});
|
||||
},
|
||||
});
|
||||
|
||||
+2
-2
@@ -138,7 +138,7 @@ export class ChatExecutionService {
|
||||
const preloadedTools = await this.toolRegistry.getToolsByName(
|
||||
AI_CHAT_TOOL_NAMES_TO_PRELOAD,
|
||||
toolContext,
|
||||
{ serializeOutput: true },
|
||||
{ compactOutput: true },
|
||||
);
|
||||
|
||||
const resolvedModelId = modelId ?? workspace.smartModel;
|
||||
@@ -186,7 +186,7 @@ export class ChatExecutionService {
|
||||
[EXECUTE_TOOL_TOOL_NAME]: createExecuteToolTool(
|
||||
this.toolRegistry,
|
||||
toolContext,
|
||||
{ serializeOutput: true },
|
||||
{ compactOutput: true },
|
||||
),
|
||||
[LOAD_SKILL_TOOL_NAME]: createLoadSkillTool(
|
||||
(skillNames) =>
|
||||
|
||||
Reference in New Issue
Block a user