Skip to content

Commit 2f6da1f

Browse files
committed
chore: reset the session in runner before running query
1 parent b1d76f2 commit 2f6da1f

File tree

2 files changed

+15
-11
lines changed

2 files changed

+15
-11
lines changed

container/agent-runner/src/index.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -517,6 +517,16 @@ async function main(): Promise<void> {
517517
let resumeAt: string | undefined;
518518
try {
519519
while (true) {
520+
// Apply any pending session reset before starting the next query.
521+
// This ensures /new-session takes effect even when the container is
522+
// idle-waiting or was mid-query when the reset message arrived.
523+
if (pendingReset) {
524+
log('Applying pending reset: clearing sessionId and resumeAt for new session');
525+
sessionId = undefined;
526+
resumeAt = undefined;
527+
pendingReset = false;
528+
}
529+
520530
log(`Starting query (session: ${sessionId || 'new'}, resumeAt: ${resumeAt || 'latest'})...`);
521531

522532
const queryResult = await runQuery(prompt, sessionId, mcpServerPath, containerInput, sdkEnv, resumeAt);
@@ -547,16 +557,6 @@ async function main(): Promise<void> {
547557
break;
548558
}
549559

550-
// Apply any pending session reset before starting the next query.
551-
// This ensures /new-session takes effect even when the container is
552-
// idle-waiting or was mid-query when the reset message arrived.
553-
if (pendingReset) {
554-
log('Applying pending reset: clearing sessionId and resumeAt for new session');
555-
sessionId = undefined;
556-
resumeAt = undefined;
557-
pendingReset = false;
558-
}
559-
560560
log(`Got new message (${nextMessage.length} chars), starting new query`);
561561
prompt = nextMessage;
562562
}

src/group-queue.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,11 @@ export class GroupQueue {
186186
*/
187187
sendResetByFolder(groupFolder: string): boolean {
188188
for (const [, state] of this.groups) {
189-
if (state.active && !state.isTaskContainer && state.groupFolder === groupFolder) {
189+
if (
190+
state.active &&
191+
!state.isTaskContainer &&
192+
state.groupFolder === groupFolder
193+
) {
190194
const inputDir = path.join(DATA_DIR, 'ipc', groupFolder, 'input');
191195
try {
192196
fs.mkdirSync(inputDir, { recursive: true });

0 commit comments

Comments
 (0)