The batched event-send queue now tracks 'owed' events and can let some events through while holding others back
The generic queue Claude Code uses to batch and send events was reworked. takeBatch now takes an explicit count of how many events are sendable, tracks an owed counter for events that were pulled ahead of a hold, and supports a holdSpec.passes setting that lets certain events through even while a hold is otherwise in effect. The send and onDrained callbacks now also receive a rule field explaining why events were held back.
This is internal bookkeeping for how events get batched and released; it makes the hold-and-flush logic more precise about which events are let through and why, without changing what data ends up being sent.