Pattern
Stale State in Closures
stale-state-capture
State updates in Zustand (and similar stores) get missed because callbacks/handlers capture earlier values, middleware isn’t intercepting set() to derive fields, or setters reference wrong state, so UI/logic observes stale or incomplete state after await.