From fa8fa7fe231e4c8141bc84719d9ff88414dca39e Mon Sep 17 00:00:00 2001 From: whekin Date: Mon, 9 Mar 2026 07:00:02 +0400 Subject: [PATCH] fix(bot): normalize anonymous feedback rate limit timestamps --- .../adapters-db/src/anonymous-feedback-repository.ts | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/adapters-db/src/anonymous-feedback-repository.ts b/packages/adapters-db/src/anonymous-feedback-repository.ts index 8b7f73e..c9385bc 100644 --- a/packages/adapters-db/src/anonymous-feedback-repository.ts +++ b/packages/adapters-db/src/anonymous-feedback-repository.ts @@ -54,7 +54,7 @@ export function createDbAnonymousFeedbackRepository( const rows = await db .select({ acceptedCountSince: sql`count(*) filter (where ${schema.anonymousMessages.createdAt} >= ${acceptedSinceIso}::timestamptz)`, - lastAcceptedAt: sql`max(${schema.anonymousMessages.createdAt})` + lastAcceptedAt: sql`max(${schema.anonymousMessages.createdAt})` }) .from(schema.anonymousMessages) .where( @@ -65,9 +65,16 @@ export function createDbAnonymousFeedbackRepository( ) ) + const lastAcceptedAtRaw = rows[0]?.lastAcceptedAt ?? null + return { acceptedCountSince: Number(rows[0]?.acceptedCountSince ?? '0'), - lastAcceptedAt: rows[0]?.lastAcceptedAt ?? null + lastAcceptedAt: + lastAcceptedAtRaw instanceof Date + ? lastAcceptedAtRaw + : typeof lastAcceptedAtRaw === 'string' + ? new Date(lastAcceptedAtRaw) + : null } },