Skip to main content

GitCommandBoundary

Trait GitCommandBoundary 

pub trait GitCommandBoundary: Send + Sync {
    // Required method
    fn wrap_command(&self, command: &mut Command) -> Result<()>;
}
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§

Source

fn wrap_command(&self, command: &mut Command) -> Result<()>

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§