A missing command executable or an unsuccessful process exit.
kind is :spawn or :exit. The message is suitable for logs, and
result contains captured diagnostics. exit_status is available when the
process produced one. See FFix.Runner.Result for its fields.
FFix.run/2 returns {:error, error}. FFix.run!/2 raises this exception.
Process I/O follows Exile.stream/2 semantics rather than producing this error.
Exceptions from your own callbacks and stream consumers propagate separately.
Summary
Types
@type kind() :: :spawn | :exit
@type t() :: %FFix.Runner.Error{ __exception__: term(), exit_status: FFix.Runner.Result.exit_status() | nil, kind: kind(), message: String.t(), result: FFix.Runner.Result.t() }