From 8eabd8f0c26e060c7651b02c3166a52fd2ed6f66 Mon Sep 17 00:00:00 2001 From: Henry Date: Fri, 29 Dec 2023 13:50:33 +0000 Subject: [PATCH] wrap in a try catch block --- .../agents/OpenAIAssistant/OpenAIAssistant.ts | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/packages/components/nodes/agents/OpenAIAssistant/OpenAIAssistant.ts b/packages/components/nodes/agents/OpenAIAssistant/OpenAIAssistant.ts index 85d35ea9..cf69022b 100644 --- a/packages/components/nodes/agents/OpenAIAssistant/OpenAIAssistant.ts +++ b/packages/components/nodes/agents/OpenAIAssistant/OpenAIAssistant.ts @@ -324,14 +324,19 @@ class OpenAIAssistant_Agents implements INode { const newRun = await openai.beta.threads.runs.retrieve(threadId, runId) const newStatus = newRun?.status - if (submitToolOutputs.length && newStatus === 'requires_action') { - await openai.beta.threads.runs.submitToolOutputs(threadId, runId, { - tool_outputs: submitToolOutputs - }) - resolve(state) - } else { - await openai.beta.threads.runs.cancel(threadId, runId) - resolve('requires_action_retry') + try { + if (submitToolOutputs.length && newStatus === 'requires_action') { + await openai.beta.threads.runs.submitToolOutputs(threadId, runId, { + tool_outputs: submitToolOutputs + }) + resolve(state) + } else { + await openai.beta.threads.runs.cancel(threadId, runId) + resolve('requires_action_retry') + } + } catch (e) { + clearInterval(timeout) + reject(new Error(`Error submitting tool outputs: ${state}, Thread ID: ${threadId}, Run ID: ${runId}`)) } } } else if (state === 'cancelled' || state === 'expired' || state === 'failed') {