From 2239592f6d90a47183503413bdb15147f71f50e2 Mon Sep 17 00:00:00 2001 From: Sawyer Cutler Date: Wed, 4 Nov 2026 18:21:36 -0800 Subject: [PATCH] fix(hub): withdraw an outdated coordinator's approval on the open page Approval parks leave the correlation id field empty, so the once-per-park check compared nothing to nothing and never replaced the coordinator; the question stayed up until the regular pass and an answer landed on the old coordinator. Key the check on the signal name every park carries. --- apps/hub/src/mail/conversation-routes.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/hub/src/mail/conversation-routes.ts b/apps/hub/src/mail/conversation-routes.ts index 1691b733..f62fcd55 100644 --- a/apps/hub/src/mail/conversation-routes.ts +++ b/apps/hub/src/mail/conversation-routes.ts @@ -220,9 +220,9 @@ export function createConversationRoutes( if ( asking !== undefined && upgrade !== undefined && - checked.get(current.runId) !== asking["correlationId"] + checked.get(current.runId) !== asking["signalName"] ) { - checked.set(current.runId, asking["correlationId"]); + checked.set(current.runId, asking["signalName"]); // The pass would leave the question up to its interval; replacing the coordinator // now withdraws it before the person decides it. const withdraw = async () => {