From 7f0f924e228af24beca450adfce0862893dd8200 Mon Sep 17 00:00:00 2001 From: ralfisalhon Date: Tue, 17 Mar 2026 00:12:09 +0000 Subject: [PATCH] Apply AI timeout suggestion --- src/core/worker/WorkerClient.ts | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/src/core/worker/WorkerClient.ts b/src/core/worker/WorkerClient.ts index 440954e84..199f3b2f8 100644 --- a/src/core/worker/WorkerClient.ts +++ b/src/core/worker/WorkerClient.ts @@ -278,15 +278,27 @@ export class WorkerClient { const messageId = generateID(); + const timeout = setTimeout(() => { + this.messageHandlers.delete(messageId); + reject(new Error("attack_cluster_positions request timed out")); + }, 5000); + this.messageHandlers.set(messageId, (message) => { - if (message.type === "attack_cluster_positions_result") { - resolve( - message.attacks.map((a) => ({ - id: a.id, - clusters: a.clusters.map((c) => new Cell(c.x, c.y)), - })), + clearTimeout(timeout); + if (message.type !== "attack_cluster_positions_result") { + reject( + new Error( + `Unexpected message type for attackClusterPositions: ${message.type}`, + ), ); + return; } + resolve( + message.attacks.map((a) => ({ + id: a.id, + clusters: a.clusters.map((c) => new Cell(c.x, c.y)), + })), + ); }); this.worker.postMessage({