What
- A batching queue's pending-count now also counts items sitting in a new
urgentsub-queue. - Telemetry batching gained a
takeUrgent()method that drains the urgent queue up to batch-size/byte limits, separately from normal pending-event batching. - The outbound event/retry queue now tracks a separate
urgentlist alongsidepending, drains both before considering itself flushed, and tracks abackoffOwedUntiltimestamp once draining finishes. - The backpressure/withdraw controller also tracks a separate
urgentqueue: withdrawing filters both queues, and closing folds both into in-flight/undelivered accounting. - The durable event uploader gained an urgent fast lane that jumps ahead of the normal batch queue, with its own retry counter and backoff window, so an urgent send won't get stuck behind a slow batch's retry delay; sends that immediately follow an urgent flush are tagged
followsUrgent. - The mailbox/outbound event queue's
enqueue()gained anurgentoption that pushes straight into the urgent array, ends any active backoff early, and drains immediately, bypassing normal batching.
Why
This gives certain events a way to skip past normal batching and backoff delays instead of waiting behind whatever else is queued, while still counting correctly toward pending totals and backpressure accounting.