fix(agent-loop): preserve unified send contracts

This commit is contained in:
_Kerman
2026-07-24 13:18:57 +08:00
parent aaa42d5844
commit 7d5c8b12c0
19 changed files with 476 additions and 223 deletions
+5 -2
View File
@@ -1415,12 +1415,15 @@ export class ToolRegistry extends Service {
content: result.content,
...result.meta !== undefined ? { meta: result.meta } : {},
...result.additionalContexts !== undefined ? { additionalContexts: result.additionalContexts } : {},
...result.concludesTurn === true ? { concludesTurn: true as const } : {},
}
if (result.isError) {
return materializePresentation({ isError: true as const, error: result.error, ...presentation })
}
const detached = materializePresentation({ isError: false as const, ...presentation })
const detached = materializePresentation({
isError: false as const,
...presentation,
...result.concludesTurn === true ? { concludesTurn: true as const } : {},
})
return deepFreeze({ ...detached, value: result.value })
}
}