From 2710f354a9b0cb83719544687dc6eebedd7d971a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20Guti=C3=A9rrez?= <35082514+alezmad@users.noreply.github.com> Date: Thu, 9 Apr 2026 17:09:32 +0100 Subject: [PATCH] fix(broker): correct libsodium import in email connect callback Dynamic import returns module wrapper, need .default.ready then .default for the actual sodium functions. Co-Authored-By: Claude Opus 4.6 (1M context) --- apps/broker/src/index.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/broker/src/index.ts b/apps/broker/src/index.ts index c43578c..51fcdd8 100644 --- a/apps/broker/src/index.ts +++ b/apps/broker/src/index.ts @@ -4180,8 +4180,9 @@ function main(): void { const existingMembers = Array.from(meshIds).map(meshId => ({ meshId })); // For each mesh, create a new bridge member with a fresh keypair - const sodium = await import("libsodium-wrappers"); - await sodium.ready; + const sodiumMod = await import("libsodium-wrappers"); + await sodiumMod.default.ready; + const sodium = sodiumMod.default; const results = []; for (const em of existingMembers) { const kp = sodium.crypto_sign_keypair();