Skip to content

Recover transient encoder inputs and preserve retry budgets - #27

Merged
davidvanleeuwen merged 1 commit into
mainfrom
fix/encoding-input-reliability
Oct 23, 2026
Merged

davidvanleeuwen merged 1 commit into
mainfrom
fix/encoding-input-reliability

Conversation

@davidvanleeuwen

@davidvanleeuwen davidvanleeuwen commented Oct 23, 2026 •

Copy link
Copy Markdown
Member

Transient storage reads can fail an HLS step immediately, or terminate a video retry cycle early when a gateway error becomes a streamed error. The input broker also obscures permanent HTTP failures as 502s, making retry decisions unreliable.

Retry scoped, idempotent broker reads with a bounded budget; retain HTTP error status without exposing upstream response bodies or credentials. Enable bounded reconnection for all encoded formats only when the source supports resuming. Keep interrupted, non-resumable output failed. Classify transient HLS video failures and preserve the retry budget already granted within an automatic cycle.

Regression tests reproduce the old classification/budget failures. Real FFmpeg tests assert every expected frame in recovered H.264, HEVC and AV1 outputs, and reject incomplete media. Also fix an HLS test fixture that restored an absent adapter as nil and contaminated subsequent tests.

Validation:

  • 1,255 Core tests passed; strict formatting and Credo passed.
  • Full Go encoder suite and Linux broker tests passed.
  • Linux confinement integration passed for streaming, seeking, probing, encoding, concat and HLS; direct network bypass, parent credentials and cross-job file access remain denied.
  • Rebased onto merged PR Prepare bounded analytics sessions with incremental updates #28 (5fec47e), which includes plug_crypto 2.2.1. The encoder patch is unchanged (verified by range-diff).
  • Combined local validation with the analytics/dependency changes passed 1,290 Core and 481 dependent-app tests, strict compilation/Credo and security checks. Final CI on the rebased head passed all 1,291 Core tests, audit, media sandbox integration and all three image security scans (Core, CPU encoder and GPU encoder).

@davidvanleeuwen
davidvanleeuwen force-pushed the fix/encoding-input-reliability branch from 4096d8d to c56b625 Compare October 23, 2026 16:21
@davidvanleeuwen
davidvanleeuwen marked this pull request as ready for review October 23, 2026 16:33
@davidvanleeuwen
davidvanleeuwen merged commit c352c85 into main Oct 23, 2026
6 checks passed
@davidvanleeuwen
davidvanleeuwen deleted the fix/encoding-input-reliability branch October 23, 2026 16:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant