Repository navigation
feat: fold prepare-this-repo into ahoy install and retire its page - #919
Merged
13 commits merged intoOct 11, 2026
Merged
13 commits merged into
13 commits merged into
Conversation
abcd launch --dry-run now renders the cut the next launch ship would make beside its bundle report: the derived version, the deciding impact, the records, the guard and findings verdicts, in text under its own line and in --json under a new cut key (cut_error when it cannot be read). It is the same deterministic emit and render the changelog verb used, with no prose and no agent. A refused cut is reported and changes nothing about the dry run's exit. The changelog verb goes with no alias (adr-40). abcd changelog is an unknown command whose note names abcd launch --dry-run. Its placement, sentence, parity note and DOGFOODING recall entry go with it, and its tests move onto the preview: the tree-digest check, the refused cut still exiting 0, the JSON, the page set, the uncommitted-records refusal and the subdirectory read. The dry run now reads the checkout root wherever it is run, as the cut always has. Before, from a subdirectory it read the subdirectory as a repository that declares no artefact kind and refused before reaching the cut, which would have lost the subdirectory read the changelog verb had. The dry run's own targeted lines are dropped when the cut is read, because the cut lists the same intents and says which ones it moves. The pages, the composer agent, the brief and the principle that named the verb now name the preview. The launch chapter no longer says the preview always exits 0 (a peer finding): a --baseline that names no release tag exits 2, and an undeclared kind or a missing payload is refused. Step 3 of spc-2610100613109045. Assisted-by: Claude:claude-opus-5-5
…t-3-launch-preview
Refs: itd-2610090831227812 Assisted-by: Claude:claude-opus-5-5
…is-repo prepare-this-repo folds into the ahoy page's install section in the next commit, so its name leaves the two strings that send a reader to it. The implement loop's brief refusal for a base with no AGENTS.md now names /abcd:ahoy install, the plugin command whose preparation merges the conventions into AGENTS.md. It names the plugin command, not the bare binary call, because a default `abcd ahoy install` writes no AGENTS.md. The repo lint's warning for docs/ with no .abcd/docs-lint.json now says to run abcd ahoy install, the binary step that seeds that file. Step 4 of spc-2610100613109045. Assisted-by: Claude:claude-opus-5-5
The product thinker's placement of 2026-10-09 folds prepare-this-repo into ahoy install (itd-2610090831227812, decision 6 of its spec). The fold is page-only: the binary and its refusals do not change. commands/ahoy.md's install section now carries the whole preparation workflow around the binary call it already made: the ownership refusal, the authority ordering, orient, audit, adopt, the working-conventions block, the downstream rule and the definition of done. The account of what the binary install does follows under its own heading. A repository already prepared goes straight to the binary half. commands/prepare-this-repo.md is deleted with no alias (adr-40). prepare-this-repo leaves pagesWithNoVerb and record-lint's host_delegated list. `abcd prepare-this-repo`, never a verb, is still an unknown command; it moves to retiredTokens, whose note names /abcd:ahoy install. The onboarding, tool-conventions-file, persona and hooks-arming tests now read commands/ahoy.md; a new page test holds each phase to the install section and the old page absent. The brief folds 15-prepare-this-repo.md into a section of 01-ahoy.md, drops register row 15 and the index entry, and repoints the host- delegated paragraphs, 08-skills.md, 04-naming.md's exemption list, 16-lint.md (whose opening named the page as live), 08-abcd.md, 14-ingest.md and 19-identity.md. The release-gate manifest drops the chapter and the page, with its checker count, prompt hash and the receipt example rehashed. The two review flags on the deleted chapter are removed: the sentences they named left with it. README and commands/lint.md name /abcd:ahoy install. The bootstrap test that refuses an unrunnable `ahoy install` in README no longer counts the slash command, which the host runs and whose page resolves the binary through the plugin root before PATH. Step 4 of spc-2610100613109045. Assisted-by: Claude:claude-opus-5-5
Two peer findings on 01-ahoy.md, folded in with step 4's change to that chapter. The chapter called `status` a plugin-page alias for the bare form. It is not: commands/ahoy.md hands every word to the binary, which refuses `status` like any other word it does not register, so `abcd ahoy status` is an unknown command on both surfaces. The user-scope tree, declared the one inventory, left out files the shipped code reads or writes under the home folder: oracle-routing.json, interviews/, cache-attestation and statusline.json, which the symlink rule in 03-configuration.md already lists, and backups/, where the status-line change keeps its copies of the harness settings file. Step 4 of spc-2610100613109045. Assisted-by: Claude:claude-opus-5-5
Step 3 repointed the composer's preview source at the launch preview's cut without the prompt_version bump and agents changelog entry record-lint's agent_contract rule requires. It also adds changelog to the brief's list of names retired with no alias. Refs: itd-2610090831227812 Assisted-by: Claude:claude-opus-5-5
…4-ahoy-install-conventions # Conflicts: # .abcd/development/brief/04-surfaces/08-abcd.md
…kers The shortcut straight to the binary's half keyed on the working-conventions markers, which only the host-run preparation writes, so a repository adopted through the binary install alone, abcd's own checkout among them, would have been walked through the whole preparation again. The page now starts from the detection pass: a managed repository goes to the binary's half unless the person asks to prepare it, and an unmanaged one starts at Phase 0. The brief's mirror sentence follows, and the spec's line on the loop hint now says /abcd:ahoy install, matching what shipped. Refs: itd-2610090831227812 Assisted-by: Claude:claude-opus-5-5
…t-3-launch-preview
…4-ahoy-install-conventions
REPPL
enabled auto-merge
October 11, 2026 05:28
auto-merge was automatically disabled
October 11, 2026 11:42
Pull request was closed
…y-install-conventions
REPPL
enabled auto-merge
October 11, 2026 12:00
4700d60
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.
Step 4 of spc-2610100613109045:
ahoy installcarries what prepare-this-repo did, and that page goes.Stacked on #918 (step 3), which is stacked on #913 (step 2). Until those merge, this diff shows their commits too.
commands/ahoy.md's install section, in the same order, ending at "What the binary install does".commands/prepare-this-repo.mdis deleted. The page starts from the detection pass: a managed repository goes straight to the binary install unless the person asks to prepare it, and an unmanaged one starts at Phase 0.abcd prepare-this-repotyped at a shell gets a note naming/abcd:ahoy install. The page leaveshost_delegatedin record-lint./abcd:ahoy install, because the page's preparation is what writes the conventions file, and a default binary install writes noAGENTS.md(iss-2610101707453618). The repo lint's missing docs-lint config message namesabcd ahoy install. The spec now says the same.15-prepare-this-repo.mdis folded into01-ahoy.md, its register row and index entry go, and every brief line naming/abcd:prepare-this-repois repointed. Two peer findings on01-ahoy.mdare corrected: thestatusalias claim, and the user-scope tree. The release-gate manifest is rehashed.New tests:
TestRetiredPrepareThisRepoTokenNamesWhatReplacedIt,TestDocsWithoutConfigNamesAhoyInstallandTestAhoyInstallCarriesThePreparation, with the onboarding and persona tests repointed atcommands/ahoy.md. All were watched fail first. No test was retired.Two brief-review flags on the deleted chapter were removed with it: record-lint refuses a flag on a missing chapter.
Refs: itd-2610090831227812
Refs: iss-2610101707453618
Assisted-by: Claude:claude-opus-5-5