Preflight Checklist
What's Wrong?
The auto-updater ignores the autoUpdatesChannel: "latest" setting in settings.json and actively downgrades from latest to stable channel versions. This is the inverse of #46145 (stable users getting latest).
Steps to Reproduce
- Install Claude Code via native installer:
curl -fsSL https://claude.ai/install.sh | bash -s -- latest → installs 2.1.100
- Set
"autoUpdatesChannel": "latest" and "autoUpdates": true in ~/.claude/settings.json
- Launch Claude Code → confirms v2.1.100
- Exit and relaunch → reverted to v2.1.89 (current stable)
The auto-updater re-downloads the stable version and swaps the symlink back:
$ ls -lat ~/.local/share/claude/versions/
-rwxr-xr-x d staff 196886384 Apr 10 07:51 2.1.89 # re-downloaded after deletion
-rwxr-xr-x d staff 200503760 Apr 10 07:35 2.1.100
Even deleting the old stable binary from ~/.local/share/claude/versions/ doesn't help — the updater fetches it again from the network and restores the symlink.
Workaround
Set "autoUpdates": false, manually force the symlink, and update manually:
curl -fsSL https://claude.ai/install.sh | bash -s -- latest
ln -sf ~/.local/share/claude/versions/2.1.100 ~/.local/bin/claude
Expected Behavior
With autoUpdatesChannel: "latest", the auto-updater should check the latest channel and update to the newest latest release — not downgrade to stable.
Environment
- macOS (Darwin 25.4.0, arm64)
- Installed via native installer (
curl -fsSL https://claude.ai/install.sh | bash)
- Claude Code 2.1.100 (downgrades to 2.1.89)
settings.json has "autoUpdatesChannel": "latest" and "autoUpdates": true
Related Issues
Preflight Checklist
What's Wrong?
The auto-updater ignores the
autoUpdatesChannel: "latest"setting insettings.jsonand actively downgrades fromlatesttostablechannel versions. This is the inverse of #46145 (stable users getting latest).Steps to Reproduce
curl -fsSL https://claude.ai/install.sh | bash -s -- latest→ installs 2.1.100"autoUpdatesChannel": "latest"and"autoUpdates": truein~/.claude/settings.jsonThe auto-updater re-downloads the stable version and swaps the symlink back:
Even deleting the old stable binary from
~/.local/share/claude/versions/doesn't help — the updater fetches it again from the network and restores the symlink.Workaround
Set
"autoUpdates": false, manually force the symlink, and update manually:Expected Behavior
With
autoUpdatesChannel: "latest", the auto-updater should check thelatestchannel and update to the newestlatestrelease — not downgrade to stable.Environment
curl -fsSL https://claude.ai/install.sh | bash)settings.jsonhas"autoUpdatesChannel": "latest"and"autoUpdates": trueRelated Issues