I've been wondering about a technical solution to this problem for a while now. It seems like a properly distributed social media network would still need moderation... but who is to say everyone has to use the same moderators? What if we distributed the task of content moderation and allowed users to subscribe to a moderation team the same way they subscribe to a friend's updates? In this way, users could tune their own bubble rather than being strictly required to adhere to a centralized set of guidelines.
I believe you are describing federated networks such as mastodon [1] and matrix [2] Individual servers/clusters can be moderated by their operators. I've not run either of those, but I have run IRC servers that can work in a similar model.
"When you vote in favour of a person, you are making that person a moderator for yourself, regardless of whether they win the vote or not.
In other words, you cannot vote yes for that person in public, and have them disabled as a mod in private. Your vote for a person is you making that person a mod for you. The reverse also applies, if you disable a person from being a mod, that is an impeachment vote.
Election makes it so that the people who come into a community, who have not chosen or disabled that particular mod by themselves, will use the mod list shaped by the elections. If a user has explicitly chosen a particular person to be a mod in that community, that takes precedence. Likewise, if a user has disabled a mod, that person will never be a mod for that user, regardless of the results.
If a mod you voted against (a mod you disabled / impeached / voted against) takes a mod action, that is ignored by your client, and has no effect. If a mod that you have taken no action on takes a mod action, it is accepted, but only so long as there is no action in reverse from a mod that you have explicitly voted for. If you don’t like actions of a mod you haven’t voted for is bothering you, you can easily disable that mod, and render them ineffectual."
Publish all content to blockchain and let the users create their own interfaces as they choose. But first make all content equally and indisputably available?