From b5be54b8efe2b594cd1dce7a9a76bc5321f37462 Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Wed, 4 Feb 2026 13:35:45 +0100 Subject: [PATCH] fix(coding-agent): persist user message after fork When hasAssistant guard returns early, set flushed=false so the next persist (after assistant arrives) writes all entries including the user message. --- packages/coding-agent/src/core/session-manager.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/coding-agent/src/core/session-manager.ts b/packages/coding-agent/src/core/session-manager.ts index 839a9e9b..e28224ff 100644 --- a/packages/coding-agent/src/core/session-manager.ts +++ b/packages/coding-agent/src/core/session-manager.ts @@ -792,7 +792,11 @@ export class SessionManager { if (!this.persist || !this.sessionFile) return; const hasAssistant = this.fileEntries.some((e) => e.type === "message" && e.message.role === "assistant"); - if (!hasAssistant) return; + if (!hasAssistant) { + // Mark as not flushed so when assistant arrives, all entries get written + this.flushed = false; + return; + } if (!this.flushed) { for (const e of this.fileEntries) {