Skip to main content

Module exec

Module exec 

Source
Expand description

Three real Git execution backends (0036 RW7/RW8, 0037 DC1b): local git via std::process with -C workdir, bounded remote git via the shared remote-execution boundary (strop_remote::run), and bounded in-container git via docker exec argv through strop_containers::exec_capture. Not a provider framework — the enum’s variants are every backend that exists.

Exit codes are data on both sides (diff --quiet exits 1): GitRun reports success and the raw code; callers that need “did git itself refuse” match on the code, not on stderr text. Remote output bounds are surfaced as dropped counts — a parser that needs a complete record stream must refuse truncated output, never parse a prefix as if it were the whole answer.

Structs§

GitRun
One bounded git run’s native bytes.

Enums§

GitExec
Where one Git query executes. Constructed from a RepoTarget so a non-local workdir can only ever reach its matching backend.
GitExecError
Why a bounded git run could not produce its bytes.