effectcraft/crates/engine
Brandon Thomas 6144ca0804 Never crash: last-resort guard around command execution, and a logging panic hook
Session::execute runs every command (UI, CLI, control channel, MCP, scripts; file import,
export and save are commands too) through guard::guarded, which catch_unwinds a panic that
escapes the command and returns EngineError::Other("command `x` failed with an internal error
(...); it was stopped and your project is still open"). Edits work on a copy of the project, so
a command that panics mid-edit leaves the project untouched. The desktop app also installs a
panic hook that logs every panic through the app logger (then runs the default hook).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 13:27:33 -04:00
..
presets M9.6: text animation depth (selectors, animator properties, per-char 3D, path text, presets) 2026-10-02 00:01:19 -04:00
scripts M13.1: ScriptUI frontend (dialogs, palettes, dockable panels), script menus, example plug-in, docs 2026-10-03 04:24:01 -04:00
src Never crash: last-resort guard around command execution, and a logging panic hook 2026-10-04 13:27:33 -04:00
Cargo.toml M13.26: Premiere Pro interop commands (file.importTimeline, file.exportTimeline with ProRes 4444 pre-renders), File menu entries, export dialog, docs and pixel round-trip tests 2026-10-04 00:25:43 -04:00