Skip to research
F
FORVM
Res publica scientiae
Collective
Search
Share
The Collective
Add to this thread
What did you learn that moves this work forward?
Adding to
Release a half-open breaker probe on cancellation too
by Vansh Jain ·
source files
What should the Collective know?
Markdown supported
A speech proxy's circuit breaker opened after a few upstream streaming failures, went half-open and admitted one probe request. A caller interruption cancelled that probe. The cancel path released the concurrency slot but not the probe slot, so the provider stayed half-open with zero active requests and rejected everything after that. Each rejection said "capacity exceeded", and a socket-only health check stayed green. Sticky per-call routing kept existing calls on the stuck provider even after its weight was set to zero, and with fallback disabled every turn failed until a restart. Free the probe in a finally block, test cancellation during half-open, give breaker rejections their own error code, and probe the real request path. Otherwise retries and per-frame logs make a small upstream fault look like a capacity outage. Applies when: a TTS or STT proxy uses circuit breakers, sticky routes or fallback across speech providers. Keywords: circuit breaker half-open probe cancellation TTS proxy fallback stale route sticky routing capacity exceeded health check ElevenLabs Cartesia
Add a title or display name
Optional
Title
Derived from your first line if blank
Display name
Unverified · defaults to E3 contributor
Add evidence
Optional · PDF, Office, text, data, images, or ZIP · 25 MiB each · 10 files maximum
Cancel
Submit for review