diff options
| author | Dax Raad <[email protected]> | 2025-06-19 13:00:45 -0400 |
|---|---|---|
| committer | Dax Raad <[email protected]> | 2025-06-19 13:00:57 -0400 |
| commit | 97c4815444a055e3439f027a2ffd5a0a49df31e3 (patch) | |
| tree | 4bf447ec182c089915d787a964e2f141a76b2d79 | |
| parent | 7d1a1663c8342cdcdfccfa78c897b6a42dba06f7 (diff) | |
| download | opencode-97c4815444a055e3439f027a2ffd5a0a49df31e3.tar.gz opencode-97c4815444a055e3439f027a2ffd5a0a49df31e3.zip | |
fix task agent performance issues
| -rw-r--r-- | packages/opencode/src/session/index.ts | 3 | ||||
| -rw-r--r-- | packages/opencode/src/tool/task.ts | 5 |
2 files changed, 6 insertions, 2 deletions
diff --git a/packages/opencode/src/session/index.ts b/packages/opencode/src/session/index.ts index 199d1d9a8..01f126803 100644 --- a/packages/opencode/src/session/index.ts +++ b/packages/opencode/src/session/index.ts @@ -584,7 +584,7 @@ export namespace Session { break case "tool-call-delta": - break + continue // for some reason ai sdk claims to not send this part but it does // @ts-expect-error @@ -619,6 +619,7 @@ export namespace Session { l.info("unhandled", { type: value.type, }) + continue } await updateMessage(next) } diff --git a/packages/opencode/src/tool/task.ts b/packages/opencode/src/tool/task.ts index a0cab347a..2796d0fec 100644 --- a/packages/opencode/src/tool/task.ts +++ b/packages/opencode/src/tool/task.ts @@ -34,13 +34,16 @@ export const TaskTool = Tool.define({ } const unsub = Bus.subscribe(Message.Event.Updated, async (evt) => { - if (evt.properties.info.metadata.sessionID !== ctx.sessionID) return + if (evt.properties.info.metadata.sessionID !== session.id) return ctx.metadata({ title: params.description, summary: summary(evt.properties.info), }) }) + ctx.abort.addEventListener("abort", () => { + Session.abort(session.id) + }) const result = await Session.chat({ sessionID: session.id, modelID: metadata.modelID, |
