2.8 KiB
2.8 KiB
M49 iOS Device Validation
Status
- Plan:
M49_IOS_DEVICE_VALIDATION - Status:
IN_PROGRESS - Activated: 2026-09-06
- Baseline:
1c2ed4a(M48_UI_LAYER_CLEANUPclosure) - Owner request: make the current playable MVP installable on a real iPhone for visual and touch validation.
Objective
Prepare a Godot iOS export path and an Xcode project that can be installed on the owner's device. This plan covers local debug/device validation only; it does not authorize TestFlight, App Store submission or release packaging.
Player-visible stopping point
- The project has an iOS export preset with a unique owner-approved Bundle ID, Apple Team ID and landscape orientation.
- Godot exports an Xcode project without changing gameplay, UI, Save/Receipt, content or static-master assets.
- Xcode can build and install a debug app on the owner's connected iPhone after the owner trusts the developer certificate.
- A short device checklist covers touch targets, safe area, rotation, text scale and the Market → Readiness → Battle Result loop.
Required owner inputs
- Apple Developer Team ID (10-character value).
- Desired unique Bundle ID, for example
com.yourdomain.aetherboundguild. - iPhone connected to the Mac with Developer Mode enabled and the owner signed into Xcode, if automatic signing is selected.
Ordered steps
M49-A — Export contract and preflight (IN_PROGRESS)
- Freeze the local-device-only scope and required owner inputs.
- Confirm macOS/Xcode/Godot prerequisites and absence of an existing iOS preset.
M49-B — iOS export preset
- Add the owner-provided Team ID, Bundle ID and landscape settings to the Godot iOS preset.
- Keep generated Xcode output outside Git.
M49-C — Local Xcode device install
- Export the Xcode project, open it in Xcode and build to the connected device.
- Resolve only signing/device setup issues; do not upload or distribute.
M49-D — Device visual/touch handoff
- Run the first-cycle checklist on device and record viewport/safe-area issues.
- Update the checkpoint and hand off the repeatable install command.
Acceptance checks
- iOS preset is present and has non-placeholder Team ID/Bundle ID values.
- Xcode debug build installs and launches on the owner's device.
- Landscape orientation, touch targets and the three representative UI pages are verified on device.
- No TestFlight/App Store or release-ready claim is made.
Frozen scope
- No gameplay, economy, content, routing, Save/Receipt or art changes.
- No TestFlight upload, App Store record creation or distribution signing.
- Keep generated Xcode projects, Archives and provisioning files outside Git.
Commit boundaries
M49-A: plan/checkpoint/ledger activation.M49-B: iOS export preset.M49-C: local Xcode install evidence.M49-D: device handoff.