Quarantine corrupt and non-retryable segments in sync service
Zero-byte segments (from GStreamer crashes) are detected before upload
and renamed to .failed. HTTP 400 (CLIENT) errors trigger quarantine
without incrementing the circuit breaker failure counter. Quarantined
.failed dirs are cleaned up on the same retention schedule as synced
segments.
Fixes a 3+ day infinite error loop where a single corrupt segment
would trip the circuit breaker, recover via probe, and immediately
re-fail.