Trait GitCommandBoundary
pub trait GitCommandBoundary: Send + Sync {
// Required method
fn wrap_command(&self, command: &mut Command) -> Result<(), Error>;
}Expand description
Runtime-owned boundary applied to write-classified Git subprocesses.
The tool crate owns Git operation classification and must not depend on a concrete runtime sandbox. The production registry injects the per-agent sandbox through this narrow command-wrapping contract instead.
The boundary receives a bare git command before the tool applies Git
arguments, its working directory, or its environment. Boundaries that need
to remove inherited environment variables must use individual
std::process::Command::env_remove calls; a blanket env_clear is
superseded by the tool’s Git environment hardening. Git-specific variables
set by a boundary are also discarded: the tool owns the Git environment.
Required Methods§
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".