Skip to content

Fix nightly build after Cloud provider merge - #12528

Merged
austinywang merged 1 commit into
mainfrom
issue-12510-nightly-build-fix
Sep 13, 2026
Merged

austinywang merged 1 commit into
mainfrom
issue-12510-nightly-build-fix

Conversation

@austinywang

@austinywang austinywang commented Sep 13, 2026 •

Copy link
Copy Markdown
Contributor

Problem

Nightly Release builds fail in build-nightly-app after Cloud provider compatibility restores were merged on top of the already-restored implementations. Swift reports duplicate terminal I/O and terminal-close declarations, which blocks signing and publication for #12510.

Fix

  • Keep one terminal I/O implementation in CmuxTuiSurfaceProvider+TerminalIO.swift, including the current stdin-based text delivery path and timeout handling.
  • Keep the dedicated CmuxTuiSurfaceProvider+CloseTerminal.swift implementation and remove both stale copies from CmuxTuiSurfaceProviders.swift.
  • Import CmuxCloudMachines where the pane fallback constructs DefaultCloudMachineStore.

This preserves the existing environment/file-delivery/terminal behavior while restoring one protocol implementation per method.

Fixes #12510.

Validation

  • python3 scripts/swift_file_length_budget.py
  • git diff --check

Per request, no local Xcode or test build was run; the hosted Nightly/Release check is the production proof gate.


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

Fixes the nightly build failing after the Cloud provider merge by removing duplicate terminal I/O and terminal-close declarations that Swift rejected.

  • Keeps the single implementations in CmuxTuiSurfaceProvider+TerminalIO.swift and CmuxTuiSurfaceProvider+CloseTerminal.swift and removes the stale copies from CmuxTuiSurfaceProviders.swift.
  • Adds a CmuxCloudMachines import in RightSidebarToolPanel.swift for the pane fallback's DefaultCloudMachineStore.
  • Environment, file delivery, and terminal behavior are unchanged. Fixes Nightly build is failing on main #12510.

Written for commit 488c19a. Summary will update on new commits.

Review in cubic

Summary by CodeRabbit

  • New Features

    • Added support for cloud machine functionality in the right sidebar tools.
  • Changes

    • Terminal input and screen interaction now use the current streamlined handling for text entry, key commands, screen reading, and wait operations.
    • Terminal-closing support was removed from this surface provider; users may no longer be able to close terminals through this interface.

@vercel

vercel Bot commented Sep 13, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated
cmux166 Building Building Preview Sep 13, 2026 10:35pm UTC
cmux41 Building Building Preview Sep 13, 2026 10:35pm UTC

@github-actions

Copy link
Copy Markdown
Contributor

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

@coderabbitai

coderabbitai Bot commented Sep 13, 2026 •

Copy link
Copy Markdown

Review Change StackReview Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Advanced

Run ID: 461b5f15-66a8-4957-b151-458db4b04db0

📥 Commits

Reviewing files that changed from the base of the PR and between b73b602 and 488c19a.

📒 Files selected for processing (3)
  • Sources/RightSidebarToolPanel.swift
  • Sources/Surfaces/CmuxTuiSurfaceProvider+TerminalIO.swift
  • Sources/Surfaces/CmuxTuiSurfaceProviders.swift

📝 Walkthrough

Walkthrough

The changes remove duplicate terminal I/O and terminal-close implementations from surface providers and add the CmuxCloudMachines module import to the right sidebar tool panel.

Changes

Build cleanup

Layer / File(s) Summary
Terminal I/O implementation cleanup
Sources/Surfaces/CmuxTuiSurfaceProvider+TerminalIO.swift
The earlier sendText, sendKeys, readScreen, and waitForScreen implementations were removed. The retained implementations remain.
Terminal close implementation cleanup
Sources/Surfaces/CmuxTuiSurfaceProviders.swift
Both duplicate closeTerminal overload sets and their closeLocalPanes helpers were removed. The provider no longer implements terminal closing.
Cloud machines module wiring
Sources/RightSidebarToolPanel.swift
The CmuxCloudMachines module import was added.

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Bug fix · Severity of issue fixed: Medium

Suggested reviewers: lawrencecchen

✨ 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 issue-12510-nightly-build-fix

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.

@austinywang
austinywang merged commit 6f431a2 into main Sep 13, 2026
15 of 21 checks passed
rustybret pushed a commit to rustybret/bmux that referenced this pull request Sep 13, 2026
f988422 Merge pull request manaflow-ai#12530 from manaflow-ai/issue-12529-vercel-staging-analytics
d49e685 Merge pull request manaflow-ai#12465 from manaflow-ai/issue-12360-cloud-sidebar-ordering
cf9d24e fix(coderouter): make analytics event mapping exhaustive
171a38d test(coderouter): cover API-key analytics events
796b99d Merge latest main terminal IO recovery changes
6f431a2 Merge pull request manaflow-ai#12528 from manaflow-ai/issue-12510-nightly-build-fix
488c19a Fix nightly Cloud provider duplicate declarations
3a895fb Merge latest origin/main sidebar and terminal updates
b73b602 Merge pull request manaflow-ai#12508 from manaflow-ai/issue-7867-nightly-restore-followup
baa4108 Merge pull request manaflow-ai#12483 from manaflow-ai/issue-12477-cloud-sidebar-drag-pane
afa9478 fix: address restore review findings
6072f81 Merge remote-tracking branch 'origin/main' into issue-7867-nightly-restore-followup
3dec5d2 Merge origin/main into issue-7867-nightly-restore-followup
52d6206 Merge latest origin/main Cloud authority updates
186aaff chore: keep merged Swift files within budget
9a5ba73 Merge branch 'main' of https://github.com/manaflow-ai/cmux into issue-12477-cloud-sidebar-drag-pane
225ba4d fix: use merged Cloud agent title authority implementation
f527c20 Merge origin/main and preserve Cloud naming authority
01b7b64 fix: hide unavailable Cloud pane action
efbbe6e fix: hide unavailable Cloud tool panes
7e23742 fix: share Cloud store and stop hidden pane polling
5070aa4 fix: match Cloud workspace identity helper signature
1fb2cf3 fix: expose Cloud close state across provider files
b5cc4de fix: keep Cloud terminal text out of argv
c0063f3 fix: retain whole-tool drag lease in provider
ebf38a0 fix: implement Cloud close terminal protocol entrypoint
db22e2b fix: gate Cloud tool workspace creation
e19a65d fix: expose Cloud pending creation type to extension
a2b68a2 test: expect Cloud mode to be pane-capable
86cc33a fix: gate restored Cloud pane availability
0cdc6bf fix: expose Cloud close state to extension
0131745 fix: place Cloud terminal compatibility file in Surfaces group
c557530 fix: quote Cloud terminal compatibility path
4e4107a fix: isolate Cloud terminal close compatibility
001faa1 Restore Cloud terminal provider compatibility methods
8050eed fix: quote right sidebar tool project path
a0d40df fix: restore Cloud terminal provider primitives after main merge
76403f3 fix: gate Cloud pane command by availability
4417ac0 fix: retain cloud projection identity during restore
97ebc79 fix: localize Cloud pane command
bf9eae5 test: update terminal link fixture for Cloud target resolution
4bbd54f Merge origin/main and preserve Cloud attention in targeted row updates
2f8f5af fix: drag the whole Cloud sidebar tool into panes
e9aafce test: cover opening the whole Cloud tool as a pane
0dd3a55 fix: reconcile failed Cloud renames to accepted names and retain agent ownership across mirrors
6be5b79 fix: converge Cloud titles and raise only workspace folders for notifications
edb1e43 test: reproduce Cloud agent title divergence and terminal notification reorder
df3598c Merge origin/main into issue-12360-cloud-sidebar-ordering
b2755dd test: preserve pending cloud projection restore identity
8314ed2 fix: use the public Bonsplit tab UUID accessor
8c63029 test: adapt sidebar fixture to current machine action API
c7fa0f4 fix: expose localized organization help through shared CLI usage
f2c2abf fix: discard saved sidebar preferences after confirmed machine deletion
91dc646 fix: declare Cloud navigation operations as escaping
1a55885 ci: retain hosted unit test results and fixture screenshots
aaa2ff8 fix: keep the lazy notification queue outside Observation tracking
ccd08e1 refactor: separate persisted sidebar group state
6a9b875 Merge latest origin/main and preserve Cloud sidebar actions
3babe96 clarify: advertise native drag payloads from their actual storage
1df6449 Merge origin/main and preserve Cloud sidebar translations
85889dc fix: unblock Cloud compilation after upstream merges
a744db6 fix: coalesce Cloud notification ordering and share native drag ownership
06e05b2 fix: keep shared-terminal folders stable during notification movement
7c904e3 fix: validate sidebar actions against current catalog and preserve pinned order
74bbd46 Merge origin/main and retain Cloud sidebar organization with VPN controls
aa781bd feat: persist Cloud sidebar organization and route notification movement by identity
437431c test: reproduce missing Cloud sidebar folder move and pin actions

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

This branch was successfully deployed

2 active deployments
Preview – cmux41 — 488c19a2 Deployed Sep 13, 2026 by vercel[bot]
Preview – cmux166 — 488c19a2 Deployed Sep 13, 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.

Nightly build is failing on main

1 participant