# Step 7 UI/State/Accessibility Round 1 ## Coverage - Reviewed and patched high-traffic iOS/watchOS UI paths: - workout browsing, planned workouts, workout detail, create-workout flow, login, watch main view - Ran validation: - `./scripts/smoke/smoke_all.sh` ## Fixes Applied 1. Create workout state consistency and duplicate-submit prevention - `iphone/Werkout_ios/Views/CreateWorkout/CreateViewModels.swift` - Added `isUploading` gate, title trimming validation, shared `WorkoutValidation` integration. 2. Weight stepper logic bug - `iphone/Werkout_ios/Views/CreateWorkout/CreateViewModels.swift` - Fixed weight decrement mismatch (`-15` to `-5`) to match increment behavior. 3. Create-workout UX cleanup and accessibility - `iphone/Werkout_ios/Views/CreateWorkout/CreateWorkoutMainView.swift` - Replaced visible sentinel row with hidden spacer, disabled upload button while uploading, added button labels/hints. 4. Superset editing accessibility/state - `iphone/Werkout_ios/subview/CreateWorkoutSupersetView.swift` - Avoided sheet toggle race by setting `showAddExercise = true`; added accessibility labels/hints. 5. Exercise action controls accessibility - `iphone/Werkout_ios/Views/CreateWorkout/CreateExerciseActionsView.swift` - Added accessibility labels to steppers and icon-only controls. 6. Workout list/planned list row accessibility - `iphone/Werkout_ios/Views/AllWorkouts/AllWorkoutsListView.swift` - `iphone/Werkout_ios/subview/PlannedWorkoutView.swift` - Converted tap-only rows to plain `Button`s for VoiceOver/focus reliability. 7. Workout detail list ordering/scroll stability - `iphone/Werkout_ios/Views/WorkoutDetail/ExerciseListView.swift` - Aligned list ordering with sorted superset order and introduced stable row IDs for consistent scroll targeting. 8. Workout detail control accessibility + progress text guard - `iphone/Werkout_ios/Views/WorkoutDetail/WorkoutDetailView.swift` - Added accessibility labels to icon-only controls and avoided negative progress display. 9. Login form input/accessibility improvements - `iphone/Werkout_ios/Views/Login/LoginView.swift` - Added keyboard/input autocorrection settings and accessibility labels/hints. 10. HealthKit auth safety/logging in all-workouts screen - `iphone/Werkout_ios/Views/AllWorkouts/AllWorkoutsView.swift` - Removed force-unwrapped HK types and added runtime warning on failed authorization. 11. watchOS no-workout screen and accessibility polish - `iphone/Werkout_watch Watch App/MainWatchView.swift` - Replaced emoji placeholder with clear status text/icon and added combined accessibility labels. ## Validation - Smoke suite passed after fixes: - token scan - SharedCore tests - iOS/watchOS/tvOS builds