From fc7cc972e6171896ef4e648f50951902a5b478fb Mon Sep 17 00:00:00 2001 From: Solstice Date: Tue, 9 Jun 2026 01:14:04 -0700 Subject: fix: resolve final deadlock and startup sync gap --- src/hooks/useTimerEvents.ts | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) (limited to 'src/hooks/useTimerEvents.ts') diff --git a/src/hooks/useTimerEvents.ts b/src/hooks/useTimerEvents.ts index a0d5154..2142273 100644 --- a/src/hooks/useTimerEvents.ts +++ b/src/hooks/useTimerEvents.ts @@ -29,16 +29,6 @@ export function useTimerEvents( let unlisteners: Array<() => void> = []; async function setup() { - // Bootstrap initial state from backend - try { - await syncFromBackend(); - if (cancelled) return; - } catch (e) { - console.error('Failed to get timer status:', e); - } - - if (cancelled) return; - // Register all listeners atomically try { const [unlistenTick, unlistenCompleted, unlistenPhaseChanged] = await Promise.all([ @@ -75,6 +65,12 @@ export function useTimerEvents( } unlisteners = [unlistenTick, unlistenCompleted, unlistenPhaseChanged]; + + try { + await syncFromBackend(); + } catch (e) { + console.error('Failed to get timer status:', e); + } } catch (e) { console.error('Failed to register timer listeners:', e); } -- cgit v1.3-2-g0d8e