Expand description
Git operations for mission branches (plan §4.4 — git is the source of truth).
Every operation shells out to the git binary with an explicit argument
vector (never a shell string, §9) and runs synchronously with the repo
root as the working directory. Callers on async paths wrap calls in
tokio::task::spawn_blocking.
All failures surface as EngineError::Git with the command context and
whatever git printed, so mission logs show why a git step failed.
Structs§
- Added
Commit - The commit that introduced a path, from
GitRepo::commit_that_added. - Commit
Info - One commit in a
GitRepo::commits_betweenlisting. - GitRepo
- Handle to a local git repository rooted at a working-tree directory.
- Kranz
Commit Metadata - Mission facts attached to kranz-authored durable commits as git trailers.
- Tree
Entry - One entry of a recursive tree listing (
GitRepo::ls_tree_recursive): the git file mode (100644/100755regular blob,120000symlink,160000submodule commit), the object kind (blob/commit), the blob size in bytes (Nonefor non-blobs), and the repo-relative path.
Enums§
- Checkpoint
Outcome - Outcome of a scoped engine checkpoint commit (
GitRepo::commit_dirty_paths). - Merge
Outcome - Outcome of a
GitRepo::merge_no_ffinto the current branch (roadmap M3).
Functions§
- kranz_
commit_ trailers - Append-only git trailers for mission attribution and actual cost.
- with_
kranz_ trailers - Commit message with kranz trailers separated in the standard trailer block.