Relationships
#3988 serve: dispatch to an idle worker waits for its worker_busy write on the shared gateway transition tail
Opened by zack · 10/26/2026
Follow-up from swamp-club#3984 (fix direction 4). dispatch() awaits a durable worker_busy write on the gateway transition tail before sending the dispatch, so any slow gateway transition delays work for idle workers. In the swamp-club#3984 reproduction a one-step workflow placed on an idle existing worker went from 0.74 s to 30.4 s during a burst of new-worker enrollments, waiting 29.7 s at queue depth 26, while step-lease operations on the separate dispatch tail waited 0 ms. Proposal: decouple the busy-status write from dispatch delivery (send the dispatch once the in-memory pool reflects busy, and record the durable status without blocking it), or give status writes a path that does not queue behind enrollment work. Must keep: swamp worker list consistency and capacity accounting.
Open
No activity in this phase yet.
Sign in to post a ripple.