mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-09-01 19:42:03 +00:00
Moving sharp and onnxruntime-node to optionalDependencies (in the earlier capture/native-module hardening) regressed `remove-background` from ~7% to ~97% failure starting at 0.6.101: the command genuinely *requires* both native modules, but as optional deps they're skipped on most installs, so it hits the guarded "module not available" error and fails for nearly everyone. The capture crash that motivated the optional move is already fixed by the lazy, guarded `await import()` in contentExtractor / inference — that holds regardless of dependency classification. Making the modules optional was the over-correction; the lazy import alone was sufficient. sharp ships its own platform binaries as optional sub-deps, so it installs cleanly as a hard dep without failing installs on unsupported platforms (it was a hard dep at 0.6.99 with remove-background at a healthy ~7%). - Move sharp + onnxruntime-node back to `dependencies` (so they install for everyone again). `@google/genai` stays optional — genuinely optional, lazy, and not part of the regression. - Keep the lazy guarded imports — they remain the crash-safety for capture. - Add trackCommandFailure to remove-background's catch: it self-exits, so the dispatch wrapper never saw it (the reason stream was blind). Now its failures carry a reason, closing that command from the wrapper-blind follow-up. remove-background tests + background-removal suite pass; tsc clean; build green.