fix(desktop): clean stale draft stores (#34651)

This commit is contained in:
Brendan Allan 2026-07-01 17:03:27 +08:00 committed by GitHub
commit 2f4d36d64e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 216 additions and 1 deletions

View file

@ -40,6 +40,7 @@ import { createWslServersController } from "./wsl/servers"
import { registerWslIpcHandlers } from "./wsl/ipc"
import { spawnWslSidecar } from "./wsl/sidecar"
import { migrate } from "./migrate"
import { cleanupStoreFiles } from "./store-cleanup"
const APP_NAMES: Record<string, string> = {
dev: "OpenCode Dev",
@ -242,6 +243,19 @@ const main = Effect.gen(function* () {
yield* Effect.promise(() => app.whenReady())
if (!TEST_ONBOARDING) migrate()
yield* Effect.promise(() => cleanupStoreFiles(app.getPath("userData"))).pipe(
Effect.tap((result) =>
Effect.sync(() => {
if (result.deleted.length === 0) return
logger.log("cleaned scoped store files", { count: result.deleted.length, scanned: result.scanned })
}),
),
Effect.catch((error) =>
Effect.sync(() => {
logger.warn("failed to clean scoped store files", error)
}),
),
)
app.setAsDefaultProtocolClient("opencode")
registerRendererProtocol()
setDockIcon()