Skip to content

Add appeal process for moderation decisions - #44

Open
piegamesde wants to merge 2 commits into
mainfrom
appeal-process
Open

Add appeal process for moderation decisions#44
piegamesde wants to merge 2 commits into
mainfrom
appeal-process

Conversation

@piegamesde

Copy link
Copy Markdown
Member

Rationale

The SC is the democratically elected governance body of the NixOS project. The moderation team is trusted by the SC, and accountable to it in its decisions. The appeals process is an option of last resort in order to correct serious moderation mistakes. It exists to build mutual trust in our teams and processes. In order to prevent micro-managing of the moderation team's decisions, only ban decisions—which are severe in nature—can be appealed. (The policy is open as to whether or not it applies to temporary bans, but the SC is free to simply reject all appeals of temp bans on principle.)

Because no ban decision comes without protest from the banned person and/or people close to them, our appeal process needs to be resilient against abuse and regularly having to re-litigate sound decisions, which would cause unnecessary churn and wasting of time. In order to appeal, the banned person is thus required to gather two trusted community members (currently encoded as them being Nixpkgs committers, though this is not fixed) who join the appeal by vouching for the banned person in front of the SC. In the case of a current or former Nixpkgs committer being banned, this restriction is lifted to only requiring one other committer to vouch. This reflects the fact that we put a certain amount of trust into our committers by default.

The timeout exists to prevent people landing in purgatory in case of SC inaction. The heuristic is that if the SC can't bring itself to at least start the process of re-discussing a ban, then it is more likely warranted than not. In theory we might want to have a clause for "SC is too dysfunctional to decide on anything", but honestly if that happens we have other problems (and also hopefully a new SC soon thereafter).

No cooldown is specified because this can be implemented at the discretion of the SC as seen fit.

@cafkafk cafkafk left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for making this, it is definetly a step in the right direction. That said, I do have a few issues with specifics of the process, burden of proof, and transparency I've outlined.

Still, don't take that as me being deeply set against this, it's a major leap in the right direction, and I'm very willing to compromise here to reach a good point.

Comment thread README.md
Individuals banned from the community by the moderation team may appeal the decision to the Steering Committee (SC).

**Eligibility:**
In order to appeal, two current Nixpkgs committers must vouch for the banned individual and affirm that the ban was, in their view, mistaken.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Most of this is just a good improvement, but I do fear that making it two nixpkgs committers might turn the bar into gatekeeping for people that don't know people with structural power.

Imagine if you couldn't appeal a case made against you by the police because you didn't know any civil servants?

I might be drawing a false equivalence, but I do think this is one of the parts that I have most trouble with.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Most of this is just a good improvement, but I do fear that making it two nixpkgs committers might turn the bar into gatekeeping for people that don't know people with structural power.

I'm a bit confused how you can find the proposal a "good improvement" while disagreeing with its very fundamental premise. The proposal's very fundamental underpinning is the notion that given limited moderation capacities, we want to prioritize conflicts involving people who have previously shown care and respect for the community. Because in the end, what a ban really means is "we tried to make things work with you and it didn't work out so it's time to part ways". (Unless you think like a state, in terms of punishment and consequences. See below on that.) And the bar of how much "we tried" is very different depending on the person's standing in the community. This may sound harsh and gatekeepy, but in the end this is just the nature of human social groups: When people in your circle of friends start shouting at each other, I assume you'd be much more inclined to help them get along than if they were mere acquaintances.

Imagine if you couldn't appeal a case made against you by the police because you didn't know any civil servants?

The difference is, we're building a community here, and not a state. In a community, you can ultimately just kick people out and the internet will still be large enough for everyone. A state cannot do that because "kicking out people" quickly becomes ethically and practically unfeasible (not for a lack of trying, according to history books), so all it can do instead is threaten with consequences and apply violence.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm a bit confused how you can find the proposal a "good improvement" while disagreeing with its very fundamental premise.

It's a good improvement because it's an appeals process filling a strutcural and process void. And it's a good shape of one, mostly.

This may sound harsh and gatekeepy

but in the end this is just the nature of human social groups

See, to me , that is a sad fatalism, and absolutely not one I'd want to perpetuate. I completely disagree with this premise. Or well, don't get me wrong, I am deeply pessimistic about humans in general, bordering on misanthropic, but all the more reason I am steering strongly against the direction that enables them, that being harsh and gatekeepy process.

In a community, you can ultimately just kick people out and the internet will still be large enough for everyone

I mean, in tech you can just kick women out, they can find a job another place right? I'm not saying you're saying that, but the argument has the shame core premises, that we can simply narrow ourselves just because others should be able to find another place, which completely ignores the fact that we have a major structural institution in place that will be much worse if it can't contain more people.

At a most basic organizational level, to me this is a failure in having the requisite variety required to run the project well. If we make a gatekeepy appeals process, what's the point?

Comment thread README.md

**Procedure:**
Both the banned individual and the moderation team submit written reports to the SC describing their account of the situation.
In order to promote maximum honesty and trust in the process, these reports are kept internal to SC members only.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd like to add that the person appealing should have to option to make these documents public if they so choose and they don't reveal the private details of e.g. alleged victims, e.g. as determined by the SC.

This is just one way to do it, not the best, but my main point here is that someone in an unjust situaton should be entitled not only to see the allegations against them in full, as well as what material the SC sees against them, but also be able to show to the community the nature of the allegation to keep the SC and moderation team accountable.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The typical policy is that the banned person is free to make anything communicated to them public on their own terms. (Not that any other rule could be enforced, really.) However, if the SC and moderation team talk to each other, then this must be treated with the same privacy as communication among moderators themselves. In my experience, making this entire process public would completely undermine it and render it virtually useless. Conflict thrives in publicity, and having an audience (or even the feeling thereof) significantly changes people's behavior.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

However, if the SC and moderation team talk to each other, then this must be treated with the same privacy as communication among moderators themselves.

I fundamentally disagree with this notion. No, things shouldn't be shared without consent, which is all the more reason the process must get that consent.

I think it is organizational poison to build a process that doesn't give people insight into the specific accusations leveled against them. Totally against this.

Comment thread README.md
Both the banned individual and the moderation team submit written reports to the SC describing their account of the situation.
In order to promote maximum honesty and trust in the process, these reports are kept internal to SC members only.
The SC must then discuss the matter, and either reject the appeal, or initiate a relitigation of the situation, which may involve further discussions with the involved parties.
The SC must lead the process; In the case of SC inaction for more than three months, the appeal is automatically rejected.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is the wrong approach. If the SC is unable to process the appeal, the accussed should be safe defaulted, not the other way around.

That said, it is crucial that we clarify the channels through which these appeals are made. E.g. the emails are essentially a defunct vestigial system from the previous SC that aren't used, so to actually make that work we'd need to have a clear idea about where the appeal channels are and make sure they actually work for the SC (e.g. matrix is too unstable for that, the email isn't really something the SC uses much, whereas zulip is the primary place the SC communicates).

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the SC is unable to process the appeal, the accussed should be safe defaulted, not the other way around.

This is a question of trust. By default, we trust everyone in our community, so if the moderation team can't motion itself towards a ban the default is no ban. But once that has happened, remember that we also trust the moderation team and its decisions, so unless the SC makes a move to re-open the case, that trust and the ban decision stand. This is the difference between "trust with failsafes" and "distrust and micro-management".

That said, it is crucial that we clarify the channels through which these appeals are made. E.g. the emails are essentially a defunct vestigial system from the previous SC that aren't used, so to actually make that work we'd need to have a clear idea about where the appeal channels are and make sure they actually work for the SC (e.g. matrix is too unstable for that, the email isn't really something the SC uses much, whereas zulip is the primary place the SC communicates).

It is the SC's job to be reachable by community members, just as much as the moderation team must be reachable for obvious reasons, but the details of how they may be contacted are an implementation detail not related to this policy.

@nim65s nim65s Jun 1, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A ban is a last resort tool to protect the community.
If the SC can't function nominaly, it should at least not worsen the state of the community I think.
And I believe in that situation, re-including a banned individual as more chances to shake even more the community than to calm things down.

But also, maybe, if someone is banned and then their appeal fail because of a broken SC, they should be allowed to make another appeal with the next sitting SC, after the community got some time to heal and starts working again as expected.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But also, maybe, if someone is banned and then their appeal fail because of a broken SC, they should be allowed to make another appeal with the next sitting SC, after the community got some time to heal and starts working again as expected.

I agree, but do you think this is worth explicitly specifying? Such a situation would only happen in the first place when moderation and at least half of SC have gone rogue. (Side note: the appeal process is only there to prevent against unjust and erroneous bans. Unbanning people for other reasons is not covered by it, as that is just regular moderation business)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure, but I'd lean toward thinking it is not useful to explicit this.
I believe we can trust the SC to make the right choice here, provided it is able to make a choice at all.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a question of trust.

Total disagree as well.

It's not a question about trust, it's a question of who's burden this is on. People shouldn't fail when the SC fails, because the SC will fail.

@cafkafk cafkafk left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think from initial discussions it's becoming clear that personally, I am NOT aligned with the bootstrap teams thinking here. As you've said yourself, this sounds harsh and gatekeepy, and without a detailed explanation, that is how I see it.

@JulienMalka JulienMalka left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Proposal seem like a good compromise between letting people challenge bans for an official process, and respecting the time of our moderation team. Thank you!

@philiptaron philiptaron left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A couple thoughts. I'm happy to see Ban appeals here.

Comment thread README.md
Comment on lines +47 to +48
The SC must then discuss the matter, and either reject the appeal, or initiate a relitigation of the situation, which may involve further discussions with the involved parties.
The SC must lead the process; In the case of SC inaction for more than three months, the appeal is automatically rejected.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I edited the text to highlight that the SC can just accept the appeal upon hearing the argumentation, much of which likely will have nothing to do with re-litigation and more about establishing shared boundaries about acceptable conduct for this individual in community spaces.

I also edited "must" language to highlight who's got the ball with running the process, without claiming this is something that SC is inherently going to prioritize.

Suggested change
The SC must then discuss the matter, and either reject the appeal, or initiate a relitigation of the situation, which may involve further discussions with the involved parties.
The SC must lead the process; In the case of SC inaction for more than three months, the appeal is automatically rejected.
The SC then discusses the matter, either rejecting the appeal, re-litigating the situation, or accepting the appeal and restoring the individual's right to interact in community spaces.
The SC is the one that leads any re-litigating process, not the individual or the moderation team.
In the case of SC inaction for more than three months (90 days), the appeal is automatically rejected.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're proposing explicitly allowing the SC to reverse a ban without even consulting with the moderation team?

@philiptaron philiptaron Jun 5, 2026

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't the written docs above that consultation? I'm not imagining that the SC just goes and does whatever -- but that if the proposal is "we need to either emphasize that this person remains outside the community" or "we need to figure out terms for this person's re-entry", the SC has a decision to make.

  1. Hell yeah.
  2. Hell no.
  3. Maybe, let's talk.

In particular, for a ban appeal, I don't see the SC as fundamentally correcting a past ill but navigating what to do now and in the future.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The reports opposing the ban are submitted to the SC, not the moderation team. So the moderation team, in its report, doesn't have an opportunity to address or rebut anything that is written in the opposition reports.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I read this as having the individual, the SC, and the moderation team as having privileged access to the same information. That's a key point of clarification then. Personally speaking, the moderation / community team is on the inside of privileged information, and I'd like to make sure that's in the rulebook.

@rhendric rhendric Jun 5, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Somewhat separately, issuing a ban is not something the moderation team does lightly. If the SC believes in the people to whom it has delegated the responsibility of moderation, it should not overturn the decisions of the moderation team lightly either.

My personal position is that the business of the SC is oversight, not moderation, and so the SC should not be figuring out terms for a person's reentry (this is something the moderation team does, as part of figuring out whether a permanent or temporary ban is appropriate!). They should be evaluating the performance of the moderation team and, when needed, providing directional corrections. I find it improbable that the SC could do a good job of that without at least some sort of back-and-forth conversation with the team; one written report isn't going to cut it.

Comment thread README.md
Comment on lines +51 to +52
The goal of a relitigation should be for the SC and moderation team to come to a mutually agreed conclusion of the case based on new facts and perspectives brought to the table.
However, in case of irreconcilable disagreement, the SC has the final decision authority over the case.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is highlighting the moderation team / SC as actors, but is missing the individual. The crucial resolution point (one we haven't exercised much at all) is when the appeal is accepted, and on what terms the individual re-enters the community.

Here's my reworded attempt as highlighting that. What do you think?

Suggested change
The goal of a relitigation should be for the SC and moderation team to come to a mutually agreed conclusion of the case based on new facts and perspectives brought to the table.
However, in case of irreconcilable disagreement, the SC has the final decision authority over the case.
The goal of a relitigation is that the individual's standing in the community is clarified and solidified, especially between the SC and the moderation team.
If the appeal is accepted, the individual understands the terms under which they are to re-enter the community.
The SC has the final decision authority over the case, though it is expected to delegate more than direct.

@cafkafk cafkafk left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For the record: I voted against forming this team over concerns it would lead to exclusionary practices. Even so, I've led the internal effort to help the team move the bootstrap process forward and get the rest of the SC engaged in it. I've done my best to handover that mandate to the bootstrap team.

Good faith remains, but several discussions, which are unfortunately not public have made me aware I'm fundamentally misaligned with the SC and bootstrap team here. I cannot support a policy where:

  • Appeals depend on social capital.
  • Someone can face accusations they won't have transparency into.
  • The SC can ignore an appeal to let a ban stand.

My vote is a firm no. These are all strong parts of my platform, and I don't feel comfortable walking back on these. I am stepping back to let the rest of the committee proceed driving the bootstrap process.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants