Skip to content

docs(scripts): update version example in run-upgrade-test.sh - #252

Open
Lesnak1 wants to merge 3 commits into
circlefin:mainfrom
Lesnak1:docs/scripts-version-staleness-sweep
Open

docs(scripts): update version example in run-upgrade-test.sh#252
Lesnak1 wants to merge 3 commits into
circlefin:mainfrom
Lesnak1:docs/scripts-version-staleness-sweep

Conversation

@Lesnak1

@Lesnak1 Lesnak1 commented Aug 10, 2026

Copy link
Copy Markdown

Summary

Updates the CLI usage version example in scripts/run-upgrade-test.sh from 0.6.0-dev to 0.7.3-dev.

Rationale

Ensures script documentation aligns with the active Arc Testnet release v0.7.3.

@osr21 osr21 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Checked both hunks against the surrounding context, and they land very differently — one is a genuine staleness fix, the other changes a deliberately old version and makes the doc wrong.

scripts/run-upgrade-test.sh — fine. The (e.g. 0.6.0-dev) is just illustrating the GHCR dev-tag format for the --from/--to overrides, and pointing it at the current release keeps the example copy-pasteable. No objection.

crates/quake/README.md — please revert this hunk. Read the sentence being edited:

Upgrade scenarios can pin an older arc_consensus image tag (e.g. v0.6.0). Quake derives CLI flags from the StartCmd definition compiled into its own binary, which may have gained, renamed, or removed flags since that image shipped.

The entire section ("Matching Flags to the Target Image Version") is about what happens when the pinned image is older than the current binary — Quake rewrites the flag set down to a compatible subset. v0.6.0 here isn't a stale reference to the current release; it's a deliberately old tag chosen because upgrade tests start from an old version and upgrade away from it. Substituting the current release breaks the illustration: pinning v0.7.3 today is pinning the newest image, i.e. exactly the case where no flag-downgrade happens, so the example no longer demonstrates the mechanism the paragraph explains. (If anything, as future releases ship, v0.6.0 becomes a better example of "older," not a worse one.)

This is the classic hazard of version-literal sweeps: not every old version string is stale. The ones on main split three ways —

  • genuinely stale (points operators at the wrong thing today): the two files already covered by #226/#238, plus arguably the script example here;
  • deliberately historical: CHANGELOG.md, BREAKING_CHANGES.md (v0.6.0 is the baseline release those documents are about), and the quake README/test fixtures in cli_version.rs, where old tags are the test subject;
  • arbitrary format examples: the workflow_dispatch input descriptions in build-docker.yaml/release-binaries.yaml ("e.g. v0.6.0"), where any well-formed tag serves and churning them each release adds diff noise for zero operator benefit.

Only the first class is worth touching. So: drop the README hunk, keep the script hunk, and this becomes a clean, correctly scoped follow-up to #226/#238.

@Lesnak1

Lesnak1 commented Aug 10, 2026

Copy link
Copy Markdown
Author

Thanks @osr21 for the great breakdown on version literal classification!

I've reverted the crates/quake/README.md hunk as requested. The PR now contains solely the scripts/run-upgrade-test.sh update.

@osr21

osr21 commented Aug 10, 2026

Copy link
Copy Markdown

Confirmed on the new head (e24ece3b): the diff is now exactly one hunk — the run-upgrade-test.sh usage example, 0.6.0-dev0.7.3-dev — with the quake README untouched. That's the correctly scoped shape: it fixes the one version literal outside #226/#238's files that was genuinely stale rather than historical or format-illustrative.

Nothing left to flag from my side. With this, the whole staleness cluster is cleanly partitioned: #226 (installation.md table + install command), #238 (compose comments, made release-proof via $ARC_VERSION), and this PR (the script example). All three are single-purpose, conflict-free with each other, and ready for maintainer review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants