Skip to content

fix: guard Cloud provider ownership against Nightly regressions - #12568

Merged
austinywang merged 3 commits into
mainfrom
issue-12547-nightly-provider-duplicates-guard
Sep 14, 2026
Merged

austinywang merged 3 commits into
mainfrom
issue-12547-nightly-provider-duplicates-guard

Conversation

@austinywang

@austinywang austinywang commented Sep 14, 2026 •

Copy link
Copy Markdown
Contributor

Fixes the recurring Nightly macOS Cloud-provider compile regression from #12547.

Run 34795035127 failed after the full #12505 revert removed CmuxTuiSurfaceProvider+PendingCreationRecovery.swift while leaving its callers in CmuxTuiSurfaceProviders.swift and CmuxTuiSurfaceProvider+TabRename.swift. The same revert also returned provider state and rename key types to private, even though CloseTerminal and TabRename are separate provider extensions. That produced missing-method, inaccessible-state, and invalid-rename diagnostics before signing.

This repair:

  • restores the pending-creation overlay and receipt metadata in a dedicated, Xcode-wired provider extension under the existing file-length budget;
  • keeps one owner for pending recovery, terminal close, terminal I/O, and tab rename behavior;
  • exposes only the provider-owned state/value types required by sibling extensions and retains the pending tab fallback during close;
  • adds a hosted PR compile guard for Cloud provider sources and project wiring. It runs the same unsigned universal Release cmux build as Nightly, with no signing, notarization, dSYM upload, or publication.

Validation before push:

  • python3 scripts/swift_file_length_budget.py
  • python3 scripts/check-workspace-package-groups.py --check
  • python3 scripts/check-package-resolved-policy.py
  • python3 scripts/localization_catalog.py check
  • bash scripts/lint-pbxproj-test-wiring.sh
  • Ruby YAML parse of the new workflow

The required hosted Release compile and the focused provider test run are dispatched after this PR is opened.


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 recurring Nightly macOS Cloud-provider compile regression from #12547, where a revert removed the pending-creation recovery extension but left its callers in place.

Bug Fixes

  • Restores the pending-creation overlay and receipt metadata in a dedicated provider extension and wires it into the Xcode project, staying within the existing file-length budget.
  • Terminal close now keeps the pending tab ID as a fallback until cleanup, instead of removing it first.
  • Returns provider state, rename key types, and pending structs to internal access so sibling extensions can use them.

New Features

  • Adds .github/workflows/cloud-provider-release-guard.yml, which runs the unsigned universal Release build on PRs touching Cloud provider sources, with no signing or publication.

Written for commit 5306504. Summary will update on new commits.

Review in cubic

@austinywang austinywang self-assigned this Sep 14, 2026
@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 14, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 1 minute.

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: e0f5367b-96bf-476b-8f8f-35a09afaa228

📥 Commits

Reviewing files that changed from the base of the PR and between f9d2490 and 5306504.

📒 Files selected for processing (5)
  • .github/workflows/cloud-provider-release-guard.yml
  • Sources/Surfaces/CmuxTuiSurfaceProvider+CloseTerminal.swift
  • Sources/Surfaces/CmuxTuiSurfaceProvider+PendingCreationRecovery.swift
  • Sources/Surfaces/CmuxTuiSurfaceProviders.swift
  • cmux.xcodeproj/project.pbxproj

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 43ae176 into main Sep 14, 2026
19 of 21 checks passed
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