From 367ded6441dd1cd2bb6c115657e9bb7c1374919f Mon Sep 17 00:00:00 2001 From: Frank Date: Tue, 18 Aug 2026 21:49:45 +0200 Subject: [PATCH] Only regenerate verify codes on broadcast, not any targeted /chat Any /chat {agent-id} {code} was previously exempted only if aimed at the code's rightful owner; sending to the wrong player still burned it. Now only an untargeted, open-chat broadcast counts as a leak - mistargeting via /chat is harmless. --- src/Game/Service/GameResponseService.php | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/Game/Service/GameResponseService.php b/src/Game/Service/GameResponseService.php index dd8fb7c..c8e8b7c 100644 --- a/src/Game/Service/GameResponseService.php +++ b/src/Game/Service/GameResponseService.php @@ -460,10 +460,9 @@ class GameResponseService continue; } - // Sending a code privately to its rightful recipient via /chat {agent-id} - // is the whole point of this puzzle - only a leak (broadcast, or sent to - // the wrong player) should regenerate it. - if ($sendTo === (int)$targetPlayerScreen) { + // Sending a code via a targeted /chat {agent-id} is fine, even to the + // wrong player - only broadcasting it in the open chat is a real leak. + if ($sendTo !== 0) { continue; }