Repository navigation
Re-sync the assembly root's shape copies to openRepoShape v1.1.1 with update-shape.py apply, moving project.yaml's and contracts/shape-pin.yaml's shape pin from 190133d to 5017830 (part of opensoft/openRepoTools#186) - #348
Conversation
… update-shape.py apply, moving project.yaml's and contracts/shape-pin.yaml's shape pin from 190133d to 5017830 (part of #186) openRepoShape's update-shape.py apply made this change, run from a checkout of openRepoShape v1.1.1 (tag v1.1.1, commit 50178305e4229275d18e71c2152403b4e9d3004e) as the v1.1.1 release notes prescribe: update-shape.py apply --root ROOT \ --at 50178305e4229275d18e71c2152403b4e9d3004e \ --yes --branch shape/update-5017830 What moved: - project.yaml's shape: block and contracts/shape-pin.yaml now record commit 50178305e4229275d18e71c2152403b4e9d3004e and tree_sha256 204d73aabf2379554600234d4b36dc08d3c3a1da422395dec44637b5ca7a5184, in place of v1.1.0's 190133d5e704e380c430f87ca9c4e31746de0012 and 7a66972c7de193c050f77f97bffa13d8543c28d74f61ea210644e65aa3f37912. The tool recomputed the digest under sorted-ls-tree-r-v1. - The six copies v1.1.1 changed now hold v1.1.1's bytes verbatim, and their sha256 rows in contracts/shape-pin.yaml are recomputed: scripts/validate-pins.py, scripts/validate-manifest.py, scripts/bootstrap.py and .github/workflows/validate.yml, from templates/assembly-root/, and scripts/repo_shape.py and scripts/validate-repository-naming.py, from scripts/. - The four copies v1.1.1 left alone keep their bytes and their rows: Makefile, shape/.gitattributes, AGENTS-shape.md and contracts/repository-naming.yaml. .gitattributes, README.md and both gitlinks are untouched. The tool committed the change as 84126f2de87d under its own identity. This commit keeps that commit's tree, 453f8ab, and changes only the author and the message. As the tool's message says, the copies re-copied from the upstream are not hand-edited and the digests are recomputed, not adjusted. Inside its run the tool ran the root's own validate-pins.py and validate-manifest.py, now v1.1.1's, and both passed; so does the naming check. Brett Heap ruled v1.1.1 on 10-22, and he wants both of the triad's openRepoShape pins moved: this root's shape copies, here, and the code leg's mounted pin, in the code leg. This change is independent of that code-leg change and of the later root change that moves the code gitlink, and it touches no gitlink. Lane: openRepoTools-1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Sorry @brettheap, you've used your own review budget of 250,000 diff characters for the last 7 days. You can request another review in 7 days by commenting |
Reviewer's GuideData structuresAdvance the assembly root’s shape pin in both manifests to openRepoShape v1.1.1 and record the recomputed tree digest and hashes for the synchronized copies.
APIRefresh the copied shared shape library, including its YAML parsing and shell-quoting helpers used by the root’s tools.
ImplementationRefresh the copied assembly-root validators and bootstrap tool to v1.1.1 so their validation and leg-handling behavior matches the new shape pin.
ConfigurationRefresh the copied validation workflow to v1.1.1, including safer
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
|
|
Lane openRepoTools-1, 2026-11-08T13:32:49Z: independent review of this PR, a check of the tree, not a landing word. The verdict is LAND after fixes, and the fixes are to text only. The review was run by a separate agent with no part in writing this PR. It ran on Sonnet 5.5 and worked only from fresh clones and from GitHub. What it checked, on the head
Findings and what was done with them:
Not yet checked: Lane: openRepoTools-1 |
|
LANDING — lane openRepoTools-1, session df82f553-7803-49c4-8ddf-3f9acdcb8ee0@Eagle, 2026-11-08T15:36:26Z, PR #348 into opensoft/openRepoTools main → into main; head 62f70dd; openRepoShape v1.1.1's root shape copies (A, #186), on Brett Heap's dialog answer 'Land A now (Recommended)' (15:31:59Z); squash |



Lane: openRepoTools-1
Claim: #186 (comment)
What changes
openRepoShape's
update-shape.py applyre-syncs this assembly root's shape copies to openRepoShape v1.1.1 and re-pins them. It ran from a checkout of tagv1.1.1, commit50178305e4229275d18e71c2152403b4e9d3004e, with the command v1.1.1's release notes prescribe:project.yaml'sshape:block and incontracts/shape-pin.yaml,commitmoves from v1.1.0's190133d5e704e380c430f87ca9c4e31746de0012to50178305e4229275d18e71c2152403b4e9d3004e.tree_sha256moves from7a66972c7de193c050f77f97bffa13d8543c28d74f61ea210644e65aa3f37912to204d73aabf2379554600234d4b36dc08d3c3a1da422395dec44637b5ca7a5184, which the tool recomputed undersorted-ls-tree-r-v1.sha256rows incontracts/shape-pin.yamlare recomputed:templates/assembly-root/:scripts/validate-pins.py,scripts/validate-manifest.py,scripts/bootstrap.pyand.github/workflows/validate.yml;scripts/:scripts/repo_shape.pyandscripts/validate-repository-naming.py.Makefile,shape/.gitattributes,AGENTS-shape.mdandcontracts/repository-naming.yaml..gitattributes,README.mdand both gitlinks are untouched.Size. 8 files, +1,404 and −280. About 1.7k of those changed lines are the six copies' verbatim upstream bytes. The two pin files account for the other 20.
The tool's own commit. The tool committed the change as
84126f2de87d, under its own identity and in the writer's local clone only, so that commit is on no remote.453f8ab9f51fc2bad395d19cc07ad02bf2e10b3f, and changes only the author and the message.apply, on a fresh clone ofmain, gave the same tree (review finding N1).Why
Two rulings of Brett Heap's govern this, on #186:
190133d). v1.1.1 is a pin bump after the cutover.").This PR moves this root's shape copies. opensoft/openRepoTools-code#15 moves the code leg's mounted pin.
v1.1.1's release notes say it "changes pinned shape copies, so a project or a family holder takes those fixes into its own gates by
update-shape.py", and that until then "the root's own gates andmake bootstrapare v1.1.0's". The six files above are the six copies of an assembly root that the notes name.Independent of the other two pull requests
contracts/openreposhape-pin.yamland theupstream/openRepoShapegitlink in opensoft/openRepoTools-code. No check ties this root's shape-copy pin to the code leg's mounted pin. v1.1.1'svalidate-pins.pycompares this pin'scommitonly withproject.yaml'sshape.commit.codegitlink andcontracts/code-pin.yamlafter B lands. This pull request touches no gitlink and notcontracts/code-pin.yaml, so the two touch disjoint files, and either can land first.Checks
validate(.github/workflows/validate.yml, onpull_request, not required) runs the naming policy, the manifest and the lockstep pins with this pull request's new v1.1.1 copies.exact-pins(.github/workflows/composed.yml, the one required check) runs the newvalidate-manifest.pyandvalidate-pins.pyin its step "the manifest and the lockstep pins". It then runs the code leg's suite, composed, at the unchanged leg pins: code2a057a6d84e5, spec64a1a989fe7b.Checked locally before opening:
update-shape.py checkat the target reported six copiesupstream-changed, fourunchanged, and nothing to add.applyran the root's ownvalidate-pins.pyandvalidate-manifest.pyand both passed. Afterwards, with the legs checked out at their recorded commits,validate-repository-naming.py --project project.yaml,validate-manifest.pyandvalidate-pins.pyeach exit 0.sha256rows equals its file's sha256. Bothtree_sha256values equalrepo_shape.tree_digestcomputed from the v1.1.1 checkout, and the same helper gives7a66972c…at190133das a control.validate.yml's.gitmodulesstep reads this root's.gitmoduleswithout refusing and names both legs.exact-pinsruns it.No release
This moves the root's own gates only. There is no tag and no release, and nothing in the code leg or its
release/v1.1changes.Landing
This pull request lands only on Brett Heap's word.
🤖 Generated with Claude Code