From 1a5794f65ad4a73d625bd7767968ec8c682d1413 Mon Sep 17 00:00:00 2001 From: Vincent Koc Date: Wed, 11 Mar 2026 19:49:49 -0400 Subject: [PATCH] Reply: share followup queue runtime state --- src/auto-reply/reply/queue/state.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/auto-reply/reply/queue/state.ts b/src/auto-reply/reply/queue/state.ts index 73f7ed946bc..0bf269aff23 100644 --- a/src/auto-reply/reply/queue/state.ts +++ b/src/auto-reply/reply/queue/state.ts @@ -18,7 +18,17 @@ export const DEFAULT_QUEUE_DEBOUNCE_MS = 1000; export const DEFAULT_QUEUE_CAP = 20; export const DEFAULT_QUEUE_DROP: QueueDropPolicy = "summarize"; -export const FOLLOWUP_QUEUES = new Map(); +/** + * Share followup queues across bundled chunks so busy-session enqueue/drain + * logic observes one queue registry per process. + */ +const _g = globalThis as typeof globalThis & { + __openclaw_followup_queues__?: Map; +}; +export const FOLLOWUP_QUEUES = (_g.__openclaw_followup_queues__ ??= new Map< + string, + FollowupQueueState +>()); export function getExistingFollowupQueue(key: string): FollowupQueueState | undefined { const cleaned = key.trim();