Jelajahi Sumber

fix: type error

Adam 4 minggu lalu
induk
melakukan
b6beda1569
1 mengubah file dengan 10 tambahan dan 4 penghapusan
  1. 10 4
      packages/app/src/components/prompt-input.tsx

+ 10 - 4
packages/app/src/components/prompt-input.tsx

@@ -854,7 +854,7 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
     setStore("popover", null)
     setStore("popover", null)
   }
   }
 
 
-  const abort = () => {
+  const abort = async () => {
     const sessionID = params.id
     const sessionID = params.id
     if (!sessionID) return Promise.resolve()
     if (!sessionID) return Promise.resolve()
     const queued = pending.get(sessionID)
     const queued = pending.get(sessionID)
@@ -1463,12 +1463,16 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
       const worktree = WorktreeState.get(sessionDirectory)
       const worktree = WorktreeState.get(sessionDirectory)
       if (!worktree || worktree.status !== "pending") return true
       if (!worktree || worktree.status !== "pending") return true
 
 
-      setSyncStore("session_status", session.id, { type: "busy" })
+      if (sessionDirectory === projectDirectory) {
+        sync.set("session_status", session.id, { type: "busy" })
+      }
 
 
       const controller = new AbortController()
       const controller = new AbortController()
 
 
       const cleanup = () => {
       const cleanup = () => {
-        setSyncStore("session_status", session.id, { type: "idle" })
+        if (sessionDirectory === projectDirectory) {
+          sync.set("session_status", session.id, { type: "idle" })
+        }
         removeOptimisticMessage()
         removeOptimisticMessage()
         for (const item of commentItems) {
         for (const item of commentItems) {
           prompt.context.add({
           prompt.context.add({
@@ -1528,7 +1532,9 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
 
 
     void send().catch((err) => {
     void send().catch((err) => {
       pending.delete(session.id)
       pending.delete(session.id)
-      setSyncStore("session_status", session.id, { type: "idle" })
+      if (sessionDirectory === projectDirectory) {
+        sync.set("session_status", session.id, { type: "idle" })
+      }
       showToast({
       showToast({
         title: language.t("prompt.toast.promptSendFailed.title"),
         title: language.t("prompt.toast.promptSendFailed.title"),
         description: errorMessage(err),
         description: errorMessage(err),