From f30b729ca90d0be6853c57ab4935694e5e59ae56 Mon Sep 17 00:00:00 2001 From: Tom Date: Tue, 31 Mar 2026 15:25:36 -0700 Subject: [PATCH] fix: don't send self dm notifications (#706) * fix: don't send self dm notifications Signed-off-by: IAmTomahawkx * fix: test failure due to wrong assertion (#707) Signed-off-by: IAmTomahawkx * fix: RA auto import moment Signed-off-by: IAmTomahawkx --------- Signed-off-by: IAmTomahawkx --- crates/core/database/src/models/messages/model.rs | 8 ++++++-- crates/core/models/src/v0/messages.rs | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/crates/core/database/src/models/messages/model.rs b/crates/core/database/src/models/messages/model.rs index fc417d79..bacb3c53 100644 --- a/crates/core/database/src/models/messages/model.rs +++ b/crates/core/database/src/models/messages/model.rs @@ -705,7 +705,7 @@ impl Message { Some( PushNotification::from( self.clone().into_model(user, member), - Some(author), + Some(author.clone()), channel.to_owned().into(), ) .await, @@ -713,7 +713,11 @@ impl Message { self.clone(), match channel { Channel::DirectMessage { recipients, .. } - | Channel::Group { recipients, .. } => recipients.clone(), + | Channel::Group { recipients, .. } => recipients + .iter() + .filter(|uid| *uid != author.id()) + .cloned() + .collect(), Channel::TextChannel { .. } => { self.mentions.clone().unwrap_or_default() } diff --git a/crates/core/models/src/v0/messages.rs b/crates/core/models/src/v0/messages.rs index e1183175..2b03d211 100644 --- a/crates/core/models/src/v0/messages.rs +++ b/crates/core/models/src/v0/messages.rs @@ -391,6 +391,7 @@ auto_derived!( ); /// Message Author Abstraction +#[derive(Clone)] pub enum MessageAuthor<'a> { User(&'a User), Webhook(&'a Webhook),