pistolero (p@fsebugoutzone.org)'s status on Tuesday, 26-Nov-2024 08:39:41 JST
-
pistolero (p@fsebugoutzone.org)'s status on Tuesday, 26-Nov-2024 08:39:41 JST pistolero @irie TL;DR: Yes. Details follow.
> he implies being over a year on the fedi, yet I can only see two or three posts, is this a federation issue?
Yep. What causes posts to be fetched is seeing a reference to them, manual federation, or if they are delivered directly.
Delivering them directly is the expected case: you follow someone, their instance starts sending their posts to your instance. Simple.
For references, the ActivityPub streams are Activities; an Activity has an Actor and an Object. If I smash that like on your post, that's https://fsebugoutzone.org/users/p (Actor, identified by URL) performing a Like (Activity) on a Note (Object type). For you to make the post to begin with, it's https://fsebugoutzone.org/users/irie (Actor), performing a Create (Activity type) on the Note. Pleroma federates activities, so other Pleroma servers will see that I did the Like and they'll see a reference to your post and servers that don't have it will usually fetch it. When I do the reply, that's me doing a Create-Note with the inReplyTo field set to your Note's URL. This is the reason that I think EmojiReact has been a bad thing; it used to be that you follow someone and then your instance's TWKN got posts that that person liked, reposted (an "Announce" activity), replied to, etc.: the idea is that if you are following someone and they interact with a post, this post is likely to be interesting to you. The low-effort interactions (likes and reposts) were positive and if the person disliked the post, they at least had to type a reply, but "throw a bunch of red X's and wrenches at people you hate" meant that low-effort negative interactions started making posts federate, so TWKN starts filling up with things that are *disliked* by the people you follow, their hate-reads started federating. (This is also the reason that relays are usually not useful: it just makes a bunch of posts federate based on the instance rather than being driven by the behavior of the people on the instance.)
Manual federation is also pretty easy: the URL of an object goes into the search box or the OStatus Subscribe endpoint and the instance will fetch it if it doesn't already have it.
So, if someone has posted a lot but no one here is following them and no one here is following someone that interacts with that person's posts, then there's no reason to fetch those posts (and no way to know those posts exist). bae.st, for example, has 324,976,966 activities (which I know because I am importing them into Revolver) and 226,706,183 objects (129,766,248 have been imported so far). baest reported 8,389 local users but there are 1,833,987 actors in the DB; most of them are not local, but there are, at least per Fedilist (I put it on the front page: http://demo.fedilist.com/ ) 16,086,558 users across fedi and 1,628,223,394 posts. (FSE has 832,038 actors in its DB.) Fetching all of it would be a massive task, storing all of it would require a very large amount of space and bandwidth, even without counting media.
There was a feature in Pleroma that would backfill posts, but it interacted poorly with the rest of the codebase: when Pleroma saw a new person, it would fetch the last 10 or 20 posts that person had made. The problem was that this meant that you immediately tried to fetch almost all of fedi: that person's last few posts were likely to include a reply with other people tagged in it, some people had liked those posts, so it fetches the profiles of the other participants in the thread, and they had all participated in other threads with other people, and those threads are all fetched and the people in them got their posts backfilled; it would probably have ended up fetching most of fedi if it had ever completed, but what it mostly did was jam up the instances that tried it.