fix CPU regression: coalesce cursor flushes instead of FIFO queuing
the host_ops MPSC queue was processing every cursor flush (~348/sec at
1,391 hosts) as an individual DB write. when the queue filled, Evented
producers busy-spun — causing 5.4 cores sustained CPU.
split into two mechanisms:
- CursorMap: subscribers atomically store latest seq (one store, no lock).
worker thread sweeps every 5s, batch-flushes only changed cursors.
- HostOpsQueue: kept for rare ops only (failures, status updates).
also adds slot reuse via free list — unregister on subscriber exit
prevents slot exhaustion from host churn.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>