From 1c430e0cbd128915da83a9be6e9eedcbd4453c6e Mon Sep 17 00:00:00 2001 From: arkon Date: Thu, 22 Jan 2026 21:13:23 +0100 Subject: [PATCH] fix: persist session state after all restorations complete on restart persistSessionState was called before the respawn controller was restored, so respawnEnabled was always saved as false during recovery. Moved the persist call to after all restorations (auto-compact, auto-clear, ralph, respawn) are applied. Co-Authored-By: Claude Opus 4.5 --- src/web/server.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/web/server.ts b/src/web/server.ts index 3acafdbc..547655d1 100644 --- a/src/web/server.ts +++ b/src/web/server.ts @@ -1990,7 +1990,6 @@ export class WebServer extends EventEmitter { } this.sessions.set(session.id, session); - this.persistSessionState(session); this.setupSessionListeners(session); // Restore Ralph tracking state (Ralph Wiggum settings) if it was saved @@ -2043,6 +2042,9 @@ export class WebServer extends EventEmitter { } } + // Persist full state after all restorations are applied + this.persistSessionState(session); + // Mark it as restored (not started yet - user needs to attach) console.log(`[Server] Restored session ${session.id} from screen ${screen.screenName}`); }