From 8c8f1a08321e0cf4423f366b9a2afa4953c03629 Mon Sep 17 00:00:00 2001 From: hobostay Date: Thu, 12 Mar 2026 11:56:33 +0800 Subject: [PATCH] fix: use ?? instead of || in localeCompare fallback localeCompare returns 0, -1, or 1, not a boolean. Using || would fall through to the id comparison even when dates were different. Changed to ?? for correct short-circuit behavior. --- apps/web/src/session-logic.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/web/src/session-logic.ts b/apps/web/src/session-logic.ts index aa8f3ffc3..9c1f43dbf 100644 --- a/apps/web/src/session-logic.ts +++ b/apps/web/src/session-logic.ts @@ -373,7 +373,7 @@ export function findLatestProposedPlan( .filter((proposedPlan) => proposedPlan.turnId === latestTurnId) .toSorted( (left, right) => - left.updatedAt.localeCompare(right.updatedAt) || left.id.localeCompare(right.id), + left.updatedAt.localeCompare(right.updatedAt) ?? left.id.localeCompare(right.id), ) .at(-1); if (matchingTurnPlan) { @@ -390,7 +390,7 @@ export function findLatestProposedPlan( const latestPlan = [...proposedPlans] .toSorted( (left, right) => - left.updatedAt.localeCompare(right.updatedAt) || left.id.localeCompare(right.id), + left.updatedAt.localeCompare(right.updatedAt) ?? left.id.localeCompare(right.id), ) .at(-1); if (!latestPlan) {