From 4ee81be180bb4d0494eaa74ed22a3510b6899c8b Mon Sep 17 00:00:00 2001 From: Dax Raad Date: Tue, 22 Jul 2025 18:24:48 -0400 Subject: [PATCH] force --- packages/opencode/src/session/index.ts | 2 +- packages/opencode/src/snapshot/index.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/opencode/src/session/index.ts b/packages/opencode/src/session/index.ts index a5e2ed0a4..e1ca59159 100644 --- a/packages/opencode/src/session/index.ts +++ b/packages/opencode/src/session/index.ts @@ -1075,7 +1075,7 @@ export namespace Session { if ((msg.info.id === input.messageID && !input.partID) || part.id === input.partID) { // if no useful parts left in message, same as reverting whole message const partID = remaining.some((item) => ["text", "tool"].includes(item.type)) ? input.partID : undefined - const snapshot = session.revert?.snapshot ?? (await Snapshot.create(input.sessionID)) + const snapshot = session.revert?.snapshot ?? (await Snapshot.create(input.sessionID, true)) log.info("revert snapshot", { snapshot }) if (lastSnapshot) await Snapshot.restore(input.sessionID, lastSnapshot.snapshot) const next = await update(input.sessionID, (draft) => { diff --git a/packages/opencode/src/snapshot/index.ts b/packages/opencode/src/snapshot/index.ts index 6534da86d..68d9d5469 100644 --- a/packages/opencode/src/snapshot/index.ts +++ b/packages/opencode/src/snapshot/index.ts @@ -8,7 +8,7 @@ import { Log } from "../util/log" export namespace Snapshot { const log = Log.create({ service: "snapshot" }) - export async function create(sessionID: string) { + export async function create(sessionID: string, force?: boolean) { log.info("creating snapshot") const app = App.info() @@ -40,7 +40,7 @@ export namespace Snapshot { log.info("added files") const result = - await $`git --git-dir ${git} commit -m "snapshot" --no-gpg-sign --author="opencode "` + await $`git --git-dir ${git} commit ${force ? "--allow-empty" : ""} -m "snapshot" --no-gpg-sign --author="opencode "` .quiet() .cwd(app.path.cwd) .nothrow()