Expand description
Repository and unmerged-branch discovery via git shell-out. Design decision: shell-out (not git2/gix) — simple and debuggable; the product performance bottleneck is the LLM, not git.
Structs§
- Open
Loop - An open loop: an unmerged branch with its own commits.
Functions§
- commit_
window - Time window of the branch-exclusive commits.
- default_
branch - Default branch: origin/HEAD if it exists; otherwise main; otherwise master.
- diffstat
- Diffstat of the branch against the base (for the distillation prompt).
- find_
repos - Walks roots up to
scan_depthlooking for git repo candidates, then deduplicates by absolute--git-common-dir. - git_
common_ dir - Absolute path of the git common-dir for
path(bare store /.gitdir). - git_log
- Branch-exclusive commits relative to the default (for the distillation prompt).
- open_
loops - Returns all unmerged branches (except default) in a repo.
- repo_
name_ from_ common_ dir - Derives a stable repo name from the absolute git common-dir (§5 of Spec Fase A).
- scan
- Scans all repos found under the roots in parallel.