1---2name: apple-device-validation3description: Apple simulator, physical-device, watch, screenshot, and runtime validation for Swift and SwiftUI apps. Use when building, running, installing, screenshotting, testing, sending to a phone, validating watch parity, diagnosing simulator infrastructure, or proving UI behavior on real Apple devices.4---56# Apple Device Validation78## First Pass910- Resolve the project, scheme, target platform, destination, and requested proof before running tools.11- Prefer XcodeBuildMCP when available for simulator build, run, test, screenshots, UI inspection, and watch/iOS workflows. Verify session defaults before the first build/run/test in a session.12- If using shell tools, record the exact `xcodebuild`, `simctl`, or `devicectl` command and destination.13- Read `references/device-validation-patterns.md` when the task involves screenshots, phone delivery, watch parity, simulator failures, or visual QA.1415## Rules1617- Build success is not visual proof. Use screenshots when layout, typography, color, glass, truncation, watch sizing, or visual hierarchy matters.18- Simulator proof is not always interaction proof. Use physical-device confirmation when touch, drag, sensor, camera, microphone, watch, or install behavior matters and the user asks for confidence.19- Separate infrastructure failure from app failure. Simulator service crashes, device visibility, install-service errors, and screenshot timeouts should not trigger source changes without evidence.20- When asked to send/install to a phone, install only unless the user explicitly asks to launch, uninstall first, or reset state.21- For watch work, validate both the watch surface and the paired-phone projection when behavior crosses devices.22- Keep screenshots deterministic enough to compare: known device, orientation, state, time policy when possible, and stable output folders.2324## Validation2526- Run narrow builds/tests first, then visual or device proof.27- Capture affected screens across the smallest relevant device and a representative larger device when truncation or layout is at risk.28- Keep raw logs or command output long enough to separate app failure from tooling failure.29- Summarize what was actually verified and what remains unverified.