This whole thread is a bit of a tangent, but I'm not sure the STS/LTS distinction makes much sense for the end user. STS gets a relatively generous 2 years of support (cf. Java at 6 months) while LTS gets a relatively anemic 3 years of support (cf. Java at 8+ years [1]). Plus, with yearly releases, every LTS expires at the exact same time as its successor STS. Are STS releases generally less stable or more experimental than LTS releases? Otherwise, this feels like a valueless distinction.
[1]: https://www.oracle.com/java/technologies/java-se-support-roa...
Yes, STS releases tend to be more experimental and the LTS shores up the gaps.
Supporting anything for 8 years is a huge commitment. That means 8 concurrent versions needing at least some work all the time.
I think Microsoft regretted those long (10 years) support guarantees they had for .net framework. In the end, it probably slows you down in terms of innovating