There are so many variables it’s hard to say what is the right direction to take. Each situation is it’s own case. I’m a proponent of post grading on the back end. My son was seventeen when he graduated. It didn’t matter. I know and know of kids who stayed back heading into high school who did not become better college sports prospects.
It really comes down to “do no harm.” If the kid isn’t harmed by being held back, regardless of the end result, so what.