feat(discord): support regex wake-word patterns - #66836
Conversation
|
Thanks for the focused Discord routing change. The feature premise is present on the current PR base: No concrete correctness defect was found in the reviewed four-file diff. This is an automated hermes-sweeper review. |
e5c9a28 to
2bfefd6
Compare
SummaryTwo PRs address Discord regex wake words under mention gating. #29393 adds shared pattern helpers, leading-wake-word stripping, live-message routing, tests, and an unrelated watchdog script; #66836 implements Discord-local cached patterns across live and recovered-message routing, with configuration documentation and focused tests. Related pull requests
DuplicatesNone: the contributor assessment identifies #29393 and #66836 as competing shared-helper and Discord-local designs rather than duplicates. Suggested consolidationKeep #66836 open with a salvage path centered on its focused Discord-local implementation, recovered-message parity, documentation, and tests, consistent with the maintainer-bot keep_open verdict. For #29393, author action: rebase onto main and split out the Discord feature while removing the unrelated watchdog, preserving the current explicit-mention helper, and adding the requested documentation and config-bridge coverage; do not close either PR as a duplicate on the available evidence. Cross-PR triage: Reviewed 2 pull requests and 0 issues in this complex. Each diff was read against this issue; Assessment working set: 26 kB of PR diffs, 3 kB of issue/PR text, 2 kB of discussion (2 comments), 0 verify verdicts. verdicts reflect diff content, not PR titles. Part of an automated triage batch. |
Summary
discord.mention_patterns/DISCORD_MENTION_PATTERNSregex wake-word supportrequire_mentionwithout disabling channel gating globallyMotivation
Discord supported literal
@mentiongating and free-response channels, but unlike Slack, Telegram, and other adapters it had no configurable wake-word path. Users who want a natural prefix such ashermes statushad to either mention the bot every time or make an entire channel free-response.This adds parity while keeping the safe
require_mention: truedefault. Anchored patterns let operators accept only messages that begin with a configured bot name.Verification
main, the recovered-message regression test failed at the new pre-dispatch mention gatepytest tests/gateway/test_discord_free_response.py -q -o 'addopts='→ 62 passedpytest tests/gateway/test_discord*.py -q -o 'addopts='→ 597 passedgit diff --check