From a7ab2aebd4b0d1d7ae25ff89bdc98a8ae2bd14be Mon Sep 17 00:00:00 2001 From: arkon Date: Mon, 19 Jan 2026 20:01:52 +0100 Subject: [PATCH] fix: persist Ralph Wiggum tracking settings across server restarts Restore inner loop tracker state (enabled flag, todos, loop state) when sessions are restored from screen sessions after server restart. Co-Authored-By: Claude Opus 4.5 --- src/web/server.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/web/server.ts b/src/web/server.ts index f4a4e161..df0eac2b 100644 --- a/src/web/server.ts +++ b/src/web/server.ts @@ -1407,6 +1407,13 @@ export class WebServer extends EventEmitter { this.sessions.set(session.id, session); this.setupSessionListeners(session); + // Restore inner loop tracking state (Ralph Wiggum settings) if it was saved + const innerState = this.store.getInnerState(screen.sessionId); + if (innerState) { + session.innerLoopTracker.restoreState(innerState.loop, innerState.todos); + console.log(`[Server] Restored inner loop state for session ${session.id} (enabled: ${innerState.loop.enabled})`); + } + // Mark it as restored (not started yet - user needs to attach) console.log(`[Server] Restored session ${session.id} from screen ${screen.screenName}`); }