diff --git a/packages/opencode/src/project/instance-store.ts b/packages/opencode/src/project/instance-store.ts index 3de0bdbc36..80f76d5cfa 100644 --- a/packages/opencode/src/project/instance-store.ts +++ b/packages/opencode/src/project/instance-store.ts @@ -123,9 +123,11 @@ export const layer: Layer.Layer = Layer.effect( cache.set(directory, entry) yield* Effect.gen(function* () { yield* Effect.logInfo("reloading instance", { directory }) - if (previous) yield* Deferred.await(previous.deferred).pipe(Effect.exit, Effect.asVoid) - yield* Effect.promise(() => disposeInstance(directory)) - yield* emitDisposed({ directory, project: input.project?.id }) + if (previous) { + yield* Deferred.await(previous.deferred).pipe(Effect.exit, Effect.asVoid) + yield* Effect.promise(() => disposeInstance(directory)) + yield* emitDisposed({ directory, project: input.project?.id }) + } yield* completeLoad(directory, input, entry) }).pipe(Effect.forkIn(scope, { startImmediately: true })) return yield* restore(Deferred.await(entry.deferred))