Files
Vance Ingalls 52fd9c2c9f fix(engine,producer): close worker-encode orphan/hang/corruption gaps (re-review)
Re-review found the prior orphan-rejection fix attached to the wrong promise.

- Unhandled-rejection guard moved to source: produceDrawElementFrame attaches a
  no-op .catch to every encodeResult at creation, covering the depth-2 loop's
  orphaned in-flight frame. Removed the ineffective loop-level prev.catch.
- Per-frame encode watchdog (30s): a lost worker message no longer hangs the
  render to the protocol timeout (onerror->id=-1 only covered crashes).
- Empty-frame guard: payload-less worker success rejects instead of resolving a
  0-byte Buffer ffmpeg would write as a corrupt frame.
- Worker reuses one OffscreenCanvas across frames (was per-frame alloc).
- Close the ImageBitmap on the worker-missing reject path (GPU leak).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-14 22:58:10 -07:00
..
2026-06-13 02:04:21 -04:00
2026-06-13 02:04:21 -04:00
2026-06-13 02:04:21 -04:00