From 6fb547e8ce2ffb30d5e86ae09fd8ec009d0f2c8d Mon Sep 17 00:00:00 2001 From: timmy Date: Thu, 20 Aug 2026 05:48:08 +0000 Subject: [PATCH] fix: preserve synchronous Today reconciliation --- frontend/dashboard.js | 8 ++++---- tests/test_start_day_reminders.py | 3 ++- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/frontend/dashboard.js b/frontend/dashboard.js index 5e72a6f..6b297f7 100644 --- a/frontend/dashboard.js +++ b/frontend/dashboard.js @@ -476,15 +476,15 @@ refreshMyWorkView(); warmTodayOffline(); }, - onRemotePlan: async plan => { + onRemotePlan: plan => { if (!planningOwnerLogin) return; latestTodayPlan = plan; const startDayLaunch = window.location.hash === '#/my-work/start-day'; - await promoteTomorrowIfDue(plan); - if (startDayLaunch) { + promoteTomorrowIfDue(plan).finally(() => { + if (!startDayLaunch) return; window.history.replaceState({}, '', '#/my-work/today'); openMobileStartDay(); - } + }); todayWork.replacePlanning({ capacity_minutes: plan.capacity_minutes ?? null, estimates: plan.estimates || {}, diff --git a/tests/test_start_day_reminders.py b/tests/test_start_day_reminders.py index d002f4c..b127467 100644 --- a/tests/test_start_day_reminders.py +++ b/tests/test_start_day_reminders.py @@ -144,5 +144,6 @@ def test_mobile_settings_and_launch_route_wire_start_day_into_existing_promotion assert "startDayControl:qs('#push-start-day')" in dashboard assert "startDayHour:qs('#push-start-day-hour')" in dashboard assert "window.location.hash === '#/my-work/start-day'" in dashboard - assert "await promoteTomorrowIfDue(plan)" in dashboard + assert "promoteTomorrowIfDue(plan).finally(() =>" in dashboard + assert "onRemotePlan: async plan =>" not in dashboard assert "openMobileStartDay()" in dashboard