Repository navigation
Merge away shape/.gitignore with update-shape.py apply, which drops its pin row, fix the .gitignore comment, and note beside the curl one-liner that without gh it needs api.github.com and makes 6 GitHub API calls (part of opensoft/openRepoTools#186) - #345
Merged
Merged
Conversation
…ts pin row, fix the .gitignore comment, and note beside the curl one-liner that it needs api.github.com and jq and makes 6 GitHub API calls (part of #186) The in-place adoption found a .gitignore in this repository, so it wrote openRepoShape's copy beside it as shape/.gitignore and pinned that copy in contracts/shape-pin.yaml. The adoption plan's follow-up at FP:440 asks for the copy to be merged into .gitignore and then removed, with update-shape.py check reporting its pin row merged-away and apply dropping the row. The merge itself was made at the cutover: .gitignore already holds all four of the copy's lines. Brett Heap's round 18 (1) ruling for #186 kept the copy, its pin row and the .gitignore comment unchanged through the cutover, and made FP:440 a root pull request after the root-split merge, done with update-shape.py apply. So: - shape/.gitignore is removed with git rm; - update-shape.py check, at openRepoShape v1.1.0 (190133d5e704e380c430f87ca9c4e31746de0012), reported the row merged-away, and apply dropped it from contracts/shape-pin.yaml and re-pinned the same commit, so the pin is not edited by hand; check then had nothing to do, and the root's validate-pins.py and validate-manifest.py passed; - the .gitignore comment no longer calls the copy pinned and left in place: it says the lines were merged from it and that it was removed once merged. Brett Heap's round 20 (2) ruling put Ask 13's note in this pull request too, beside the one-liner in README.md. It is the note his round 4 answer, "Accept and document it", asked for: since the split the curl line also needs api.github.com and jq, and makes 6 GitHub API calls per install, 2 in this root's openRepoTools and 4 in the installer it hands over to. It extends the last line of the paragraph after the two install lines rather than adding a line, because the code leg's tests/test_repo_hygiene.py caps an assembly root's README.md at 529 lines, which it already has. Cutover: #186 Lane: openRepoTools-1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Reviewer's guide (collapsed on small PRs)Reviewer's GuideThe PR completes the shape/.gitignore cutover by deleting the redundant copy and workflow-managed pin entry, updates the migration comment, and documents the API host, request overhead, and jq requirement introduced by curl-based installs on systems without gh. Sequence diagram for curl installation without ghsequenceDiagram
participant User
participant Curl as curl
participant GitHub as api.github.com
participant Installer as Installer
participant JQ as jq
User->>Curl: Run install one-liner
Curl->>GitHub: Make 6 GitHub API calls
GitHub-->>Curl: Return repository and installer data
Curl->>Installer: Hand over to installer
Installer->>GitHub: Make 4 GitHub API calls
GitHub-->>Installer: Return installer data
Curl->>JQ: Read 3 API responses
JQ-->>Curl: Provide values for hook merges
Flow diagram for the shape ignore-file cutoverflowchart LR
ShapeCopy[shape/.gitignore] -->|contents already merged into| RootIgnore[.gitignore]
RootIgnore -->|obsolete copy removed| Removed[shape/.gitignore deleted]
Pin[contracts/shape-pin.yaml entry] -->|update-shape.py apply drops merged-away row| Repinned[shape pin re-pinned without copy]
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
…he line makes 6 GitHub API calls and newly reads their answers with jq (part of #186) Two reviews of this pull request found the wording of Ask 13's note, on README.md line 261, wrong: lane 2's #186 comment 6481710910 (SHOULD 1) and lane 5's #186 comment 6481824359 (MUST 1). They agree on two facts: - The 6 GitHub API calls hold only on a host without gh: there, and only since the split, the curl line makes 6 per install, 2 in this root's openRepoTools and 4 in the installer it hands over to. With gh, every read goes through gh api, as it did before the split. - jq is not new since the split: --install has always needed it for the hook merges, which README.md says below the note. What is new is that the curl line, without gh, reads three of the API answers with it. Lane 1's ruling 84, #186 comment 6481907160, takes lane 2's wording on the same line, so the note now says that, on a host without gh, the curl line also needs api.github.com, makes 6 GitHub API calls per install where it made none before, and reads three of their answers with jq, which the hook merges below already need. It stays on its one line, so README.md stays at 529 lines, the cap that the code leg's tests/test_repo_hygiene.py sets for an assembly root's README.md. Cutover: #186 Lane: openRepoTools-1 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Contributor
Author
brettheap
marked this pull request as ready for review
October 31, 2026 19:43
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.



Lane: openRepoTools-1
Claim: #186 (comment)
The in-place adoption found a .gitignore in this repository, so it
wrote openRepoShape's copy beside it as shape/.gitignore and pinned
that copy in contracts/shape-pin.yaml. The adoption plan's follow-up
at FP:440 asks for the copy to be merged into .gitignore and then
removed, with update-shape.py check reporting its pin row merged-away
and apply dropping the row. The merge itself was made at the cutover:
.gitignore already holds all four of the copy's lines.
Brett Heap's round 18 (1) ruling for #186 kept
the copy, its pin row and the .gitignore comment unchanged through the
cutover, and made FP:440 a root pull request after the root-split
merge, done with update-shape.py apply. So:
(190133d5e704e380c430f87ca9c4e31746de0012), reported the row
merged-away, and apply dropped it from contracts/shape-pin.yaml and
re-pinned the same commit, so the pin is not edited by hand; check
then had nothing to do, and the root's validate-pins.py and
validate-manifest.py passed;
place: it says the lines were merged from it and that it was removed
once merged.
Brett Heap's round 20 (2) ruling put Ask 13's note in this pull request
too, beside the one-liner in README.md. It is the note his round 4
answer, "Accept and document it", asked for. On a host without gh, the
curl line makes 6 GitHub API calls per install, 2 in this root's
openRepoTools and 4 in the installer it hands over to, where it made
none before. It reads three of their answers with jq, which --install
already needed for the hook merges. With gh, every read goes through gh
api, as before the split, so the note is scoped to hosts without gh. It
extends the last line of the paragraph after the two install lines
rather than adding a line, because the code leg's
tests/test_repo_hygiene.py caps an assembly root's README.md at 529
lines, which it already has.
🤖 Generated with Claude Code
Summary by Sourcery
Merge the shape-specific ignore rules into the root configuration, remove the obsolete copy and pin, and document curl installation API usage.
Enhancements:
Documentation:
Chores: