Right, but there's always going to be "something" potentially wrong with almost any free agent you approach.
Ryu was old and injury prone, but he did still give two years of performance on a 4 year deal. This seemed like a very realistic outcome for him. Sure, you would have hoped to get that ~5 WAR season out of him.
Springer really wasn't that "injury prone". He played in 51 out of 60 games in 2020 (85%), 122 out of 162 games in 2019 (75%), 140 out of 162 games in 2018 (86%), 140 out of 162 games in 2017 (86%), and 162 out of 162 games in 2016 (100%). The risk there came from his age + defensive position. Of course, his very first year here he plays the least amount of games he's ever played. Year #2 has now also featured a lingering injury. That outcome was always there as a real possibility, but that's the reality with most free agents. It's been pretty bad luck with that signing so far.
I don't understand the Berrios one. He's "bland", but his AAV on his extension is only $18.7 million. He's a guy who had 3+ WAR in 3 of the 4 seasons prior to him signing that extension (the one outlier season was the shortened 2020 year). 2 of those seasons were 4+ WAR seasons. At ~$18.7 million, anything close to or over 3 WAR is surplus value on his contract. I don't think that anyone expected 28 year old Berrios to pitch at a 0.3 WAR season. It was still a good signing regardless of how bland he was because the guy is rarely if ever injured. He's just been terrible this season.
Age is an obvious risk-factor, but even that one isn't dependable. Look at Carlos Correa - 1.6 WAR season for the Twins and he's only 27. He has a $35 million AAV on his contract.