PASS full transfer SHA/content matches
PASS Range + If-Range resume matches full hash
PASS ignored range resets file instead of appending
PASS incorrect Content-Range rejected
PASS bad range preserves partial bytes
PASS changed validator rejected
PASS known oversized response rejected before write
PASS oversized transfer consumes no payload storage
PASS unknown-size transfer stops at cap
PASS stream never exceeds cap
PASS metadata size mismatch rejected
PASS HTML error document rejected
PASS 403 is reported
PASS empty transfer is not successful
PASS pause preserves resumable state
PASS partial file retained
PASS pause/resume full hash matches
PASS no validator safely restarts
PASS completed partial recovered through validated 416
PASS Emby token never forwarded to different origin
PASS truncated response rejected
PASS upstream error redirect is reported without trying another route
PASS UTF-8 upstream reason is readable in the task error
RESULT: 23 checks passed
PASS TLS fixture certificate is actually expired
PASS untrusted TLS rejected and exact host/fingerprint captured
PASS wrong certificate pin rejected
PASS explicit host and leaf pin allows expired test certificate
PASS pin not inherited by another host
PASS hostname mismatch still rejected even with correct pin
PASS clearing pins restores standard TLS verification
PASS explicit media compatibility option accepts invalid certificate and hostname
PASS media compatibility option never changes strict API TLS defaults
RESULT: 9 TLS checks passed
PASS playable first block without complete download
PASS seek to uncached tail fetches exact bytes
PASS sparse logical length is never mistaken for completion
PASS cached initial bytes correct
PASS cached reads never redownload
PASS durable sparse index survives process recreation
PASS cached portion readable without network
PASS uncached offline read fails without discarding cache
PASS changed source validator cannot mix versions
PASS failed validator does not advance progress
PASS concurrent readers receive same correct block
PASS concurrent readers share one upstream fetch
PASS background pause keeps valid sparse blocks
PASS proxy HEAD exposes correct total length
PASS proxy Range crosses block boundary correctly
PASS proxy suffix range works for tail indexes
PASS proxy rejects out-of-range seek
PASS proxy rejects unsupported multiple ranges
PASS local playback URL is capability protected
PASS background completion produces exact complete original file
PASS completed file no longer depends on sparse index
PASS completed file plays fully offline after reopening
PASS wrong range response rejected
PASS wrong range consumes no payload cache storage
PASS truncated block never committed
PASS truncated block leaves no valid-bit marker
PASS server ignoring Range cannot corrupt cache
PASS unversioned source must use full-download fallback
PASS known oversized source rejected before request
PASS v1 partial migrates without redownloading verified whole blocks
PASS migrated partial finishes with exact original bytes
PASS proxy cache miss reports HTTP 503 before sending success
RESULT: 32 range-cache checks passed
