Expand description
The typed repository boundary (0036 RW8): every Git request names
the machine its worktree lives on. A local workdir is openable with
libgit2 and local git; a remote workdir is bytes on another host
and only bounded remote git commands can read it. Keeping the two
in one enum — instead of a bare path that could mean either — makes
“treated a remote path as local” a type error instead of a bug.
The same boundary carries provenance through the memory surfaces:
a log row’s dive, a commit’s file list and a delta’s ]f step all
replay the RepoTarget they were launched with, so a remote
surface can never answer from the local cwd.
Enums§
- Repo
Target - Where a Git query runs. Exactly two real backends exist (0036); there is deliberately no provider trait behind them.