HTTP status is 200 but the player cannot open the file.
Keep the downloaded bytes and run the full decoder; retry only the same artifact delivery after the media check fails.
Hands-on recipe
Separate file-delivery recovery from generation recovery. A downloaded HTTP 200 can contain a broken video; retry the same known artifact identity in this offline fixture.
Includes executed local fixtures, scripts and receipts. These checks do not represent a video-generation service run.
node run-recipe.mjs --out ./my-run
Read the manifest for local-paid-once and /artifact/local-paid-once. The fixture exposes an intentionally forbidden /generate route solely to count accidental resubmissions; the successful path never calls it. This local name does not represent an actual paid task.
The first response is HTTP 200 but contains 17,775 bytes, half of the 35,550-byte source. Run FFmpeg with -xerror and explode error detection through the entire video decode. The actual decoder failure is retained in the negative receipt.
Fetch the exact same artifact identity a second time. The local server returns the complete original bytes. Check SHA-256 against the manifest, then fully decode twenty frames instead of accepting the network status alone.
Check exactly two downloads, zero generation requests and a closed local server. The bounded fixture has no backoff, signed-URL renewal or provider error classification; a real downloader must use its own service’s documented recovery rules.
Keep the downloaded bytes and run the full decoder; retry only the same artifact delivery after the media check fails.
Verify only the artifact-to-manifest binding before accepting it. Readability does not prove it is the expected task output.
Change the retry target back to the saved artifact URL and rerun the zero-generation assertion. Keep generation submission outside this delivery recovery loop.
The local replay proves recovery from this truncated MP4 while preserving artifact identity. It does not show a provider retry promise or a real payment, generation or signed-download execution.