if you want some automatic adaption, you need some input data. In the case of TR, you are doing ergo paced intervalls, which means that the power duration curve equals exactly the prescribed intervalls. So basically you simply feed back the output data of the adaption algorithm to its input.
So as long as someone is purely using TR, not feeding in any outdoor rides with some efforts - you have no input data - as input = output.
With the exception of failed workouts (ramp test will always “fail”). Failed workouts could be used as a criterium to reduce intensity - but there is no criteria to raise intensity (other then a e.g. ramp test, but I assumed we want to eliminate testing).
This is why I think you have no other choice then considering e.g. HR to raise intensity.