Repository navigation
feat(writ): the repo command — first-class layer registration, guide corrected - #352
Merged
Merged
Conversation
…corrected writ repo add/remove/list (rm and ls aliases, bare invocation lists — git-remote's idiom with docker's aliases) gives the fresh-user story a real surface over the settled mechanism: the layers-directory symlink, packaging never configuration, so the future config API owes this nothing. The scenario harness now dogfoods writ repo add, proving the path on all three platforms every run. The repositories guide is rewritten onto reality: the config-set registration fiction removed, the upside-down project/Home structure corrected to Home/<project>[.<Segment>], writ status replacing the retired writ inspect, and the fictional configuration-storage section replaced by the layers-directory truth. Rides the phase-4 closure and the queued Tuckr-parity question in the scenario plan.
David-Noble-at-work
added a commit
that referenced
this pull request
Aug 9, 2026
… grammar (#353) The location operand is polymorphic (ruled 2026-08-09): a local working-tree-root, or a repository URL that clones first — git-clone's own grammar, with the optional trailing working-tree-root as the destination and --branch as the one flag. URL detection is git's own rule (schemes, scp-like, single-letter-is-a-drive). Without a destination the clone lands in the writ-owned home (XDG_DATA_HOME/devlore/writ/repos/<layer>); after placement the repository is entirely the user's — no hidden git operations, ever. The local form now validates git-working-tree-ness at add (deploy's pin refuses non-repos anyway; failing early is kinder). The guide's VCS-agnostic claim — false since pinning landed, and carried unexamined through the #352 rewrite — is replaced by the honest git basis. Tests: the URL-detection table, every malformed combination, and real offline file:// clones into both destinations, with remove proven to leave the clone untouched. Co-authored-by: David Noble <[email protected]>
This was referenced Aug 9, 2026
David-Noble-at-work
added a commit
that referenced
this pull request
Aug 9, 2026
…Rs (#355) A plan committed inside its own PR predates the merge by construction, so no completed plan recorded where it landed. Each of the five now ends with the PR it landed as and the squash date: implicit-common-project and git-crypt-pinning (#354), writ-repo-remote (#353), writ-repo-command (#352), archive-root-confinement (#345). Co-authored-by: David Noble <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The chartered fresh-user packaging command:
writ repo add/remove/list(rm/lsaliases; barewrit repolists) over the settled layers-directory symlink mechanism — packaging, never configuration, zero config-API debt. Unit tests cover the round-trip, aliases, bare invocation, all error paths, and the broken-link marker. The scenario harness now registers its layer through the command, so the fresh-user path is proven on ubuntu, macos, and windows by every scenario run. The repositories guide is rewritten onto reality (config-set fiction removed, structure corrected toHome/<project>[.<Segment>],writ statusfor the retiredwrit inspect, layers-directory truth for the fictional storage section). Also rides the scenario plan's phase-4 closure and the queued Tuckr-parity question.