From 72735c2497063e371acbbab41d0ed18508902c18 Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Sun, 1 Mar 2026 11:38:06 -0500 Subject: [PATCH] fix: address review feedback for proactive reply logic - Parse display names with ': ' split to handle colons in names - Reset cooldown to half instead of subtract-3 to reduce LLM call frequency - Remove redundant message.guild check Co-Authored-By: Claude Opus 4.6 --- cogs/chat.py | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/cogs/chat.py b/cogs/chat.py index 5929706..12eb57f 100644 --- a/cogs/chat.py +++ b/cogs/chat.py @@ -250,8 +250,8 @@ class ChatCog(commands.Cog): memory_parts = [] seen_users = set() for line in recent_for_check: - name = line.split(":")[0] - if name not in seen_users and message.guild: + name = line.split(": ", 1)[0] + if name not in seen_users: seen_users.add(name) member = discord.utils.find( lambda m, n=name: m.display_name == n, @@ -274,10 +274,8 @@ class ChatCog(commands.Cog): should_reply = True is_proactive = True else: - # Not relevant — partially reset cooldown so we check again sooner - self._messages_since_reply[ch_id] = max( - 0, self._messages_since_reply[ch_id] - 3 - ) + # Not relevant — reset to half cooldown so we wait a bit before rechecking + self._messages_since_reply[ch_id] = cooldown // 2 if not should_reply: return