Although the TR charts only really show training distribution, would be interesting what other data they’re collecting . E.g. Garmin is tracking my sleep, resting HR, all day HR, recovery status (based on HRV), my weight via smart scales, etc. Garmin in turn also syncs with MyFitnessPal so if I was bothering to keep a food log that would be sitting in the Garmin database as well. I’ve authorised TR to sync with Garmin, and the TR blurb relating to that sync states that:
By connecting with TrainerRoad, you agree to share information from your Garmin Connect account to enhance your experience with TrainerRoad. This may include activities, location, heart rate and related metrics, calories burned and other health or personal data.
Have to assume therefore that TR has access to some or all of that other Garmin data beyond just ride data.
So of your 4 factors I reckon there’s a good chance TR already have a good data set for the first 3. And goals would be simple enough to add in. Or even just keep it simple and make raising 20 minute power (or ramp test power since it has more of an anaerobic component) the goal for everybody on the basis that it’s the rising tide that lifts all boats.