ou might have seen that we’ve been defederated from beehaw.org. I think there’s some necessary context to understand what this means to the users on this instance.
How federation works
The way federation works is that the community on beehaw.org is an organization of posts, and you’re subscribed to it despite your account being on lemmy.world. Now someone posts on that community (created on beehaw.org), on which server is that post hosted?
It’s hosted on both! It’s hosted on any instance that has a subscriber. It’s also hosted on lemmy.ml, lemmygrad.ml, etc. Every instance that has a subscriber is going to have a copy of this post. That’s why if you host your own instance, you’ll often get a ton of text data just in your own server.
And the copies all stay in sync with each other using ActivityPub. So you’re reading the post that’s host on lemmy.world, and someone with an account on beehaw.org is reading the same post on beehaw.org, and the posts are kept in sync via ActivityPub. Whenever someone posts to that community or comments on a post, that data is shared to all the versions across the fediverse, and these versions are kept in sync. So up until 5 hours ago, they were the same post!
“True”-ness
A key concept that will matter in the next section is the idea of a “true” version. Effectively, one version of these posts is the “true” version, that every other community reflects. The “true” version is the one hosted on the instance that hosts the community. So the “true” version of a beehaw.org community post is the one actually hosted on beehaw.org. We have a copy, but ours is only a copy. If you post to our copy, it updates the “true” version on beehaw.org, and then all the other instances look to the “true” version on beehaw to update themselves.
The same goes for communities hosted on lemmy.world or lemmy.ml. Defederation affects how information is shared between instances. If you keep track of where the “true” version is hosted, it becomes a lot easier to understand what is going on.
How defederation works
Now take that example post from earlier, the one on beehaw.org. The “true” version of the post is on beehaw.org but the post is still hosted on both instances (again, it has a copy hosted on all instances). Let’s say someone with an account on beehaw.org comments on that post. That comment is going to be sent to every version of that post via ActivityPub, as the “true” version has been updated. That is, every version EXCEPT lemmy.world and sh.itjust.works. So users on lemmy.world and sh.itjust.works won’t get that comment, because we’ve been defederated from beehaw.org. If we write a comment, it will only be visible from accounts on lemmy.world, because we posted to a copy, but our copy is now out of sync with the “true” version. So we can appear to interact with the post, but those interactions are ONLY visible by other lemmy.world accounts, since our comments aren’t send to other versions. As the “true” version is hosted on beehaw, and we no longer get beehaw updates due to defederation, we will not see comments from ANY other community on those posts (including from other defederated instances like sh.itjust.works).
The same goes for posting to beehaw communities. We can still do that. However, the “true” version of those communities are the ones on beehaw, so our posts will not be shared to other instances via ActivityPub. And all of this is true for Beehaw users with our communities. Beehaw users can continue to see and interact with Lemmy.world communities, but those interactions are only visible to other Beehaw users, since the “true” versions of the Lemmy.world communities (the ones sent to/synced with every other instance) is the Lemmy.world one.
Communities on other instances, for example lemmy.ml, are unaffected by this. Lemmy.world and beehaw.org users will still be able to interact with those communities, but posts/comments from lemmy.world users won’t be visible to beehaw.org users, as defederation prevents our posts/comments from being sent to the version of these posts hosted on beehaw.org. However, as the “true” version is the one on the third instance, we can still see everything from beehaw.org users. So we see a more filled in version than the beehaw users.
I think this is an eminently reasonable take, but I’d like to present what I hope is also a reasonable counterpoint:
A major instance misusing defederation at a time when the broader community is under stress IS an extreme action. In order to reduce their own moderation load, beehaw has:
In short, because defederation is such a heavy hammer with many external costs… it’s a really big deal when a “load-bearing” instance misuses it.
I agree that retaliatory defederation shouldn’t be the norm, especially for small instances. But when a top 5 instance uses defederation carelessly against other top-5 instances, the repercussions reverberate throughout the lemmyverse. It’s probably anti-helpful for
lemmy.world
to act unilaterally in this regard, and it’s probably too much to hope for consensus among other major instances that this is a misuse of defederation… but if 4 of the top 5 largest/most active instances could agree… I would love to see a 2d or 5d period for beehaw to restore federation and if they don’t for the majority of the network to coordinate a permanent defederation with them.I’d then love to see a sort of united nations of major instances established to articulate some minimal cross-instance governance aimed at ensuring individual major instances respond to stresses in ways that accommodate the overall health of the federated network… And sanctions if they don’t. I sort of despair that such a cross-instance body could be established or agree to anything given the differing values of the individuals involved… but when instances hosting a double-digit percentage of active users and communities decide to pop on and off the network willy nilly… that’s bad behavior that imposes costs for every other member of the network and shouldn’t be shrugged aside.