Stabilize iOS/watchOS/tvOS apps and add cross-platform audit remediation
This commit is contained in:
53
docs/step12_hardware_disconnect_pass.md
Normal file
53
docs/step12_hardware_disconnect_pass.md
Normal file
@@ -0,0 +1,53 @@
|
||||
# Step 12 Hardware Disconnect/Reconnect Pass
|
||||
|
||||
## Date
|
||||
|
||||
- 2026-02-11 (UTC timestamp used during check: `2026-02-11T18:45:42Z`)
|
||||
|
||||
## Coverage Attempted
|
||||
|
||||
- Device inventory:
|
||||
- `xcrun xcdevice list`
|
||||
- iOS destination eligibility:
|
||||
- `xcodebuild -project iphone/Werkout_ios.xcodeproj -scheme 'Werkout_ios' -showdestinations`
|
||||
- watchOS destination eligibility:
|
||||
- `xcodebuild -project iphone/Werkout_ios.xcodeproj -scheme 'Werkout_watch Watch App' -showdestinations`
|
||||
|
||||
## Findings
|
||||
|
||||
1. Hardware watch pass could not be executed from this environment.
|
||||
- Evidence:
|
||||
- watch scheme showed simulator destinations only under available destinations.
|
||||
- the only physical watch destination was ineligible:
|
||||
- `Hollie’s Apple Watch` with error indicating watchOS version mismatch/unknown against deployment target `watchOS 9.4`.
|
||||
2. Physical iOS devices are present/eligible.
|
||||
- Evidence:
|
||||
- available iOS hardware destinations included:
|
||||
- `Gary Tartt’s iPad`
|
||||
- `ihollieb`
|
||||
- `Peeeeeeeeellll`
|
||||
3. Physical watch pairing/connectivity state is the blocking dependency for true hardware disconnect/reconnect validation.
|
||||
|
||||
## What Was Added For Immediate Re-Run
|
||||
|
||||
- Hardware run script:
|
||||
- `scripts/hardware/watch_disconnect_hardware_pass.sh`
|
||||
- Script behavior:
|
||||
- validates eligible physical iOS + watch destinations
|
||||
- performs hardware-targeted preflight builds (`CODE_SIGNING_ALLOWED=NO`)
|
||||
- emits manual disconnect/reconnect checklist and pass criteria artifact
|
||||
|
||||
## Manual Hardware Scenario (Pending Once Watch Is Eligible)
|
||||
|
||||
1. Start iOS + watch apps on physical paired devices.
|
||||
2. Start workout from iOS.
|
||||
3. Break transport (Bluetooth off on iPhone or Airplane Mode on watch) for ~30s.
|
||||
4. While disconnected, trigger multiple state changes on iOS.
|
||||
5. Reconnect transport and verify watch converges to latest state without crash/replay loop.
|
||||
6. Repeat for two disconnect/reconnect cycles.
|
||||
|
||||
## Current Status
|
||||
|
||||
- Blocked on eligible physical watch destination.
|
||||
- Queue/replay behavior is covered by automated tests in `SharedCore/Tests/SharedCoreWatchOSTests/BoundedFIFOQueueTests.swift`, but physical transport behavior remains unverified until watch eligibility is fixed.
|
||||
- In this Codex shell, scripted destination probing/building is additionally constrained by sandboxed write restrictions to Xcode/SwiftPM cache paths; manual run on your local terminal is expected once watch hardware is eligible.
|
||||
Reference in New Issue
Block a user