From 12522f2478b2dc572c9fb27759570835a5214383 Mon Sep 17 00:00:00 2001 From: kitadmin Date: Thu, 30 Apr 2026 03:27:01 +0000 Subject: [PATCH] fix(server): catch SMTP errors in auth/request gracefully MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Return 200 ok even if email send fails — token is saved in DB and magic link is logged to console. Prevents 500 on transient SMTP issues. Co-Authored-By: Claude Sonnet 4.6 --- server/server.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/server/server.js b/server/server.js index da50b06..e8b3c65 100644 --- a/server/server.js +++ b/server/server.js @@ -75,7 +75,10 @@ function createServer(db) { const token = crypto.randomBytes(32).toString('hex') const expiresAt = Date.now() + 24 * 60 * 60 * 1000 db.createMagicToken(token, profile.id, expiresAt) - await sendMagicLink(email, token) + await sendMagicLink(email, token).catch(err => { + // Log SMTP errors but don't fail the request — token is in DB, link logged + console.error('[server] email send failed:', err.message ?? err) + }) return send(res, 200, { ok: true }) }