Skip to content

Release v0.64.21 - #9414

Merged
austinywang merged 1 commit into
mainfrom
release-v0.64.21
Aug 3, 2026
Merged

austinywang merged 1 commit into
mainfrom
release-v0.64.21

Conversation

@austinywang

@austinywang austinywang commented Aug 2, 2026 •

Copy link
Copy Markdown
Contributor

Cuts v0.64.21 from 1509 commits since v0.64.20 (Jul 19 -> Aug 2).

Bumps MARKETING_VERSION to 0.64.21 and CURRENT_PROJECT_VERSION to 101, adds the CHANGELOG.md entry, and adds the 0.64.21 changelog-media.ts highlights.

Added: native iPhone/iPad Simulator panes, Mosh transport for remote workspaces, workspace-wide terminal font zoom, Cmd+Shift+T reopen, global workspace focus history on Cmd+[ / Cmd+], surface moves between panes, Dock panes in session restore, closed-workspace recovery, browser profiles from the CLI, sidebar account and pairing controls, critical-pressure agent hibernation. iOS (beta) gains Mac browser-pane streaming, a chronological notification feed, task-composer workspace launch, Tailscale opt-in pairing, haptics, and Open Folders on Tap.

Changed: the iOS peer-to-peer transport is rebuilt on one connectivity authority; iOS terminal scrolling moves to screen-anchored render grids; state sync v2 ships per-record deltas; onboarding is rebuilt around a live agent handoff.

Fixed: leaked openThread loops burning ~90% of idle CPU, workspace-switch renderer freezes, hidden Ghostty renderer memory, Vim Mode cursor rendering, IME composition, zsh prompt wrap spacers, AeroSpace window zombies, ssh-tmux focus and encoding, Codex/Kimi/Grok/Pi session restore, plus ~40 more.

Held out of the notes as flagged-off in Release: the mobile diff viewer (mobile-workspace-changes-enabled-release), annual Pro pricing (pro-upgrade-ui-enabled-release), workspace todo controls, and Cloud VM / agent chat UI. Auto-retry for failed agent sessions is excluded because #9024 was reverted by #9184.

Thanks to 13 contributors, 11 of them from outside the core team.

Do not merge yet: awaiting release owner sign-off.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.


Summary by cubic

Prepares the v0.64.21 release: bumps app versions, updates CHANGELOG.md, and adds changelog-media.ts highlights. The release ships Simulator panes, Mosh for remote workspaces, smoother navigation/restore, and major performance and stability fixes.

  • New Features

    • Native iPhone/iPad Simulator panes with commands and automation.
    • Mosh transport for remote workspaces.
    • Workspace-wide terminal zoom; per-tab zoom persists.
    • Faster navigation and restore: reopen last item, global focus history, move surfaces between panes, Dock panes persist, reopen closed workspaces, target browser profiles from the CLI.
    • iOS (beta): stream Mac browser panes, chronological notifications, task-composer launches, Tailscale pairing, haptics, and Open Folders on Tap.
  • Bug Fixes

    • Reclaimed idle CPU and memory: removed leaked openThread loops, fixed workspace-switch freezes, and freed hidden Ghostty renderer memory.
    • Terminal and input fixes: Vim Mode cursor, IME composition, zsh prompt wrapping.
    • SSH/tmux reliability: focus after promotions, proper named-key encoding, no reply leakage; resolved SSH relay deadlocks and stale status.
    • Session restore: Codex/Kimi/Grok/Pi sessions persist across relaunch; stopped duplicate agent resumes.
    • UI stability: faster PR polling, reliable Dock paste/WD inheritance, browser navigation/screenshot fixes; iOS (beta) smoother scrolling and better performance on large feeds.

Written for commit 0f0d173. Summary will update on new commits.

Review in cubic

Summary by CodeRabbit

  • New Features

    • Added simulator panes for an improved development workflow.
    • Added Mosh transport support.
    • Improved idle resource reclamation to help manage system resources.
    • Enhanced navigation and session restoration.
    • Updated the iPhone beta experience.
  • Release

    • Released version 0.64.21 with updated build information and refreshed changelog documentation.

@coderabbitai

coderabbitai Bot commented Aug 2, 2026 •

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Changes

0.64.21 release

Layer / File(s) Summary
Update Xcode release versions
cmux.xcodeproj/project.pbxproj
Updated application, UI test, app test, and dock tile plugin configurations from version 0.64.20 and build 100 to version 0.64.21 and build 101.
Document 0.64.21 release content
CHANGELOG.md, web/app/[locale]/(landing)/docs/changelog/changelog-media.ts
Added release notes, contributor acknowledgements, and web changelog content for the 0.64.21 features, behavior changes, and fixes.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Suggested reviewers: lawrencecchen


Important

Pre-merge checks failed

Please resolve all errors before merging. Addressing warnings is optional.

❌ Failed checks (1 error, 1 warning)

Check name Status Explanation Resolution
Cmux Full Internationalization ❌ Error The PR adds English-only changelog copy in CHANGELOG.md and changelog-media.ts; the changelog page renders both directly, with no 0.64.21 entries in any web/messages locale. Route 0.64.21 changelog headings, bullets, and media through next-intl or locale data, and add matching translations for all 20 locales in web/i18n/routing.ts.
Description check ⚠️ Warning The description explains the release changes but omits the required Testing, Demo Video, Review Trigger, and Checklist sections. Add the required Testing, Demo Video, Review Trigger, and Checklist sections, and record the release owner sign-off status.
✅ Passed checks (23 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the v0.64.21 release, which matches the primary purpose of the changes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Cmux Swift Actor Isolation ✅ Passed The commit changes only CHANGELOG.md, project version settings, and changelog-media.ts; it contains no .swift file changes, so it introduces no Swift actor-isolation issue.
Cmux Swift Blocking Runtime ✅ Passed The diff changes only CHANGELOG.md, Xcode version settings, and changelog-media.ts; it contains no Swift files or blocking/timing runtime primitives.
Cmux Browser Automation Off-Main ✅ Passed The PR changes only CHANGELOG.md, Xcode version settings, and changelog-media.ts; no rule-scoped browser automation source or policy tests changed.
Cmux Expensive Synchronous Load ✅ Passed The PR changes only CHANGELOG.md, Xcode project version settings, and changelog-media.ts; it adds no production Swift or synchronous agent-history load.
Cmux Cache Substitution Correctness ✅ Passed The diff only adds release text, version settings, and a data-only changelogMedia entry; it does not replace an authoritative read in a persistence, history, undo, or snapshot path.
Cmux No Hacky Sleeps ✅ Passed The diff changes changelog text, Xcode version fields, and static changelogMedia data; it adds no covered sleep, timer, polling, or wall-clock runtime synchronization.
Cmux Algorithmic Complexity ✅ Passed The diff adds only static changelog data in TypeScript plus Markdown and Xcode version metadata; it introduces no loops, scans, sorting, joins, or hot-path algorithms.
Cmux Swift Concurrency ✅ Passed The patch changes only CHANGELOG.md, project.pbxproj, and changelog-media.ts; the verified diff contains no Swift source changes.
Cmux Swift @Concurrent ✅ Passed The PR changes only changelog, Xcode project version settings, and TypeScript media; it adds no Swift files or concurrency annotations.
Cmux Swift Package Boundaries ✅ Passed The PR changes no Swift files. It only updates CHANGELOG.md, changelog-media.ts, and Xcode version settings, so the Swift package-boundary rule is not applicable.
Cmux Swiftpm Lockfiles ✅ Passed The PR changes only version fields in project.pbxproj; no Package.swift, Package.resolved, .gitignore, workflow, or package-reference files changed.
Cmux Swift Logging ✅ Passed The release commit changes only CHANGELOG.md, project.pbxproj, and changelog-media.ts; it adds no Swift or runtime logging code.
Cmux User-Facing Error Privacy ✅ Passed The diff changes only version settings and release-note documentation; it adds no user-facing error, alert, command output, API error body, or recovery message.
Cmux Swiftui State Layout ✅ Passed The release commit changes only CHANGELOG.md, project.pbxproj, and changelog-media.ts; it introduces no Swift or SwiftUI changes to assess.
Cmux Architecture Rethink ✅ Passed The diff changes only changelog text, Xcode version metadata, and TypeScript media; it contains no Swift files or prohibited architectural mechanisms.
Cmux Swift Auxiliary Window Close Shortcuts ✅ Passed The PR changes only CHANGELOG.md, project.pbxproj, and changelog-media.ts; it introduces no Swift window code, so the auxiliary-window rule is not applicable.
Cmux Source Artifacts ✅ Passed The commit changes only CHANGELOG.md, the Xcode project configuration, and changelog-media.ts; all are deliberate release metadata or durable docs content, with no artifact paths added.
Cmux No Test Or Debug Seam In Production Source ✅ Passed The PR changes only CHANGELOG.md, project.pbxproj, and changelog-media.ts; no Swift file under a production Sources path is modified, so no seam is added.
Cmux No Ambient Global State ✅ Passed The reviewed commit changes only CHANGELOG.md, project.pbxproj, and changelog-media.ts; it adds no production Swift files or Swift lines, so the rule is not applicable.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch release-v0.64.21

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot 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.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@CHANGELOG.md`:
- Line 7: Insert a blank line after each CHANGELOG section heading—“Added,”
“Changed,” and “Fixed”—before their associated list items, resolving the MD022
formatting violations.

In `@web/app/`[locale]/(landing)/docs/changelog/changelog-media.ts:
- Around line 29-58: Move the user-facing title and description values for
changelog version 0.64.21 out of changelog-media.ts into the locale catalogs,
using the repository’s established next-intl/localization runtime and message
keys. Add matching 0.64.21 translations for every locale supported by
web/i18n/routing.ts, then update the changelog rendering flow to resolve those
keys for the selected locale.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 4f08a23d-e020-48c5-9211-118327bf98b1

📥 Commits

Reviewing files that changed from the base of the PR and between ff3b4aa and 0f0d173.

📒 Files selected for processing (3)
  • CHANGELOG.md
  • cmux.xcodeproj/project.pbxproj
  • web/app/[locale]/(landing)/docs/changelog/changelog-media.ts

Comment thread CHANGELOG.md

## [0.64.21] - 2026-08-02

### Added

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Add blank lines after the section headings.

markdownlint-cli2 reports MD022 because ### Added, ### Changed, and ### Fixed are followed immediately by list items. Insert one blank line after each heading.

Also applies to: 27-27, 35-35

🧰 Tools
🪛 markdownlint-cli2 (0.23.1)

[warning] 7-7: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below

(MD022, blanks-around-headings)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@CHANGELOG.md` at line 7, Insert a blank line after each CHANGELOG section
heading—“Added,” “Changed,” and “Fixed”—before their associated list items,
resolving the MD022 formatting violations.

Source: Linters/SAST tools

Comment on lines +29 to +58
"0.64.21": {
title: "Simulator Panes, Mosh Transport, Idle CPU Reclaimed",
features: [
{
title: "Native Simulator Panes",
description:
"Run iPhone and iPad Simulators as first-class cmux panes, rendered crisply at real size, with their own commands and automation so an agent can drive the simulator next to the terminal that built it.",
},
{
title: "Mosh for Remote Workspaces",
description:
"Remote workspaces can use Mosh instead of plain SSH, so a laptop that sleeps, changes networks, or loses Wi-Fi picks the session back up instead of dropping it.",
},
{
title: "Idle CPU and Memory Reclaimed",
description:
"Leaked openThread loops that burned about 90% of cmux idle CPU are gone, hidden Ghostty renderers release their memory, workspace switching no longer freezes the renderer, and idle background agents hibernate under critical memory pressure.",
},
{
title: "Navigation and Restore",
description:
"Cmd+Shift+T reopens the last closed item, Cmd+[ and Cmd+] walk global workspace focus history, surfaces move between panes with automatic directional splits, and Dock panes, workspace IDs, and per-tab terminal zoom all survive a restart.",
},
{
title: "cmux on iPhone (beta)",
description:
"Stream Mac browser panes to the phone interactively, follow a chronological notification feed, launch agent workspaces from the task composer, and scroll terminals locally on screen-anchored render grids over a rebuilt peer-to-peer transport.",
},
],
},

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟠 Major | 🏗️ Heavy lift

Move the changelog copy into the locale system.

title and description are user-facing fields, but this change stores English literals directly in changelog-media.ts. Localized routes can therefore show English instead of the selected locale.

Store message keys or locale-specific values in the catalogs, resolve them through next-intl or the repository’s locale runtime, and add the 0.64.21 entries for every locale in web/i18n/routing.ts.

As per coding guidelines, user-facing web and changelog text must use localized APIs and matching catalogs. As per path instructions, this web file must update every supported locale.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@web/app/`[locale]/(landing)/docs/changelog/changelog-media.ts around lines 29
- 58, Move the user-facing title and description values for changelog version
0.64.21 out of changelog-media.ts into the locale catalogs, using the
repository’s established next-intl/localization runtime and message keys. Add
matching 0.64.21 translations for every locale supported by web/i18n/routing.ts,
then update the changelog rendering flow to resolve those keys for the selected
locale.

Sources: Coding guidelines, Path instructions

@austinywang
austinywang merged commit 33ac210 into main Aug 3, 2026
9 checks passed
@coderabbitai coderabbitai Bot mentioned this pull request Aug 3, 2026
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.

1 participant