fix(discord): harden voice DAVE receive reliability (#25861)

Reimplements and consolidates related work:
- #24339 stale disconnect/destroyed session guards
- #25312 voice listener cleanup on stop
- #23036 restore @snazzah/davey runtime dependency

Adds Discord voice DAVE config passthrough, repeated decrypt failure
rejoin recovery, regression tests, docs, and changelog updates.

Co-authored-by: Frank Yang <frank.ekn@gmail.com>
Co-authored-by: Do Cao Hieu <admin@docaohieu.com>
This commit is contained in:
Peter Steinberger
2026-02-25 00:19:36 +00:00
parent 1839ba8ccb
commit 9cd50c51b0
11 changed files with 555 additions and 12 deletions

View File

@@ -1364,6 +1364,10 @@ export const FIELD_HELP: Record<string, string> = {
"Enable Discord voice channel conversations (default: true). Omit channels.discord.voice to keep voice support disabled for the account.",
"channels.discord.voice.autoJoin":
"Voice channels to auto-join on startup (list of guildId/channelId entries).",
"channels.discord.voice.daveEncryption":
"Toggle DAVE end-to-end encryption for Discord voice joins (default: true in @discordjs/voice; Discord may require this).",
"channels.discord.voice.decryptionFailureTolerance":
"Consecutive decrypt failures before DAVE attempts session recovery (passed to @discordjs/voice; default: 24).",
"channels.discord.voice.tts":
"Optional TTS overrides for Discord voice playback (merged with messages.tts).",
"channels.discord.intents.presence":