fix(ralph-loop): prevent race condition in reset strategy between session ID update and TUI switch

Fixes #2100
This commit is contained in:
YeonGyu-Kim
2026-02-25 14:01:27 +09:00
parent 15519b9580
commit a0e57c13c3
2 changed files with 123 additions and 9 deletions
+10 -9
View File
@@ -33,15 +33,6 @@ export async function continueIteration(
return
}
const boundState = options.loopState.setSessionID(newSessionID)
if (!boundState) {
log(`[${HOOK_NAME}] Failed to bind loop state to new session`, {
previousSessionID: options.previousSessionID,
newSessionID,
})
return
}
await injectContinuationPrompt(ctx, {
sessionID: newSessionID,
inheritFromSessionID: options.previousSessionID,
@@ -51,6 +42,16 @@ export async function continueIteration(
})
await selectSessionInTui(ctx.client, newSessionID)
const boundState = options.loopState.setSessionID(newSessionID)
if (!boundState) {
log(`[${HOOK_NAME}] Failed to bind loop state to new session`, {
previousSessionID: options.previousSessionID,
newSessionID,
})
return
}
return
}