From eb67ac5cbe5f7475ebda2230cd93d2d97248fcca Mon Sep 17 00:00:00 2001 From: Shakker Date: Mon, 15 Jun 2026 19:28:58 +0100 Subject: [PATCH] fix: trim whatsapp admission sender identity --- extensions/whatsapp/src/inbound/access-control.test.ts | 5 ++--- extensions/whatsapp/src/inbound/access-control.ts | 1 - extensions/whatsapp/src/inbound/admission.ts | 5 ----- extensions/whatsapp/src/inbound/message-aliases.test.ts | 2 -- .../monitor-inbox.streams-inbound-messages.test-support.ts | 1 - 5 files changed, 2 insertions(+), 12 deletions(-) diff --git a/extensions/whatsapp/src/inbound/access-control.test.ts b/extensions/whatsapp/src/inbound/access-control.test.ts index 6c652ddfb88..21a9d93fa08 100644 --- a/extensions/whatsapp/src/inbound/access-control.test.ts +++ b/extensions/whatsapp/src/inbound/access-control.test.ts @@ -187,9 +187,7 @@ describe("checkInboundAccessControl admission contract", () => { }, sender: { id: "+15550001111", - dmSenderId: "+15550001111", isSamePhone: false, - isDmSenderSamePhone: false, }, ingress: { admission: "dispatch", @@ -255,7 +253,8 @@ describe("checkInboundAccessControl admission contract", () => { groupSessionId: groupJid, }); expect(result.admission.sender.id).toBe(participantJid); - expect(result.admission.sender.dmSenderId).toBe(groupJid); + expect(result.admission.sender).not.toHaveProperty("dmSenderId"); + expect(result.admission.conversation.kind).toBe("group"); }); it("does not authorize unresolved group participant JIDs as phone allowlist entries", async () => { diff --git a/extensions/whatsapp/src/inbound/access-control.ts b/extensions/whatsapp/src/inbound/access-control.ts index eebf887c1c5..772d7128a19 100644 --- a/extensions/whatsapp/src/inbound/access-control.ts +++ b/extensions/whatsapp/src/inbound/access-control.ts @@ -191,7 +191,6 @@ export async function checkInboundAccessControl(params: { isGroup: params.group, conversationId, senderId: admissionSenderId, - dmSenderId: params.from, }), }; } diff --git a/extensions/whatsapp/src/inbound/admission.ts b/extensions/whatsapp/src/inbound/admission.ts index 083971fd6cf..a905aeb531e 100644 --- a/extensions/whatsapp/src/inbound/admission.ts +++ b/extensions/whatsapp/src/inbound/admission.ts @@ -60,9 +60,7 @@ export type WhatsAppInboundAdmission = { }; sender: { id: string; - dmSenderId: string; isSamePhone: boolean; - isDmSenderSamePhone: boolean; }; ingress: WhatsAppInboundIngressDecision; senderAccess: WhatsAppInboundSenderAccess; @@ -96,7 +94,6 @@ export function buildWhatsAppInboundAdmission(params: { isGroup: boolean; conversationId: string; senderId: string; - dmSenderId: string; }): WhatsAppInboundAdmission { return { accountId: params.policy.account.accountId, @@ -109,9 +106,7 @@ export function buildWhatsAppInboundAdmission(params: { }, sender: { id: params.senderId, - dmSenderId: params.dmSenderId, isSamePhone: params.policy.isSamePhone(params.senderId), - isDmSenderSamePhone: params.policy.isSamePhone(params.dmSenderId), }, ingress: { admission: params.access.ingress.admission, diff --git a/extensions/whatsapp/src/inbound/message-aliases.test.ts b/extensions/whatsapp/src/inbound/message-aliases.test.ts index 502e80b1a32..92411c15cef 100644 --- a/extensions/whatsapp/src/inbound/message-aliases.test.ts +++ b/extensions/whatsapp/src/inbound/message-aliases.test.ts @@ -23,9 +23,7 @@ function createAdmission(): NonNullable }, sender: { id: "+15550000002", - dmSenderId: "123@g.us", isSamePhone: false, - isDmSenderSamePhone: false, }, ingress: { admission: "dispatch", diff --git a/extensions/whatsapp/src/monitor-inbox.streams-inbound-messages.test-support.ts b/extensions/whatsapp/src/monitor-inbox.streams-inbound-messages.test-support.ts index 04ab86a6043..31710c6217d 100644 --- a/extensions/whatsapp/src/monitor-inbox.streams-inbound-messages.test-support.ts +++ b/extensions/whatsapp/src/monitor-inbox.streams-inbound-messages.test-support.ts @@ -233,7 +233,6 @@ describe("web monitor inbox", () => { }, sender: { id: "+999", - dmSenderId: "+999", }, senderAccess: { allowed: true,