mirror of
https://github.com/openclaw/openclaw.git
synced 2026-04-12 09:41:11 +00:00
After a SIGUSR1 in-process restart following an npm upgrade from v2026.4.2 to v2026.4.5, the globalThis singleton created by the old code version lacks the activeTaskWaiters field added in v2026.4.5. resolveGlobalSingleton returns the stale object as-is, causing notifyActiveTaskWaiters() to call Array.from(undefined) and crash the gateway in a loop. Add a schema migration step in getQueueState() that patches the missing field on legacy singleton objects. Add a regression test that plants a v2026.4.2-shaped state object and verifies resetAllLanes() and waitForActiveTasks() succeed without throwing. Fixes #61905