Captured outcome of an in-process execute_run invocation. Tests use this
instead of spawning the harn binary; the binary entry point translates
it into real stdout/stderr writes + process::exit.
Opt-in profiling. When text is true the run prints a categorical
breakdown to stderr after execution; when json_path is set the same
rollup is serialized to that path. Either flag enables span tracing
(i.e. harn_vm::tracing::set_tracing_enabled(true)).
In-process equivalent of run_file_with_skill_dirs. Returns the captured
stdout, stderr, and what exit code the binary entry would have used,
instead of writing to real stdout/stderr or calling process::exit.
execute_run variant for --json mode. Returns once the run is
complete; the NDJSON event stream — including the terminal result
or error event — has already been written to out and flushed.
out must be Send because the run-event sink may be called from
any worker thread the VM spawns.