v4.1.0

cline/clinev4.1.0Jul 31, 2026by saoudrizwan

AI Summary

This release converts the stable extension into a combined A/B package containing both the legacy and new SDK-based extensions. A staged remote rollout ensures most users experience no change, while a small percentage gradually receives the new SDK-based extension with automatic fallback capabilities.

Key Highlights

  • Combined A/B package containing legacy and SDK-based extensions
  • Staged remote rollout controlled by the loader
  • Automatic fallback to legacy extension if the new one fails
  • Shared settings, credentials, and preferences between extensions

New Features

  • SDK-based extension with staged rollout
  • Remote control for window-level extension assignment

Full Release Notes

## What's in 4.1.0

4.1.0 converts the stable extension to a **combined A/B package**: one VSIX containing both the current (legacy) extension and the new SDK-based extension, plus a small loader that activates exactly one per window, controlled by a staged remote rollout.

**For nearly everyone, nothing changes** — the loader activates the same extension you were running in 4.0.12. A small percentage of users (starting at 1%) are gradually opted into the new SDK-based extension, which will become the default for everyone as the rollout completes.

### Details

- The rollout is staged and remotely controlled; assignments apply on window reload, never mid-session.
- If the new extension fails to activate for any reason, the loader automatically falls back to the current extension in the same window — no user action needed.
- Settings, credentials, and preferences are shared: nothing is migrated or lost when a machine switches between the two.
- Tasks created on the new extension aren't visible while on the old one (they return if re-promoted).

Legacy bundle: `legacy-extension` @ 3fdc186f1 (4.0.12 + free-model button wording).
Next bundle: `main` @ 0746ea72bf6.
Rollout machinery: apps/vscode-rollout (see its README for design + runbook).