This is how the owners spin the current system, it’s intended to work exactly like that. Free agency after the end of the season when you’ve accumulated 6 years of service time. But because of how they calculate service time you end up with guys under control for 7 seasons or longer.
Until they remove the “days of service” as the way the calculate a season, the problem still exists. The wording has to be concrete.
For me, it’s simple, any player who is first called up in any season, it’s free agency at the end of the 6th season from the debut date or as of the end of the season where you’re 29, or you turn 29 after the current season but before the next one starts, whichever comes first. End of story. No calculations of days of the season. Called up the first game of the season in 2022 at age 21? Congrats, you’re a free agent at the end of 2027. Called up on the last day of the season in 2022? Free agent after 2027.
I don’t care how many games you play, or days spent on the roster in any year. Send him to the minors? Doesn’t matter. DFA’d at any point and removed from the 40 man in 2025, only to re-sign and not make the 40 man again until 2027? Too bad. Still a free agent after 2027. Signed elsewhere? Oh well, that team has to let you go after 2027.
Any player of course could still sign an extension to negate this if they were offered the chance.
Same scenario with a guy who’s 24 at his debut in 2022, except he gets to be a free agent a year earlier.