Mastodon's federation consistency is laughably bad. confusing.
Edit: After reading your comments, and testing some more, I must say that I've misunderstood how it all works.
I should've thought of Mastodon users like separate Lemmy communities...but not exactly. What confused me is the fact that you could look up a profile on a remote instance and see their posts, but they would be very delayed. On Lemmy, if your instance hasn't "discovered" a community, you wouldn't see it at all.
I followed a random user (whos posts were last synced many days ago), and it started syncing normally (it took ~1h for it to start, but it seems like it worked and now it's syncing their posts "in real time").
By accident I noticed that one instance had more japanese posts in the all feed than the other one. I thought maybe the other instance has certain languages filtered or they might be defederated from certain instances, but neither was the case. I found out that the other instance just fetches the posts from other instances much slower (days).
Then I decided to open 10+ (popular to fairly popular) instances and compare how quickly or slowly they sync with each other.
It's really bad and really random. Some instances sync perfectly with each other, some take hours, some take days, some take months...
I do not use Mastodon but if I did, finding that out would just make me not want to use it.
It reminds me of that time when there was a bug in Lemmy which made the federation broken, and that was very annoying, but we knew that there was a bug and that it was being worked on, and it was fixed fairly quickly.
But on Mastodon, from what I've seen, it doesn't even depend on the version the server is running, it truly just seems random.
It just seems odd to me that Mastodon (more popular and older software than Lemmy) would have such a glaring issue.
Wouldn't that be the first priority of every federated platform? For federation to work properly, because if it doesn't, then it can't compete with the centralized ones at all.
The federarion on mastodon is dodgy cos they dont have a central object to federate to/subscribe to like we have in the form of a community. Hence they have all sorts of weird issues of things only federating to instances that are involved in the operation or some shit i cant remeber exactly. End of the day federation favours large instances and suppresses smaller instances. I believe mastodon devs have said this isnt a bug and is intended as as such wont be fixed.
Whats that python flask based lemmy server i would like to take a look at seeing how hard it would be to implement mastodon routes into that and fix the issues.
Getting full Mastodon interop in PieFed is going to be a long road. I urge you to bite off a smaller piece to chew until you get comfortable - https://join.piefed.social
Yeah there are multiple ignored GitHub issues about Mastodon's federation of replies, going back many years. It's never getting fixed. This realisation sent me on a multi-week quest to find a platform that does replies properly. Akkoma and Friendica seem better at replies but have other shortcomings.
It cannot be "fixed" unless you centralize into a single firehose like Xitter and Bluesky.
Those of us running smaller instances can choose to use relays and fetcher-tasks - and there is a PR to put one such fetcher into Mastodon - but if the goal is 100% of everybody always sees 100% of the content then no decentralized solution will ever offer that.
It can be, it just involves contacting the site that hosts the top-level post and having it forward the replies itself. It'd be a change to the distribution model, and not a simple one, but can absolutely be done.
I wouldn't be quite so pessimistic. There's a commit for #FetchAllReplies (by @jonny@neuromatch.social, I believe) that seems to be shaping up well, with a seemingly healthy debate going on. Just yesterday @Gargron@mastodon.social posted in agreement that it is a must-fix issue.
They're moving slow, but their reasons for doing so doesn't seem to boil down to an unwillingness to fix it.