Drag, drop, and the optimistic update race
My usual React Query reflex — just invalidate to get the real deal — fell apart the moment I added drag-and-drop to a kanban board. Here's what concurrent optimistic updates actually require, and where each concern belongs.