UNPKG

eve

Version:

Filesystem-first framework for durable backend AI agents that run anywhere.

1 lines 1.06 kB
import{toErrorMessage}from"#shared/errors.js";import{CHANNEL_CONTEXT_KEY_NAME}from"#context/key-names.js";import{SUBAGENT_EXECUTION_FAILED}from"#subagents/agent-handle-errors.js";import{SUBAGENT_ADAPTER_KIND}from"#subagents/adapter-state.js";const ZERO_TOKEN_USAGE={cacheReadTokens:0,cacheWriteTokens:0,inputTokens:0,outputTokens:0};function createDelegatedSubagentSuccessResult(e,t){let n=e[CHANNEL_CONTEXT_KEY_NAME];if(n?.kind===SUBAGENT_ADAPTER_KIND)return{callId:String(n.state?.callId??``),kind:`subagent-result`,origin:`child`,outcome:{kind:`terminal`,result:{kind:`succeeded`,output:t},usageDelta:ZERO_TOKEN_USAGE},output:t,subagentName:String(n.state?.subagentName??``)}}function createDelegatedSubagentErrorResult(e,t){let n=createDelegatedSubagentSuccessResult(e,``);if(n===void 0)return;let r={code:SUBAGENT_EXECUTION_FAILED,message:toErrorMessage(t)};return{...n,isError:!0,outcome:{kind:`terminal`,result:{error:r,kind:`failed`},usageDelta:ZERO_TOKEN_USAGE},output:r}}export{createDelegatedSubagentErrorResult,createDelegatedSubagentSuccessResult};