Stabilize iOS/watchOS/tvOS apps and add cross-platform audit remediation
This commit is contained in:
48
docs/step8_performance_state_round1.md
Normal file
48
docs/step8_performance_state_round1.md
Normal file
@@ -0,0 +1,48 @@
|
||||
# Step 8 Performance/State Round 1
|
||||
|
||||
## Coverage
|
||||
|
||||
- Reviewed and patched:
|
||||
- `iphone/Werkout_ios/DataStore.swift`
|
||||
- `iphone/Werkout_ios/Views/WorkoutDetail/WorkoutDetailView.swift`
|
||||
- `iphone/Werkout_ios/Views/WorkoutDetail/ExerciseListView.swift`
|
||||
- `WekoutThotViewer/WekoutThotViewer/ContentView.swift`
|
||||
- `iphone/Werkout_ios/BridgeModule.swift`
|
||||
- `iphone/Werkout_ios/BridgeModule+Watch.swift`
|
||||
- `iphone/Werkout_ios/BridgeModule+Timer.swift`
|
||||
- `iphone/Werkout_watch Watch App/WatchWorkout.swift`
|
||||
- Validation run:
|
||||
- `./scripts/smoke/smoke_all.sh`
|
||||
|
||||
## Fixes
|
||||
|
||||
1. Coalesced concurrent `fetchAllData` requests
|
||||
- `DataStore` now queues completion handlers while a fetch is active to prevent overlapping network fan-out and state churn.
|
||||
|
||||
2. Reduced AVPlayer churn in iOS workout detail
|
||||
- Reuses current player for same URL by seeking to start instead of recreating `AVPlayer` each time exercise/video updates.
|
||||
|
||||
3. Reduced AVPlayer churn in iOS exercise preview sheet
|
||||
- Added preview URL tracking; same URL now replays without allocating a new player.
|
||||
|
||||
4. Reduced AVPlayer churn in tvOS content loop
|
||||
- Same URL replay now seeks/replays existing player rather than recreating.
|
||||
|
||||
5. Capped queued watch messages on iOS bridge
|
||||
- Added queue cap to prevent unbounded growth while watch is disconnected.
|
||||
|
||||
6. Added queue fallback for send failures
|
||||
- Failed reachable send now re-queues payload for later delivery.
|
||||
|
||||
7. Improved timer power behavior
|
||||
- Added timer tolerance to workout/exercise timers.
|
||||
|
||||
8. Fixed watch heart-rate loop early-return behavior
|
||||
- Non-heart sample types now `continue` instead of exiting handler early.
|
||||
|
||||
## Validation
|
||||
|
||||
- Smoke suite passed:
|
||||
- token scan
|
||||
- SharedCore tests
|
||||
- iOS/watchOS/tvOS builds
|
||||
Reference in New Issue
Block a user