From 4cca1b873d7588a3d1efd5cc3857003e4d0f533d Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Tue, 28 Apr 2026 05:24:58 +0000 Subject: [PATCH] Fix disabled auth session extraction Co-authored-by: Vikhyath Mondreti --- apps/sim/lib/auth/session-response.test.ts | 5 +++++ apps/sim/lib/auth/session-response.ts | 18 +++++++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/apps/sim/lib/auth/session-response.test.ts b/apps/sim/lib/auth/session-response.test.ts index 14a68471ee..030431c7f3 100644 --- a/apps/sim/lib/auth/session-response.test.ts +++ b/apps/sim/lib/auth/session-response.test.ts @@ -19,6 +19,11 @@ describe('extractSessionDataFromAuthClientResult', () => { expect(extractSessionDataFromAuthClientResult({ data: session })).toEqual(session) }) + it('unwraps disabled-auth get-session responses wrapped by the auth client', () => { + const session = { user: { id: 'u1' }, session: { id: 's1' } } + expect(extractSessionDataFromAuthClientResult({ data: { data: session } })).toEqual(session) + }) + it('falls back to raw session payload shape', () => { const raw = { user: { id: 'u1' }, session: { id: 's1' } } expect(extractSessionDataFromAuthClientResult(raw)).toEqual(raw) diff --git a/apps/sim/lib/auth/session-response.ts b/apps/sim/lib/auth/session-response.ts index 262cc9a1bc..7e0a03afd6 100644 --- a/apps/sim/lib/auth/session-response.ts +++ b/apps/sim/lib/auth/session-response.ts @@ -7,7 +7,23 @@ export function extractSessionDataFromAuthClientResult(result: unknown): unknown // Expected shape from better-auth client: { data: } if ('data' in record) { - return (record as { data?: unknown }).data ?? null + const data = (record as { data?: unknown }).data + + if (!data || typeof data !== 'object') { + return null + } + + const dataRecord = data as Record + + if ('user' in dataRecord) { + return data + } + + if ('data' in dataRecord) { + return dataRecord.data ?? null + } + + return data } // Fallback for raw session payloads: { user, session }