Primary finding
API reference inconsistency: repo paths use {owner}/{name} but git smart-HTTP paths only use {name}
- gitlawb/references/api-reference.md:30-36
- gitlawb/references/api-reference.md:40-43
All REST endpoints scope repos by `{owner}/{name}`, but the Git Smart HTTP endpoints are documented as `/repos/{name}/git-{upload,receive}-pack` with no owner segment. Since gitlawb explicitly supports multiple owners (DIDs) per node and the quickstart shows `git clone gitlawb://$MY_DID/my-project`, omitting `{owner}` is either (a) a documentation bug that will mislead integrators implementing the remote-helper protocol or interacting with the API directly, or (b) a real ambiguity in the server (two owners with the same repo name would collide). Also, `git-upload-pack` is marked `Public` while pushes are `Signed` — for private repos `upload-pack` must also require auth; the table provides no way to express per-repo visibility.
Recommendation
Change the git smart-HTTP rows to `/repos/{owner}/{name}/git-upload-pack` and `/repos/{owner}/{name}/git-receive-pack` to match the rest of the API surface, or explicitly document the rule that resolves `{name}` to an owner (e.g., 'name is globally unique within a node'). Add a note about auth for private repos on upload-pack.