fix: macOS Tahoe window regression (pin CI runners, rebalance traffic lights)#95
Merged
Merged
Conversation
macos-latest migrated to macos-26 (Tahoe) in June 2026; the new SDK made the desktop build adopt Tahoe's window chrome (misplaced traffic lights + white frame). Pin the desktop and PR-check runners to macos-15 and the Windows CLI build to windows-2025 so the toolchain can't drift silently between releases. CodeQL only analyzes JS/TS, so move it to ubuntu (faster, cheaper, no macOS).
Move trafficLightPosition from {16,12} to {16,18} so the top and left insets
read as balanced under the macos-15 (legacy) window chrome.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
After v1.6.3, the macOS desktop app showed misplaced traffic-light buttons and a white frame around the window β but only on macOS 26 (Tahoe), and only for the released binary (
cargo tauri devand earlier releases looked fine).Root cause is not a source change (the window config/layout/Tauri stack are byte-identical since v1.5.0). It's the runner:
runs-on: macos-latestis a floating label, and GitHub migrated it frommacos-15tomacos-26in June 2026 (staged rollout).macos-26, making it the first build linked against the macOS 26 SDK (codesign -dvvvon the installed app reportsRuntime Version=26.5.0).macos-15, or local CLT SDK 13.3 in dev) render in the legacy appearance and look correct.Verified by patching a copy of the release binary's
LC_BUILD_VERSIONSDK from26.5β15.0and re-signing: the appearance returned to normal, confirming the SDK field is the gate.What changed
CI runner pins (stop the toolchain drifting between releases):
release.yml: desktopmacos-latestβmacos-15; Windows CLIwindows-latestβwindows-2025pr-checks.yml:macos-latestβmacos-15(match the release build env)codeql.yml:macos-latestβubuntu-latest(only JS/TS is analyzed β no macOS toolchain needed)Traffic light position:
tauri.conf.json:trafficLightPosition{16,12}β{16,18}, tuned for the macos-15 (legacy) chrome that now ships. Since dev (CLT SDK 13.3) and the pinnedmacos-15release both render legacy, the dev preview is now a faithful proxy.Follow-up (not in this PR)
When
macos-15nears deprecation, or we decide to adopt the Tahoe design: switch the desktop runner back tomacos-26, re-tunetrafficLightPosition(the sameyrenders higher under SDK 26), and fixtransparent/vibrancy so the new chrome shows frosted glass instead of a white frame.