Updated The Rust language community is in disarray following the resignation of the entire moderation team, citing the "structural unaccountability" of the core development team.
The moderation team, represented by Andrew Gallant, posted its resignation to GitHub yesterday, stating that it was "done in protest of the Core Team placing themselves unaccountable to anyone but themselves."
Therefore, the post goes on to explain, "we have been unable to enforce the Rust Code of Conduct [CoC] to the standards the community expects of us."
The team further asked that "Rust Team Members come to a consensus on a process for oversight over the Core Team," acknowledging that being a moderator is "a thankless task, and we did not do our best to recruit new members."
The specific issue or issues giving rise to resignation were not stated. The post was confirmed by Matthieu M and Andre Bogus, also now former team members. Two new moderators have been appointed, Khionu Sybiern and Joshua Gould.
The governance of Rust is formed by 10 teams, with the core team being responsible for "managing the overall direction of Rust, subteam leadership, and any cross-cutting issues."
The moderation team is responsible for "helping to uphold the code of conduct and community standards."
The Code of conduct states that moderation covers "all official Rust venues" including GitHub repositories, Discord channels, and forums under rust-lang.org.
On Reddit, Matthieu M expanded a little on the situation, explaining that most day-to-day enforcement (for example, banning a person from a venue) falls to venue-specific moderators, and that the bulk of the work of the moderation team is responding to specific complaints, in which case they endeavour to mediate, and if that fails, may issue warnings, or temporary or permanent bans.
Interactions with core "are rare," he said, meaning less than once a month, but necessary for bans as "we do not directly enforce bans, instead we ask Core to enforce them for us, and Core will double-check our work (though without access to the case, unless complainants are OK with that)."
Other scenarios are where core enforces a ban and informs the moderation team, or where a core team member is "involved in a complaint."
- The Rust Foundation gets ready to Rumbul (we're sure new CEO has never, ever heard that joke before)
- Keep calm and learn Rust: We'll be seeing a lot more of the language in Linux very soon
- Linux PC shop System76 is building a new desktop environment in Rust
- Latest patches show Rust for Linux project making great strides towards the kernel
Who moderates the core team? That is the issue, Matthieu M commented on Reddit: "It's Undefined Behavior, essentially. The Rust Governance document never explicitly stated that any team would have oversight over the Core Team, nor did it ever state that the Moderation Team should not hold Core Team Members accountable... this has led to the First Rust Governance Crisis."
In a later comment he added: "Communication with Core has failed, there's no team above Core, so... it's up to the members of the Rust Project to organize themselves and decide what to do in term of follow-up."
That said, Rust is governed by RFCs (request for comments) which are discussed and accepted into the Rust repository, one of which concerns governance. This states that "part of the reason to separate the moderation subteam is to ensure that CoC violations by Rust's leadership be addressed through the same independent body of moderators." However, it also states that members of the moderation team "are chosen directly by the core team," which could be an issue in the event of a disagreement.
In the Reddit discussion, Gallant remarked that "if we had an answer to your implied question it will necessarily reveal things (via obvious logical inferences) that we carefully avoided revealing in our statement."
Can the recently formed Rust Foundation help? We spoke to executive director Rebecca Rumbul shortly before the incident, about the relationship between the foundation and the Rust teams, for example, with regard to features in the language. "We are not ruling on these things in the Foundation," she told us. "We've been very careful about that when the Foundation was created last year. That is very much a decision for the project teams, the core team and maintainers."
That said, she "would like to set up resources for the community" so that in the event of disagreements "people within the community have a place to go to mediate those discussions."
We have asked for further comment on the current issue and also approached a core team member but without any response so far. ®
Updated at 16.39 UTC on 23 November to add
Rust HQ has sent us a statement:
The Rust Foundation is committed to supporting the Project. We respect the independence and the decisions of the Project Teams, and we are aware of the changes made today. We want the Project and the language to thrive, and will continue working to achieve that vision.