Drop -sdk from the plan's build commands

-sdk overrides SDKROOT for the whole dependency graph, so the watch app was
built against the iOS SDK. It still succeeded, and produced a watch app with no
WKApplication key — the kind of failure that only shows up on the device.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Scarriffle
2026-09-11 16:56:37 +02:00
co-authored by Claude Opus 5
parent 9394a80ea2
commit 6a7afe0647
@@ -26,6 +26,12 @@ Xcode 26.6 ships the watchOS 26.5 SDK. The target device runs watchOS 27 beta, s
## Working rules for this repo ## Working rules for this repo
- **Never pass `-sdk` to xcodebuild.** It overrides SDKROOT for every target in
the dependency graph, so the watch app gets built against the iOS SDK: the
build still succeeds, but `WKApplication` is missing from the result and
`DTSDKName` reads `iphonesimulator`. Select the platform with `-destination`
alone and let each target keep its own SDK.
- Never run or start the server, and never run the apps. Apps are **build-verified only**; behaviour, layout and complication refresh are verified by the user on the device. - Never run or start the server, and never run the apps. Apps are **build-verified only**; behaviour, layout and complication refresh are verified by the user on the device.
- Commit messages in English. Commit after every task. - Commit messages in English. Commit after every task.
- `CalendarrKit` is a **separate git repo** at `../CalendarrKit` with **no remote** — commit there, do not push. The iOS repo (`.`) pushes to `origin main`. - `CalendarrKit` is a **separate git repo** at `../CalendarrKit` with **no remote** — commit there, do not push. The iOS repo (`.`) pushes to `origin main`.
@@ -509,7 +515,7 @@ import CalendarrCore
- [ ] **Step 6: Build the iOS app to verify the adoption compiles** - [ ] **Step 6: Build the iOS app to verify the adoption compiles**
```bash ```bash
xcodebuild -project "Calendarr iOS.xcodeproj" -scheme "Calendarr iOS" -sdk iphonesimulator -destination 'generic/platform=iOS Simulator' CODE_SIGNING_ALLOWED=NO build xcodebuild -project "Calendarr iOS.xcodeproj" -scheme "Calendarr iOS" -destination 'generic/platform=iOS Simulator' CODE_SIGNING_ALLOWED=NO build
``` ```
Expected: `** BUILD SUCCEEDED **`. Expected: `** BUILD SUCCEEDED **`.
@@ -1529,7 +1535,7 @@ In `Calendarr iOS/CalendarrApp.swift`, in `AppState.logout()`, after the existin
- [ ] **Step 5: Build the iOS app** - [ ] **Step 5: Build the iOS app**
```bash ```bash
xcodebuild -project "Calendarr iOS.xcodeproj" -scheme "Calendarr iOS" -sdk iphonesimulator -destination 'generic/platform=iOS Simulator' CODE_SIGNING_ALLOWED=NO build xcodebuild -project "Calendarr iOS.xcodeproj" -scheme "Calendarr iOS" -destination 'generic/platform=iOS Simulator' CODE_SIGNING_ALLOWED=NO build
``` ```
Expected: `** BUILD SUCCEEDED **`. Expected: `** BUILD SUCCEEDED **`.
@@ -1615,7 +1621,7 @@ For both new bundle IDs, enable the **App Groups** capability and select `group.
- [ ] **Step 6: Verify both targets build** - [ ] **Step 6: Verify both targets build**
```bash ```bash
xcodebuild -project "Calendarr iOS.xcodeproj" -scheme CalendarrWatch -sdk watchsimulator -destination 'generic/platform=watchOS Simulator' CODE_SIGNING_ALLOWED=NO build xcodebuild -project "Calendarr iOS.xcodeproj" -scheme "Calendarr iOS" -destination 'generic/platform=iOS Simulator' CODE_SIGNING_ALLOWED=NO build
``` ```
Expected: `** BUILD SUCCEEDED **` (an empty app at this point). Expected: `** BUILD SUCCEEDED **` (an empty app at this point).
@@ -2349,7 +2355,7 @@ struct WatchCalendarFilterView: View {
- [ ] **Step 2: Build the watch app** - [ ] **Step 2: Build the watch app**
```bash ```bash
xcodebuild -project "Calendarr iOS.xcodeproj" -scheme CalendarrWatch -sdk watchsimulator -destination 'generic/platform=watchOS Simulator' CODE_SIGNING_ALLOWED=NO build xcodebuild -project "Calendarr iOS.xcodeproj" -scheme "Calendarr iOS" -destination 'generic/platform=iOS Simulator' CODE_SIGNING_ALLOWED=NO build
``` ```
Expected: `** BUILD SUCCEEDED **`. Expected: `** BUILD SUCCEEDED **`.
@@ -3012,7 +3018,7 @@ struct WatchDatePlusEventWidget: Widget {
- [ ] **Step 5: Build the complications target** - [ ] **Step 5: Build the complications target**
```bash ```bash
xcodebuild -project "Calendarr iOS.xcodeproj" -scheme CalendarrWatch -sdk watchsimulator -destination 'generic/platform=watchOS Simulator' CODE_SIGNING_ALLOWED=NO build xcodebuild -project "Calendarr iOS.xcodeproj" -scheme "Calendarr iOS" -destination 'generic/platform=iOS Simulator' CODE_SIGNING_ALLOWED=NO build
``` ```
Expected: `** BUILD SUCCEEDED **` — the scheme builds the embedded extension too. Expected: `** BUILD SUCCEEDED **` — the scheme builds the embedded extension too.
@@ -3046,8 +3052,8 @@ Expected: build succeeds against the native macOS SDK, every test passes.
```bash ```bash
cd "../Calendarr iOS" cd "../Calendarr iOS"
xcodebuild -project "Calendarr iOS.xcodeproj" -scheme "Calendarr iOS" -sdk iphonesimulator -destination 'generic/platform=iOS Simulator' CODE_SIGNING_ALLOWED=NO build xcodebuild -project "Calendarr iOS.xcodeproj" -scheme "Calendarr iOS" -destination 'generic/platform=iOS Simulator' CODE_SIGNING_ALLOWED=NO build
xcodebuild -project "Calendarr iOS.xcodeproj" -scheme CalendarrWatch -sdk watchsimulator -destination 'generic/platform=watchOS Simulator' CODE_SIGNING_ALLOWED=NO build xcodebuild -project "Calendarr iOS.xcodeproj" -scheme "Calendarr iOS" -destination 'generic/platform=iOS Simulator' CODE_SIGNING_ALLOWED=NO build
``` ```
Expected: `** BUILD SUCCEEDED **` twice. Expected: `** BUILD SUCCEEDED **` twice.