tl;dr — how do PieFed/Lemmy/Mbin handle cross-posting?
Currently, when a NodeBB admin moves a topic from the uncategorized pseudo-category into a local category, we federate out an as:Announce
, people typically think of that as a “boost” or “share”.
That worked fine when the entirety of the category list was your local categories plus the “uncategorized” pseudo-category. However, now that NodeBB is moving towards supporting remote categories (via group actors), this UX makes less sense. We wouldn’t want to “move” a topic out of the category it is supposed to be in, just for visibility to other local users. Additionally, topic moving was limited to administrators, and from the get-go we knew it would eventually cause issues because people other than admins would want to share topics to other local users.
This is where the “cross-post” functionality comes in, which is entirely new to NodeBB. I don’t think this is new to other AP-enabled threaded discussion software. The idea would be that if a new topic comes in, whether it’s uncategorized or not, any user could “cross-post” that topic to a local category, where it would be visible to other users on that instance. On the ActivityPub side, we would then federate out an as:Announce
as we already do.
Is this what PieFed/Lemmy/Mbin already do, if they support cross-posting? What other alternative solutions would there be to this problem?
cc @rimu@mastodon.nzoss.nz @andrew_s@piefed.social @nutomic@lemmy.ml @bentigorlich@wehavecookies.social
One thing that you have to consider is that some forums and categories might have post permissions attached to them. For example, many Hubzilla forums restrict creating new posts to members of the forum. (To become a member of a forum, you would need to connect to or follow the forum, and then be allowed to join by the administrator, either automatically or by admin approval.) In that case, not everyone can create a new top level post. There may also be comment restrictions as well, regarding who can comment on a post in the forum.
If you were to cross post between multiple forums or categories, if you want them to be synced, you would have to take into account the relevant permissions, and decide what to do with posts that don’t conform.
One option is for the admin of a forum to allow which other forums they allow a full sync (ignoring existing forum permissions and providing an exception for other trusted forums). If a cross-posted post comes from a non-trusted forum, then no exceptions will be allowed and the existing forum permissions are enforced.
Of course, nothing has to be done about this and we can just let the forums enforce their own permissions. But if we don’t communicate these permissions, some users might not realize why their cross-post has been silently dropped since the UI does not make it clear that a user had to be a member of certain forums to post to that forum.
@scott@loves.tech how does Hubzilla communicate this to other 'za instances?
Something like a boolean for whether the public can post would take you part of the way there.