I'd also add that high-performing teams require psychological safety (e.g. mistakes don't get punished), the research is pretty clear. So punishment is explicit blocking of high-performance.
It depends what kind of mistakes and whether they are repeat mistakes.
Everyone makes mistakes, sure, and that should be accepted, but if they are caused by carelessness or incompetence, or if the same mistake keeps being repeated then there ought to be consequences.
I honestly believe that this is an exception. Most people aren't going to be repeat offenders if proper blameless post-mortems/root cause analysis are performed. It will get to the roots of what actually caused it, and that can provide for a training opportunity.
Incompetence is generally caused by a lack of training, and carelessness is driven by culture. Yes, there really are cases where an individual is a problem, and potentially even needs fired. But most of the time it's the organization and its culture, policies, etc. that are truly at fault.
I think to an high degree it depends on whether the individuals could realistically prevent new instances given resources (e.g. access, head count, number of other high priority tasks, etc.)
Everyone makes mistakes, sure, and that should be accepted, but if they are caused by carelessness or incompetence, or if the same mistake keeps being repeated then there ought to be consequences.
A safe environment does not mean anything goes.