You're getting downvoted but you're not wrong. Using TERM=xterm-* should be deprecated, and in this case in particular that likely means stepping on some toes.
It's like the user agent string in browsers. Using that instead of checking for feature availability directly is always going to end up in a mess like this over time. Heck, there wasn't a Windows 9 because of how much software would break because they had `if (osversion.startswith("9"))` check to decide if it needs to act in pre-XP mode, long after XP itself was EOL. Most people aren't willing to give up functional workflows on principle alone. "stepping on some toes" massively understates the impact.