From 9f3769207929f9f960f89f622ec9df204a8f7f32 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 8 Jan 2026 03:46:26 +0000 Subject: [PATCH] Fix Prisma client initialization to use SQLite adapter in production/dev Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com> --- frontends/nextjs/src/lib/config/prisma.ts | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/frontends/nextjs/src/lib/config/prisma.ts b/frontends/nextjs/src/lib/config/prisma.ts index fa5cba197..c761dbf05 100644 --- a/frontends/nextjs/src/lib/config/prisma.ts +++ b/frontends/nextjs/src/lib/config/prisma.ts @@ -45,13 +45,23 @@ const createIntegrationPrisma = (): PrismaClient => { return new PrismaClient({ adapter }) } +const createProductionPrisma = (): PrismaClient => { + // Use the database file from env or default location + const dbPath = process.env.DATABASE_URL?.replace('file:', '') || '../../prisma/prisma/dev.db' + const db = new Database(dbPath) + // eslint-disable-next-line @typescript-eslint/no-unsafe-argument + const adapter = new PrismaBetterSqlite3(db) + return new PrismaClient({ + adapter, + log: process.env.NODE_ENV === 'development' ? ['error', 'warn'] : ['error'], + }) +} + export const prisma = globalForPrisma.prisma ?? (isTestEnv ? (isIntegrationTest ? createIntegrationPrisma() : createMockPrisma()) - : new PrismaClient({ - log: process.env.NODE_ENV === 'development' ? ['error', 'warn'] : ['error'], - })) + : createProductionPrisma()) if (process.env.NODE_ENV !== 'production' && (!isTestEnv || isIntegrationTest)) { globalForPrisma.prisma = prisma