Просмотр исходного кода

fix task agent performance issues

Dax Raad 8 месяцев назад
Родитель
Сommit
97c4815444
2 измененных файлов с 6 добавлено и 2 удалено
  1. 2 1
      packages/opencode/src/session/index.ts
  2. 4 1
      packages/opencode/src/tool/task.ts

+ 2 - 1
packages/opencode/src/session/index.ts

@@ -584,7 +584,7 @@ export namespace Session {
             break
             break
 
 
           case "tool-call-delta":
           case "tool-call-delta":
-            break
+            continue
 
 
           // for some reason ai sdk claims to not send this part but it does
           // for some reason ai sdk claims to not send this part but it does
           // @ts-expect-error
           // @ts-expect-error
@@ -619,6 +619,7 @@ export namespace Session {
             l.info("unhandled", {
             l.info("unhandled", {
               type: value.type,
               type: value.type,
             })
             })
+            continue
         }
         }
         await updateMessage(next)
         await updateMessage(next)
       }
       }

+ 4 - 1
packages/opencode/src/tool/task.ts

@@ -34,13 +34,16 @@ export const TaskTool = Tool.define({
     }
     }
 
 
     const unsub = Bus.subscribe(Message.Event.Updated, async (evt) => {
     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({
       ctx.metadata({
         title: params.description,
         title: params.description,
         summary: summary(evt.properties.info),
         summary: summary(evt.properties.info),
       })
       })
     })
     })
 
 
+    ctx.abort.addEventListener("abort", () => {
+      Session.abort(session.id)
+    })
     const result = await Session.chat({
     const result = await Session.chat({
       sessionID: session.id,
       sessionID: session.id,
       modelID: metadata.modelID,
       modelID: metadata.modelID,