Skip to main content

Module proc

Module proc 

Source
Expand description

Bounded subprocess spawning for the engine’s two host-command seams (--llm-cmd, --analyzer-cmd).

This is a deliberate duplicate of areev_core::proc. This crate’s Cargo.toml states the engine must never depend on an areev-* sibling, so it cannot use the canonical module. areev-loop/tests/proc_contract.rs pins the two to the same observable behaviour; change one and the test tells you to change the other.

Scope is trimmed to what these two seams need: argv commands (never a shell), inherited stderr, no working-directory control, and no clear-the-environment mode. Everything load-bearing is identical — a wall-clock ceiling, an output cap that keeps draining, stdin on its own thread, and a registry of variables that must never reach a child.

Structs§

SpawnOutput
What a spawn produced.

Constants§

DEFAULT_MAX_OUTPUT
Matches areev_core::proc::DEFAULT_MAX_OUTPUT.
DEFAULT_TIMEOUT
Matches areev_core::proc::DEFAULT_TIMEOUT.

Functions§

deny_env_var
Register a variable whose value must never reach a child process.
run_argv
Run argv with stdin, bounded by timeout and the output cap.
secret_env_vars
The registered secret variable names.