What We Shipped
4-Step Onboarding Wizard
The old onboarding was a multi-modal mess — too many screens, too much friction. Commit 5f7698b0 replaces it with a clean four-step wizard: profile basics, sport preferences, training zones, and goal setting. Each step validates before advancing, and you can go back without losing state. First impressions matter, and this one finally feels right.
Auto-Detect Threshold Pace & Bike FTP
Commit 1cdd7b71 adds automatic detection of threshold run pace and cycling FTP from imported workout data. When you sync from Garmin or Strava, the system now scans your recent efforts, identifies likely threshold sessions, and populates your training zones accordingly. No more guessing or manual entry for athletes who already have data — just connect and go.
Projected TSS on Mobile Upcoming Workouts
Building on yesterday's desktop work, commit aa8a34e5 brings projected TSS badges to the mobile upcoming workouts list. Athletes can now see stress distribution for their week at a glance on any device, making planning decisions easier before they kit up.
Calendar Reliability Fixes
Three commits cleaned up the calendar view:
dc906a80— Calendar now opens to the current month instead of a stale position cached in localStorage. No more landing on February when it's March.d5c3b740— Fixed duplicate workouts rendering and hidden workout overflow in month view. Workouts that spilled past the visible row limit are now handled with a "+N more" indicator.4affc9bc— Merged the 6-row calendar layout fix, ensuring months that span six weeks display correctly without clipping the last row.
Admin Nav Consolidation
Commit a62eda25 removes duplicate navigation links on mobile admin views. One nav to rule them all.
The Takeaway
A solid Tuesday — onboarding and threshold detection are the headliners. Both directly reduce time-to-value for new users. The calendar fixes are less glamorous but the kind of polish that separates "beta" from "real product." Seven commits, zero regressions.