From 602e1ed75b467ed195c7547bb0b2f4e2df8e3962 Mon Sep 17 00:00:00 2001 From: Hammer Date: Fri, 30 Jan 2026 04:48:22 +0000 Subject: [PATCH] fix: force db:push with yes pipe + add error logging to summaries --- backend/Dockerfile | 2 +- backend/src/routes/summaries.ts | 45 ++++++++++++++++++--------------- 2 files changed, 26 insertions(+), 21 deletions(-) diff --git a/backend/Dockerfile b/backend/Dockerfile index b4f9fdd..1e7cf19 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -10,4 +10,4 @@ COPY . . # Generate migrations and run EXPOSE 3100 -CMD ["sh", "-c", "bun run db:push && bun run start"] +CMD ["sh", "-c", "echo 'Running db:push...' && yes | bun run db:push 2>&1 && echo 'db:push done' && bun run start"] diff --git a/backend/src/routes/summaries.ts b/backend/src/routes/summaries.ts index 7559105..93247a3 100644 --- a/backend/src/routes/summaries.ts +++ b/backend/src/routes/summaries.ts @@ -1,4 +1,4 @@ -import { Elysia, t } from "elysia"; +import { Elysia } from "elysia"; import { db } from "../db"; import { dailySummaries } from "../db/schema"; import { desc, eq, sql } from "drizzle-orm"; @@ -42,27 +42,32 @@ export const summaryRoutes = new Elysia({ prefix: "/api/summaries" }) const limit = Math.min(Number(query.limit) || 50, 200); const offset = (page - 1) * limit; - const [items, countResult] = await Promise.all([ - db - .select() - .from(dailySummaries) - .orderBy(desc(dailySummaries.date)) - .limit(limit) - .offset(offset), - db - .select({ count: sql`count(*)` }) - .from(dailySummaries), - ]); + try { + const [items, countResult] = await Promise.all([ + db + .select() + .from(dailySummaries) + .orderBy(desc(dailySummaries.date)) + .limit(limit) + .offset(offset), + db + .select({ count: sql`count(*)` }) + .from(dailySummaries), + ]); - const total = Number(countResult[0]?.count ?? 0); + const total = Number(countResult[0]?.count ?? 0); - return { - items, - total, - page, - limit, - totalPages: Math.ceil(total / limit), - }; + return { + items, + total, + page, + limit, + totalPages: Math.ceil(total / limit), + }; + } catch (e: any) { + console.error("Error fetching summaries:", e?.message || e); + throw e; + } }) // GET /api/summaries/dates — list all dates that have summaries (for calendar)