Files
workouts/CHANGELOG.md
T
rzen a8d90b638b Anchor auto-advanced phases at the boundary, not at tick time
The rest/timed-work countdown deadline is shared by both devices, but the
page flip crossing it is a local ticker event — and stamping the *next*
phase's anchor at Date() when that event finally ran baked a sleeping
watch's lateness (throttled wrist-down ticker) into its next count-up,
leaving the two devices permanently offset with nothing on the wire to
correct.

Auto-advances now chain the anchor instead: the finished phase's computed
end (passed out of CountdownPhaseView) becomes the next page's PageAnchor,
with the next window derived from it via liveSnapshot(for:at:). A device
arbitrarily late to a boundary shows exactly what the on-time device shows,
and a stack of missed boundaries fast-forwards itself — each chained page
lands already-elapsed and advances on its own next tick, skipping the
start/stop haptics for boundaries that passed while asleep (only a
just-crossed boundary buzzes).

The remoteAnchor* fields are generalized into one PageAnchor (remote frames
and chained auto-advances are the same concept: a page whose timer counts
from a known instant); the phone's Live Activity emit honors it unchanged.
2026-07-09 05:58:32 -04:00

12 KiB
Raw Blame History

July 2026

Watch and iPhone set timers no longer drift apart when the watch sleeps through the end of a rest.

Swiping through sets on the iPhone now reliably moves the watch along too, instead of the two drifting apart mid-workout.

On Apple Watch, the workout screen now gives its whole display to the set and rest timer, without the form-guide figure shown on iPhone.

Barbells and pull-up bars in the animated form guide now turn with the figure as the view circles, instead of hovering fixed on screen.

The goblet squat form guide now holds the weight at the chest with elbows tucked down, instead of flaring oddly.

Each set you complete is now recorded — adjust the reps or weight you actually did right from the rest screen.

The Weight Progression chart and workout volume now reflect what you actually lifted, not just the plan.

A Live Activity now shows your current exercise, set, and rest countdown on the Lock Screen and in the Dynamic Island.

Any exercise from the library can now be added mid-workout, planned from your last time doing it.

Settings now offers Backups — create snapshots of all your data and restore one with a tap.

A new Diagnostics screen in Settings shows iCloud, document, and network status when sync seems off.

Recording to Apple Health is now handled entirely by the watch, ending occasional duplicate workouts in Health.

Starting a new workout now takes you straight into it instead of back to the list.

The workout summary's heart-rate zone bar gains a numbered legend.

VoiceOver now describes exercise checkboxes, heart-rate zones, and dates naturally, and workout timers scale with your preferred text size.

The Bodyweight Core starter split no longer lists Bird Dog twice — Crunch takes the second slot.

Deleting your last split on the phone now clears the watch too.

Editing an old completed workout no longer moves its finish date to today.

Traveling across time zones no longer leaves a duplicate copy of a workout behind.

Exercise rows in a workout have a cleaner layout — the weight sits beside the exercise name, with sets × reps and any recorded machine settings beneath.

The Splits and Exercises entries in Settings now show how many each contains.

The Abdominal figure's arms no longer bend backward at the elbow, and a few other form guides lose their subtly hyperextended joints.

The exercise library more than doubles — deadlifts, squats, lunges, bench presses, dumbbell work, pull-ups, and the cable stations — each with its own animated form guide.

Machine form guides now slowly circle around the figure too — seats, cables, and pads turn with the body, showing every exercise from all sides.

Form guides are now viewed from a slight elevation, with an exercise mat under the figure that turns with the camera.

The stick figure now has broader, more human proportions with a visible shoulder girdle and pelvis.

The Leg Extension and Leg Curl form guides now press against a roller pad at the ankle, like the real machines.

Bodyweight form guides now slowly circle around the figure while it moves, showing the exercise from every side.

The form-guide figures now have feet — heels rise on calf raises, toes point through leg lifts, and kneeling feet rest naturally.

The Rotary form guide now shows a genuine torso twist, with the arms and bar swinging across the body.

Machine exercises can now store your machine setup — seat height, back-rest position, and other comfort settings — editable from the exercise editor or mid-workout.

The Abductor and Adductor form guides now show the real seated machine motion — facing you, knees swinging apart and together.

Improvements to the built-in starter splits now reach devices that already have them, instead of only fresh installs.

The weight-increase reminder setting has been removed from the exercise editor.

The exercise library now covers the full gym-machine circuit — presses, rows, pulldowns, curls, and the leg and hip machines — each with its own form guide.

Machine exercises now show their equipment in the animated form guide: seats, bars, cables, and roller pads that move with the figure.

The Upper Body starter split now includes Shoulder Press and Arm Curl, and Lower Body adds Leg Extension and Calfs.

Adding an exercise to a split now picks from the app's exercise library — the moves with animated form guides — replacing the old gym-machine and bodyweight starter lists.

Starter routines now appear automatically the first time you use the app, instead of waiting behind a button in Settings.

Editing a starter split now turns it into your own copy, so the built-in version can always be brought back later.

Restore Starter Splits in Settings brings back any starters you've deleted or customized, without duplicating the ones you already have.

Fixed a deleted workout reappearing when your Apple Watch hadn't yet heard about the deletion.

The exercise screen now shows an animated figure demonstrating proper form, starting with the Bodyweight Core moves like Bird Dog and Plank.

New Bodyweight Core starter split: a short warm-up plus a three-round circuit of planks, holds, and slow core moves — no equipment needed.

Opening an exercise you've already completed now shows a big green check instead of dropping you back into its timers.

Timed exercises like planks now show their hold time in exercise lists instead of reps and weight.

When deleting a workout that was saved to Apple Health, you can now choose to remove it from Apple Health too. Workouts recorded by Apple Watch may need to be deleted in the Health app instead.

Sync problems are now shown in Settings instead of failing silently.

Fixed workouts and splits vanishing from the app when iPhone storage ran low: when iOS offloads their files to iCloud to free up space, Workouts now downloads them back automatically instead of treating them as gone.

When the same workout or split is edited on two devices around the same time, all devices now settle on the most recent change instead of some keeping an older version.

June 2026

Your workouts now save to Apple Health and count toward your Activity rings — recorded straight from your Apple Watch with real heart rate and calories, or estimated on your iPhone when you train without your watch.

See your heart rate and calories live on the Apple Watch as you train, and get a summary the moment you finish — duration, active calories, average and max heart rate, heart-rate zones, and total volume — that you can also revisit on any past workout.

Each split can now be set to an activity type — strength, functional strength, HIIT, core, cardio, or cycling — so its workouts are categorized correctly in Apple Health.

You can now choose whether weights show in pounds or kilograms from Settings.

Starting a new workout while another is still going now asks whether to end the current one first or run both in parallel.

Discarding or deleting an in-progress workout on iPhone now takes your Apple Watch out of the workout too, so the watch no longer keeps waking to the workout app when you raise your wrist.

You can now end a workout before finishing every exercise: open the ⋯ menu and choose End Workout, then Save to keep what you did — any exercises you didn't get to are marked skipped — or Discard to remove the workout.

Right after you turn on iCloud Drive, Workouts now waits for it to finish coming online instead of giving up and showing the "turn on iCloud Drive" screen too soon. The connecting screen also keeps you posted as it works, letting you know the first connect can take a moment.

When iCloud Drive is turned off, Workouts now shows a clearer, friendlier screen — explaining that your data lives privately in your own iCloud Drive, with no account or login, and walking you through turning iCloud Drive on.

During an Apple Watch workout, lowering your wrist now keeps the work or rest timer showing its most recent count (marked with a ~) instead of a cut-off "less than a minute".

Add a Workouts complication to your Apple Watch face — tap it to open the app straight from any watch face.

Prop your iPhone up during an Apple Watch workout and it now runs the same live flow side by side — Ready → work/rest → Finish with running timers — and you can drive from either device: swipe ahead, finish a set, or add one on whichever is closer, and the other follows along. Automatic moves, like a rest timer running out, advance both devices on their own.

Editing an exercise or split on iPhone now steps the Apple Watch out of that workout, showing it as "Editing on iPhone" until you're done — so the watch never keeps running an exercise whose plan you're changing.

The app now wears its signature purple: it's the accent color throughout, and a completed exercise is marked with a purple check. In-progress exercises now read as a neutral gray.

Tapping an exercise on iPhone now opens a paged workout run — the same Ready → work/rest → Finish flow as the Apple Watch, with rep sets counting up, timed sets and rests counting down and auto-advancing, plus haptics.

The exercise detail and edit screen moved behind an Edit swipe on the trailing edge; the leading swipe still completes a set.

The iPhone screen now stays awake the whole time the app is open, so a propped-up phone never sleeps during a workout.

The Apple Watch is now a focused workout runner: it opens on the active workout's exercises (or prompts you to start one on iPhone) and lists every in-progress workout at the root.

Each watch exercise runs as a paged Ready → work/rest → Finish flow — count-up work, count-down rests with haptics and auto-advance, One More, and a Done that fires automatically after a countdown.

Added configurable rest-between-sets and Auto-Finish countdown durations in iPhone Settings, synced to the watch.

Starting a workout on iPhone now launches the Apple Watch straight into the session.

Apple Watch set progress is now reliable — a finished set is never un-counted — and reopening an exercise resumes at the first unfinished set instead of restarting at set 1.

Fixed Apple Watch work/rest timers freezing when you lowered your wrist.

Progress made on the Apple Watch now appears on open iPhone screens in real time.

The iPhone app is now iPhone-only; it was inadvertently available on iPad.

New app icon: a tilted dumbbell on a purple gradient, replacing the teal circular mark.

Starter splits are now a curated machine-based routine (Upper Body, Core, Lower Body) at 4×10 with sensible starting weights.

Fixed the exercise set-progress grid not appearing on the first frame.

Fixed tapping an exercise in a workout log opening the wrong screen.

2.0 — Re-platformed sync onto iCloud Drive: your workouts now live as files in iCloud Drive, replacing CloudKit.

Fixed new workouts being marked complete the moment they were created.

Fixed an undismissable delete confirmation dialog.

Fixed toolbar buttons being hidden behind nested navigation.

Removed a placeholder "Settings coming soon" row.

January 2026

Added real-time sync between iPhone and Apple Watch over WatchConnectivity (workouts, splits, exercises, and logs), with workout-log and exercise-progress views on the watch.

Moved Splits into Settings, accessed via a gear button; the main screen became a single Workout Logs view.

Added an exercise screen with set-by-set progress tracking, a weight-progression chart, read-only Plan and Notes tiles with dedicated Edit screens, and auto-dismiss when you finish the last set.

Updated the app icons.

Initial workout tracker for iPhone and Apple Watch: create splits, pick exercises filtered by the current split, and log sets, reps, and weight — with iCloud (CloudKit) sync, a tab-based interface, an SF Symbols icon picker for splits, bundled starter exercise libraries (bodyweight and Planet Fitness), and an About section.