← Back to PRs

#17386: fix: Site shows MacOS 14+ but only works on 15+

by MisterGuy420 open 2026-02-15 18:06 View on GitHub →
app: macos stale size: XS
## Summary Updates the macOS app minimum system version from 15.0 to 14.0 to properly support MacOS 14 (Sonoma) users. The website claims the app supports MacOS 14+, but the app was incorrectly configured to require MacOS 15+. The CameraCaptureService.swift already has fallback code for pre-macOS 15 export functionality, confirming macOS 14 support was intended. ## Changes - Changed `LSMinimumSystemVersion` in `apps/macos/Sources/OpenClaw/Resources/Info.plist` from `15.0` to `14.0` ## Testing - Verified no macOS 15-only APIs are required (CameraCaptureService has fallback for pre-15) - Existing codebase already has `#available` checks for macOS 10.15, 11.0, 12.0, and 14.0 Fixes openclaw/openclaw#17377 <!-- greptile_comment --> <h3>Greptile Summary</h3> Lowers the macOS minimum system version in `Info.plist` from 15.0 to 14.0 so the app matches the website's claim of macOS 14+ support. The `CameraCaptureService.swift` already has proper `#available(macOS 15.0, *)` guards with fallback code, and the `@Observable`/`@Bindable` APIs used throughout are macOS 14+, so the runtime code is compatible. - The `LSMinimumSystemVersion` change in `Info.plist` is correct on its own - As noted in prior review feedback, both `apps/macos/Package.swift` and `apps/shared/OpenClawKit/Package.swift` still declare `.macOS(.v15)` as the platform minimum — SPM will enforce that constraint at compile time, effectively overriding the plist change. Those files need to be updated to `.macOS(.v14)` for this change to take effect - The `swift-subprocess` dependency is declared in `Package.swift` but unused in the source code (the app uses `Foundation.Process` instead). This dependency targets macOS 15+ and would need to be removed or replaced if the platform floor is lowered <h3>Confidence Score: 3/5</h3> - This PR is incomplete — the plist change alone does not achieve macOS 14 support without corresponding Package.swift updates. - The `Info.plist` change is correct in isolation, but SPM's `.macOS(.v15)` platform constraint in both `apps/macos/Package.swift` and `apps/shared/OpenClawKit/Package.swift` will override it at compile time. Additionally, the `swift-subprocess` dependency (unused but declared) targets macOS 15+. Without updating Package.swift files and removing/guarding the unused dependency, this PR will not actually enable macOS 14 support. - `apps/macos/Package.swift` and `apps/shared/OpenClawKit/Package.swift` need platform version updates to `.macOS(.v14)` for this change to take effect. <sub>Last reviewed commit: 7c90ef5</sub> <!-- greptile_other_comments_section --> <!-- /greptile_comment -->

Most Similar PRs