From f1955b4d05f934b08b200c165b13ed2369e1befe Mon Sep 17 00:00:00 2001 From: Dax Raad Date: Tue, 9 Dec 2025 15:41:31 -0500 Subject: [PATCH] core: fix project event emission to include updated worktree data --- packages/opencode/src/project/project.ts | 9 +++++---- packages/opencode/test/snapshot/snapshot.test.ts | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/opencode/src/project/project.ts b/packages/opencode/src/project/project.ts index 4e71032aa..e97ff1ad5 100644 --- a/packages/opencode/src/project/project.ts +++ b/packages/opencode/src/project/project.ts @@ -108,7 +108,7 @@ export namespace Project { } } discover(existing) - await Storage.write(["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(["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) { diff --git a/packages/opencode/test/snapshot/snapshot.test.ts b/packages/opencode/test/snapshot/snapshot.test.ts index 11eeaab72..cf933f812 100644 --- a/packages/opencode/test/snapshot/snapshot.test.ts +++ b/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()