fix: Bug - Users doesn't receive dm messages
Match direct messages against every local identity alias (home id and provisioned signal-server actor ids) so recipients accept traffic addressed to their per-server presence id instead of silently dropping it. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -4,6 +4,7 @@ import {
|
||||
createGroupConversation,
|
||||
directMessageEventIncludesUser,
|
||||
directMessageSyncIncludesUser,
|
||||
directMessageConversationIncludesUser,
|
||||
createDirectCallStartedMessage,
|
||||
getDirectConversationId,
|
||||
isGroupDirectConversation,
|
||||
@@ -137,6 +138,32 @@ describe('DirectMessageService domain flow', () => {
|
||||
expect(directMessageEventIncludesUser(payload, 'charlie')).toBe(false);
|
||||
});
|
||||
|
||||
it('recognises direct-message recipients across identity aliases', () => {
|
||||
const payload = {
|
||||
message: createMessage('message-1', 'SENT', getDirectConversationId('alice', 'bob-foreign'), ['bob-foreign']),
|
||||
participants: [alice, { ...bob, userId: 'bob-foreign' }],
|
||||
sender: alice
|
||||
};
|
||||
const bobIds = new Set(['bob', 'bob-foreign']);
|
||||
|
||||
expect(directMessageEventIncludesUser(payload, bobIds)).toBe(true);
|
||||
expect(directMessageEventIncludesUser(payload, 'bob')).toBe(false);
|
||||
});
|
||||
|
||||
it('recognises conversation participants across identity aliases', () => {
|
||||
const conversation = {
|
||||
...createDirectConversation(alice, bob, 10),
|
||||
participants: ['alice', 'bob-foreign'],
|
||||
participantProfiles: {
|
||||
alice,
|
||||
'bob-foreign': { ...bob, userId: 'bob-foreign' }
|
||||
}
|
||||
};
|
||||
|
||||
expect(directMessageConversationIncludesUser(conversation, new Set(['bob', 'bob-foreign']))).toBe(true);
|
||||
expect(directMessageConversationIncludesUser(conversation, 'bob')).toBe(false);
|
||||
});
|
||||
|
||||
it('recognises only declared sync participants', () => {
|
||||
const payload = {
|
||||
conversationId: 'dm-group-test',
|
||||
|
||||
Reference in New Issue
Block a user