From dd0d18b0f538a0ae1f39c8a64b640a2ddbbd4138 Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Tue, 24 Feb 2026 14:47:03 -0500 Subject: [PATCH] Disable topic drift monitoring in general channel Add ignored_channels config to topic_drift section, supporting channel names or IDs. General channel excluded from off-topic warnings while still receiving full moderation. Co-Authored-By: Claude Opus 4.6 --- cogs/sentiment.py | 5 +++++ config.yaml | 1 + 2 files changed, 6 insertions(+) diff --git a/cogs/sentiment.py b/cogs/sentiment.py index b910fef..944daee 100644 --- a/cogs/sentiment.py +++ b/cogs/sentiment.py @@ -430,6 +430,11 @@ class SentimentCog(commands.Cog): if not config.get("enabled", True): return + # Skip channels excluded from topic drift monitoring + ignored = config.get("ignored_channels", []) + if message.channel.id in ignored or getattr(message.channel, "name", "") in ignored: + return + # Check if we're in dry-run mode — still track but don't act dry_run = self.bot.config.get("monitoring", {}).get("dry_run", False) if dry_run: diff --git a/config.yaml b/config.yaml index 393e7de..d722819 100644 --- a/config.yaml +++ b/config.yaml @@ -28,6 +28,7 @@ game_channels: topic_drift: enabled: true + ignored_channels: ["general"] # Channel names or IDs to skip topic drift monitoring remind_cooldown_minutes: 10 # Don't remind same user more than once per this window escalation_count: 3 # After this many reminds, DM the server owner reset_minutes: 60 # Reset off-topic count after this much on-topic behavior