Skip to content

claude_version tracks latest, which runs ~6 releases ahead of the installer's stable #927

Description

@tend-agent

running-tend's weekly rule for claude_version says track latest, and names npm view @anthropic-ai/claude-code dist-tags.latest as the source. That's been followed consistently. The question is whether it's the channel we want, because the binary it selects runs in every consumer's CI job.

The release bucket publishes two markers, and they are not close together:

$ curl -fsS https://downloads.claude.ai/claude-code-releases/stable
2.1.220
$ curl -fsS https://downloads.claude.ai/claude-code-releases/latest
2.1.226

Six patch releases apart, as of 2026-08-09. 2.1.220 is the pin #918 is currently replacing — that is, stable has only just caught up to the version the previous weekly bump landed. The promotion lag looks to be roughly one weekly bump cycle, so tracking latest means adopters are more or less permanently one cycle ahead of the release Anthropic has promoted.

claude install takes either marker or an exact version, so all three are available to us:

$ claude install --help
Usage: claude install [options] [target]

Install Claude Code native build. Use [target] to specify version (stable,
latest, or specific version)

The pin should stay an exact version either way — reproducibility, and the action's input description already says so. The decision is only which marker we read when picking that number each week.

It genuinely cuts both ways, which is why this is a maintainer call rather than a PR:

  • Tracking latest gets fixes sooner, and some have been squarely ours. In the 2.1.221–2.1.226 range alone: 2.1.225 fixed a transient 401 replacing a long-lived CLAUDE_CODE_OAUTH_TOKEN with a stored login's short-lived token and breaking headless sessions until restart — tend's exact auth shape, in a run that never restarts. 2.1.222 fixed the startup connectivity check hanging behind an HTTPS proxy, and every tend session starts behind mitmdump. Waiting a cycle for stable means adopters sit on those bugs for another week.
  • Tracking stable means adopters never run a release Anthropic hasn't promoted. The blast radius is every consumer's job, and a bad release shows up as agent misbehaviour rather than a clean failure — the /code-review waiver scan (skills(running-tend): check the /code-review waiver scan when bumping claude_version #926) is one example of a dependency that breaks silently.

No action needed on #918 either way; it followed the rule as written. Filing this so the choice gets made once rather than re-litigated at each weekly bump. Whichever way it goes, the rule in .claude/skills/running-tend/SKILL.md should name the marker and say why — the current "track latest" reads as a default rather than a decision.

Related: #922, on the codex_version rule having a confirmation step that isn't reachable from CI.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions