Kaynağa Gözat

core: fix project event emission to include updated worktree data

Dax Raad 4 ay önce
ebeveyn
işleme
f1955b4d05

+ 5 - 4
packages/opencode/src/project/project.ts

@@ -108,7 +108,7 @@ export namespace Project {
       }
     }
     discover(existing)
-    await Storage.write<Info>(["project", id], {
+    const result: Info = {
       ...existing,
       worktree,
       vcs: vcs as Info["vcs"],
@@ -116,14 +116,15 @@ export namespace Project {
         ...existing.time,
         updated: Date.now(),
       },
-    })
+    }
+    await Storage.write<Info>(["project", id], result)
     GlobalBus.emit("event", {
       payload: {
         type: Event.Updated.type,
-        properties: existing,
+        properties: result,
       },
     })
-    return existing
+    return result
   }
 
   export async function discover(input: Info) {

+ 1 - 1
packages/opencode/test/snapshot/snapshot.test.ts

@@ -469,7 +469,7 @@ test("snapshot state isolation between projects", async () => {
   })
 })
 
-test.only("patch detects changes in secondary worktree", async () => {
+test("patch detects changes in secondary worktree", async () => {
   await using tmp = await bootstrap()
   const worktreePath = `${tmp.path}-worktree`
   await $`git worktree add ${worktreePath} HEAD`.cwd(tmp.path).quiet()