This is a classic non-apology. It’s well-written enough that it sounds good on quick read, but let’s break it down:

1. They use “We’re sorry you feel that way” to recast the issue as a simple miscommunication.

> We acknowledge that it was an extremely stressful experience, being summoned to an interview with several members of a committee, after a week had passed, and without knowing the nature of the complaint.

2. Now that the goal posts have been moved, they apologize for the miscommunication and hurt feelings, conveniently sidestepping any wrongdoing in their intentions or actions:

> We apologize for causing this stress and will work to improve our process to avoid this from happening in the future

3. They go on to try to defuse the supposed miscommunication by proposing a new narrative that diminishes part of the victim’s original complaint:

> To clarify a crucial miscommunication that we take responsibility for: At the time of the interview, the committee had not determined that there was a violation of the code of conduct, only that there were two complaints filed and being examined. We apologize for not communicating that clearly from the beginning. We have not recommended any enforcement actions.

4. They then immediately contradict the previous point, admitting that they had indeed recommended some enforcement actions (asking the victim to postpone posting their talk) and that they clearly communicated to the victim that a violation had occurred:

> We had asked to postpone the posting of the talk to the JupyterCon shared space until the complaints are resolved. We realize now that we used overly charged language and miscommunicated the stage of the investigation when discussing the complaints, i.e. saying a violation occurred.

5. Their “What we should have done” sidesteps the core of the issue and again tries to rewrite the narrative as a simple miscommunication about an investigation, despite having just admitted they told Jeremey that a violation had occurred.

> We should have been clearer saying multiple complaints have been made and the alleged violation investigation had not been resolved.

6. Finally, they conclude without apologizing for or even acknowledging the core issue of the ridiculous complaints. They move the goalposts to a different team within NumFOCUS, while casually admitting that this new team will be continuing the investigation into Jeremy.

> Because of the missteps of this committee, we have asked the NumFOCUS Board of Directors to take over the work of the committee as outlined in the appeals process of our enforcement guide.

Unfortunately, this non-apology was clearly revised over and over again by someone with significant PR chops. At first read it sounds like they’re taking responsibility and taking action, but a closer read reveals that they’ve simply sidestepped the core issues, apologized for easy straw man arguments, and managed to reframe the debate in the best light possible for themselves.

If NumFOCUS had simply stepped up and dismissed the violations, absolved Jeremey of wrongdoing, and apologized for letting it get this far, we’d all be in a much better place. Instead, the situation is right back where it started (investigation continues behind closed doors at NumFOCUS).