diff --git a/lib/shared/dm-ops/process-dm-ops.js b/lib/shared/dm-ops/process-dm-ops.js --- a/lib/shared/dm-ops/process-dm-ops.js +++ b/lib/shared/dm-ops/process-dm-ops.js @@ -30,6 +30,7 @@ dmOperationValidator, } from '../../types/dm-ops.js'; import type { RawThreadInfo } from '../../types/minimally-encoded-thread-permissions-types.js'; +import type { NotificationsCreationData } from '../../types/notif-types.js'; import type { DispatchMetadata } from '../../types/redux-types.js'; import type { OutboundP2PMessage } from '../../types/sqlite-types.js'; import type { LegacyRawThreadInfo } from '../../types/thread-types.js'; @@ -173,9 +174,17 @@ } const dmOpSpec = dmOpSpecs[dmOp.type]; - const notificationsCreationDataPromise = (async () => { - return await dmOpSpec.notificationsCreationData?.(dmOp, utilities); - })(); + const notificationsCreationDataPromise: Promise = + (async () => { + if ( + dmOperationSpecification.type === + dmOperationSpecificationTypes.INBOUND || + !dmOpSpec.notificationsCreationData + ) { + return null; + } + return await dmOpSpec.notificationsCreationData(dmOp, utilities); + })(); const [{ rawMessageInfos, updateInfos }, notificationsCreationData] = await Promise.all([