diff --git a/CHANGELOG.md b/CHANGELOG.md index e4866eed529..9892595a75f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -29,7 +29,9 @@ Docs: https://docs.openclaw.ai - Telegram/replies: preserve explicit topic targets when `replyTo` is present while still inheriting the current topic for same-chat replies without an explicit topic. (#59634) Thanks @dashhuang. - Telegram/native commands: clean up metadata-driven progress placeholders when replies fall back, edits fail, or local exec approval prompts are suppressed. (#59300) Thanks @jalehman. - Media/request overrides: resolve shared and capability-filtered media request SecretRefs correctly and expose media transport override fields to schema-driven config consumers. (#59848) Thanks @vincentkoc. +<<<<<<< HEAD - Providers/request overrides: stop advertising unsupported proxy and TLS transport settings on `models.providers.*.request`, and fail closed if unvalidated config tries to route LLM model-provider traffic through dead transport fields. (#59682) Thanks @vincentkoc. +- Discord/mentions: treat `@everyone` and `@here` as valid mention-gate triggers in guild preflight so mention-required bots still respond to those broadcasts. (#60343) Thanks @geekhuashan. - Matrix: allow secret-storage recreation during automatic repair bootstrap so clients that lose their recovery key can recover and persist new cross-signing keys. (#59846) Thanks @al3mart. - Matrix/crypto persistence: capture and write the IndexedDB snapshot while holding the snapshot file lock so concurrent gateway and CLI persists cannot overwrite newer crypto state. (#59851) Thanks @al3mart. - Ollama/auth: prefer real cloud auth over local marker during model auth resolution so cloud-backed Ollama auth does not get shadowed by stale local-only markers. diff --git a/extensions/discord/src/monitor/message-handler.preflight.test.ts b/extensions/discord/src/monitor/message-handler.preflight.test.ts index 171584ab046..67c2ab3e96c 100644 --- a/extensions/discord/src/monitor/message-handler.preflight.test.ts +++ b/extensions/discord/src/monitor/message-handler.preflight.test.ts @@ -529,7 +529,7 @@ describe("preflightDiscordMessage", () => { expect(result).not.toBeNull(); }); - it("allows guild messages that mention @everyone", async () => { + it("treats @everyone as a mention when requireMention is true", async () => { const channelId = "channel-everyone-mention"; const guildId = "guild-everyone-mention"; const message = createDiscordMessage({ @@ -548,10 +548,24 @@ describe("preflightDiscordMessage", () => { channelId, guildId, message, - discordConfig: {} as DiscordConfig, + discordConfig: { + botId: "openclaw-bot", + } as DiscordConfig, + guildEntries: { + [guildId]: { + channels: { + [channelId]: { + allow: true, + requireMention: true, + }, + }, + }, + }, }); expect(result).not.toBeNull(); + expect(result?.shouldRequireMention).toBe(true); + expect(result?.wasMentioned).toBe(true); }); it("accepts allowlisted guild messages when guild object is missing", async () => {