From 6c83fdab604a22ea3123f142d8ef0688f9343bd8 Mon Sep 17 00:00:00 2001 From: FinleyGe Date: Wed, 1 Oct 2025 12:06:44 +0800 Subject: [PATCH] perf: delay do not dispatch with new worker --- modules/tool/api/runStream.ts | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/modules/tool/api/runStream.ts b/modules/tool/api/runStream.ts index 7f7f8ae1..66c1110b 100644 --- a/modules/tool/api/runStream.ts +++ b/modules/tool/api/runStream.ts @@ -6,6 +6,7 @@ import { StreamMessageTypeEnum } from '../type/tool'; import { addLog } from '@/utils/log'; import { getErrText } from '@tool/utils/err'; import { recordToolExecution } from '@/utils/signoz'; +import { input } from 'node_modules/@inquirer/prompts/dist/commonjs'; export const runToolStreamHandler = async ( req: Request, @@ -27,16 +28,28 @@ export const runToolStreamHandler = async ( try { addLog.debug(`Run tool start`, { toolId, inputs, systemVar }); - const result = await dispatchWithNewWorker({ - toolId, - inputs, - systemVar, - onMessage: (e) => - streamManager.sendMessage({ - type: StreamMessageTypeEnum.stream, - data: e - }) - }); + const result = await (async () => { + if (toolId === 'delay') { + return await tool.cb(inputs, { + systemVar, + streamResponse: (e) => + streamManager.sendMessage({ + type: StreamMessageTypeEnum.stream, + data: e + }) + }); + } + return await dispatchWithNewWorker({ + toolId, + inputs, + systemVar, + onMessage: (e) => + streamManager.sendMessage({ + type: StreamMessageTypeEnum.stream, + data: e + }) + }); + })(); streamManager.sendMessage({ type: StreamMessageTypeEnum.response,