Skip to content

Revert "Cloud: recover terminal creation through first visible frame" - #12559

Merged
austinywang merged 3 commits into
mainfrom
issue-12505-revert-cloud-recovery
Sep 14, 2026
Merged

austinywang merged 3 commits into
mainfrom
issue-12505-revert-cloud-recovery

Conversation

@austinywang

@austinywang austinywang commented Sep 14, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Reverts #12505, “Cloud: recover terminal creation through first visible frame.” The rollback restores the pre-#12505 Cloud terminal creation and attachment path so opening a terminal does not depend on the newly introduced first-visible-frame readiness gate or deferred surface resolution.

Why

#12505 introduced a readiness contract requiring attachment, replay, and a visible renderer frame before the connection overlay cleared. The reported Nightly behavior included very slow or indefinitely stuck Cloud creation/reconnect overlays. The evidence supports rolling back that lifecycle change; it does not establish a runtime-confirmed single root cause.

Exact rollback scope

Conflict adaptations

Validation

  • git revert -m 1 4f7aca22c6a094998d552029d5ec52f9b66eb4ad completed; revert commit 4d38e75a34.
  • python3 scripts/check-package-resolved-policy.py passed.
  • python3 scripts/swift_file_length_budget.py passed.
  • bash scripts/check-pbxproj.sh passed.
  • python3 -m json.tool Resources/Localizable.xcstrings passed.
  • No obsolete Cloud: recover terminal creation through first visible frame #12505 readiness/creation references remain in Sources, tests, catalog, or project wiring.
  • Remote tagged Debug build was attempted with CMUX_DEV_BACKEND_MODE=off on the shared Mac fleet. The first attempt exposed the existing missing remoteName naming dependency; the compatibility commit 2646f8d269 addresses it. A follow-up build is queued behind a full fleet and remains pending.
  • No local Xcode build, app launch, production backend/VM mutation, or deployment was performed.

Remaining risks

This is an intentional full rollback. It may restore earlier missing-terminal, duplicate-creation, and blank-before-ready limitations that #12505 attempted to address. The revert does not claim those limitations are fixed. A remote isolated connect/reconnect smoke test is still pending capacity; spinner disappearance alone will not be treated as proof that terminal input/output works.

Base synchronization

After opening the PR, this branch was merged with origin/main at 11e2ee0035 (including the incoming #12536 reconnect presentation and #12547 provider duplicate cleanup). The merge kept the single reconnect presentation owner and provider deduplication while removing the startup loading overlay and all obsolete #12505 readiness references.

@coderabbitai

coderabbitai Bot commented Sep 14, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 4 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used all 10 included reviews currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Advanced

Run ID: 43844721-8a1a-4db1-a7e5-8f2274505407

📥 Commits

Reviewing files that changed from the base of the PR and between 11e2ee0 and 03049fd.

📒 Files selected for processing (38)
  • Resources/Localizable.xcstrings
  • Sources/Cloud/CloudManualMirrorPresentation.swift
  • Sources/Cloud/CloudTerminalReadiness.swift
  • Sources/Cloud/CloudTerminalReadinessGate.swift
  • Sources/Cloud/CloudTerminalReadinessPhase.swift
  • Sources/Cloud/CloudTerminalStartupLoadingView.swift
  • Sources/Cloud/CloudTerminalStartupTrace.swift
  • Sources/Cloud/CloudTreeNodeActions+Destination.swift
  • Sources/Cloud/CloudTreeNodeActions.swift
  • Sources/Cloud/CloudTuiCommandLine.swift
  • Sources/Cloud/CloudTuiCreationCoordinator.swift
  • Sources/Cloud/CloudTuiCreationFailure.swift
  • Sources/Cloud/CloudTuiCreationRecovery.swift
  • Sources/Cloud/CloudTuiCreationRecoveryPolicy.swift
  • Sources/Cloud/CloudTuiCreationResolution.swift
  • Sources/Cloud/CloudTuiCreationResolutionState.swift
  • Sources/Cloud/CloudTuiLegacySnapshotParser.swift
  • Sources/Cloud/CloudTuiManualIOInputRouter.swift
  • Sources/Cloud/CloudTuiManualMirrorSession+StartupPresentation.swift
  • Sources/Cloud/CloudTuiManualMirrorSession.swift
  • Sources/Panels/TerminalPanel.swift
  • Sources/Panels/TerminalPanelView.swift
  • Sources/Surfaces/CmuxTuiSnapshotParser.swift
  • Sources/Surfaces/CmuxTuiSurfaceProvider+AttachmentRecovery.swift
  • Sources/Surfaces/CmuxTuiSurfaceProvider+CreationRecovery.swift
  • Sources/Surfaces/CmuxTuiSurfaceProvider+Error.swift
  • Sources/Surfaces/CmuxTuiSurfaceProvider+LayoutCreation.swift
  • Sources/Surfaces/CmuxTuiSurfaceProvider+ManualMirror.swift
  • Sources/Surfaces/CmuxTuiSurfaceProvider+PendingCreationRecovery.swift
  • Sources/Surfaces/CmuxTuiSurfaceProvider+PlacementSync.swift
  • Sources/Surfaces/CmuxTuiSurfaceProviders.swift
  • Sources/Surfaces/Workspace+CloudTerminalLoading.swift
  • Sources/Workspace.swift
  • cmux.xcodeproj/project.pbxproj
  • cmuxTests/CloudManualMirrorPresentationTests.swift
  • cmuxTests/CloudTerminalAttachmentRecoveryTests.swift
  • cmuxTests/CloudTerminalCreationContractRegressionTests.swift
  • cmuxTests/WorkspaceUnitTests.swift

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.

@github-actions

Copy link
Copy Markdown
Contributor

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

@vercel

vercel Bot commented Sep 14, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
cmux166 Error Error Sep 14, 2026 1:56am UTC

@austinywang
austinywang merged commit bb519c9 into main Sep 14, 2026
19 of 23 checks passed
rustybret pushed a commit to rustybret/bmux that referenced this pull request Sep 14, 2026
97f8a15 Merge pull request manaflow-ai#12359 from manaflow-ai/fix/12355-cloud-hover-x
bb519c9 Merge pull request manaflow-ai#12559 from manaflow-ai/issue-12505-revert-cloud-recovery
71fed10 Merge pull request manaflow-ai#12546 from manaflow-ai/issue-12532-agent-notification-flaky
03049fd Merge origin/main into issue-12505-revert-cloud-recovery
11e2ee0 Merge pull request manaflow-ai#12558 from manaflow-ai/issue-12547-nightly-provider-duplicates
2646f8d fix: preserve Cloud rename helper after full revert
cd7fe4c fix: centralize Cloud hover ownership
4415352 test: cover Cloud hover transitions
b6048d7 fix: keep CI diagnostics Python 3.9 compatible
419cf0a Merge pull request manaflow-ai#12549 from manaflow-ai/issue-12536-cloud-reconnect-overlay
d22862e fix: remove stray Cloud provider brace
11e7507 fix: remove stale provider extension brace
4d38e75 Revert "Merge pull request manaflow-ai#12505 from manaflow-ai/issue-12469-cloud-terminal-recovery"
7b0499c fix: parse app-host diagnosis options safely
d62e535 Merge remote-tracking branch 'origin/main' into issue-12532-agent-notification-flaky
1d51466 fix: always report pre-test failures
0eafa93 test(cloud): cover reconnect card dismissal
4a8908b fix: preserve nonzero app-host test exits
231698f test: keep clean app-host exits red
024a915 fix: classify app-host crash markers correctly
4ef3406 test: classify app-host crash output
688d55e fix: keep per-suite test result bundles isolated
ebb9a9a test: distinguish app-host crashes from assertions
458bcdc fix(cloud): use one reconnect presentation owner
925c933 ci: report semantic app-host failure categories
3cbffd0 test: cover semantic app-host failure reporting

# Conflicts:
#	.github/workflows/test-depot.yml

This branch had an error being deployed

1 failed deployment
Preview – cmux166 — 03049fd5 Deployed Sep 14, 2026 by vercel[bot]
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