chore(versions): refresh pins and make versions-pin show its work - #488
Merged
Conversation
Contributor
|
Claude encountered an error after 1s —— View job I'll analyze this and get back to you. |
lroolle
force-pushed
the
chore/version-pins-tui
branch
from
July 27, 2026 09:16
5b62134 to
be0b253
Compare
Contributor
|
Claude encountered an error after 1s —— View job I'll analyze this and get back to you. |
- pin sweep: claude-code 2.1.220, cctrace 0.23.0, gemini 0.52.0, grok 0.2.112, kimi 0.29.2, ccx v0.12.0, playwright 1.62.0, cloakbrowser wrapper 0.5.2 (which is also the Chromium pin) - update-version-pins.sh: grouped per-tool output with old -> new, fetch failures called out instead of silently keeping the old value, and a summary line - versions-pin CHANGELOG=1 prints upstream changelogs for the tools that actually moved, via the release-utils registry -- release notes stop being archaeology - keep the soft-fail contract: `new_val=$(fetch ...) || true`. A failing command substitution in a plain assignment takes its exit status and set -e kills the run, which had made the fetch-failed branch dead code and turned one dead registry into an aborted sweep - always write versions.env, even when nothing moved. The heredoc is a second copy of the file layout, so the rewrite is what proves no pin was dropped; skipping it left that guard unexercised on exactly the runs where every fetch failed - say "N fetches failed, upstream state unknown" instead of claiming "all pins up-to-date" when nothing was actually checked Verified: full round-trip byte-identical under a simulated total registry outage; tests/version-upgrade.sh green.
lroolle
force-pushed
the
chore/version-pins-tui
branch
from
July 27, 2026 09:59
be0b253 to
5586826
Compare
Contributor
|
Claude encountered an error after 1s —— View job I'll analyze this and get back to you. |
There was a problem hiding this comment.
Pull request overview
Refreshes pinned tool versions and improves the pin-sweep UX so scripts/update-version-pins.sh reports per-tool outcomes (updated / unchanged / fetch failed) and can optionally show upstream changelogs for tools tracked in the release-utils registry.
Changes:
- Bump several pinned tool versions in
versions.env(e.g., Claude Code, cctrace, Gemini CLI, Grok CLI, Kimi Code, CCX, Playwright, CloakBrowser wrapper). - Rework
scripts/update-version-pins.shto provide grouped progress output, robust soft-fail fetch behavior underset -e, and optional changelog printing (--changelog). - Update
make versions-pinto forwardCHANGELOG=1into--changelog, and document it inmake help.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| versions.env | Refreshes pinned versions for multiple agent CLIs and browser tooling. |
| scripts/update-version-pins.sh | Adds verbose per-tool reporting, fixes soft-fail behavior, always rewrites versions.env, and supports changelog display. |
| Makefile | Wires CHANGELOG=1 into make versions-pin and updates help text accordingly. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
|
||
| show_changelogs() { | ||
| local shown=0 | ||
| for entry in ${UPDATED_VARS[@]+"${UPDATED_VARS[@]}"}; do |
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.
Stacked on #487. Review that first; base retargets on merge.
Pin sweep: claude-code 2.1.220, cctrace 0.23.0, gemini 0.52.0, grok 0.2.112,
kimi 0.29.2, ccx v0.12.0, playwright 1.62.0, cloakbrowser wrapper 0.5.2
(which is also the Chromium pin).
update-version-pins.sh reports per tool (old -> new, up-to-date, or fetch
failed) with a summary, and
make versions-pin CHANGELOG=1prints upstreamchangelogs for the tools that actually moved via the release-utils registry.
Two bugs the local suite caught in the rework, both worth naming:
Soft-fail was broken.
new_val=$(fetch ...)is a plain assignment, so afailing command substitution takes its exit status and set -e aborts the
run -- making the fetch-failed branch below it dead code and turning one
dead registry into an aborted sweep. Fixed with
|| true. Same class asfix: deva.sh exits silently when docker rejects a .deva mount #484.
The rework skipped writing versions.env when nothing moved. The heredoc in
write_version_pins is a second copy of the file layout, so the rewrite is
what proves no pin was dropped from it; skipping it left that guard
(tests/version-upgrade.sh) unexercised on exactly the runs where every
fetch failed. Now it always writes.
Also stops claiming "all pins up-to-date" when 12 fetches failed and nothing
was actually checked.
Test plan
versions.env byte-identical after the rewrite
Note for the reviewer: the new output uses box-drawing characters, which cuts
against the repo's ascii preference. Left as authored -- flagging, not
relitigating.