• 0 Posts
  • 14 Comments
Joined 5 months ago
cake
Cake day: March 24th, 2024

help-circle


  • cleaning up dead communities isn’t a great experience as it is today.

    admins could purge communities, but this can cause unexpected breakages with other activitypub software that is more strict about cryptographic verification, as purging a community erases all information about it from the local instance, including the cryptographic private key. purging a community also only removes it on the local instance, so other instances would still have a cached (although possibly marked as deleted) copy of it. this would be the only method that frees up the name to allow creating a new community under the same name later on. locally this would also remove all posts and comments associated in that community, but other instances may think that they have users subscribed to the community and may still have posts and comments in there. this also means if a new community is created with the same name again, the local instance will still not know about older posts, but users on other instances might see them still, and the local moderator might be unable to interact with them at all, e.g. to potentially remove old problematic content.

    the next option is removing a community as (instance-)moderator action. this will only mark the community as removed without further impact. regular users won’t be able to access the community on the local or any other instance anymore, but its contents are preserved in case it gets restored at a later point in time. the name is not released and there isn’t even an error message shown when trying to create a new community with the same name.

    another option could be to “take over” the community and delete it, which is the act of the top community mod deleting the community (not a moderation action). in this case only the same top community moderator can restore it. this behaves mostly the same as removing it.

    none of these options are good to use. imo purging should be avoided in any case, and the other options both require admin intervention to release a community later on and have no user feedback in lemmy-ui at this time, at least on 0.19.5.

    for communities entirely without posts it is probably ok to just remove them and restore and transfer them if someone requests them. for communities with content the next best thing might be locking the community, potentially locking all posts if it’s just a small number, to prevent unmoderated new content in that community, and put up a pinned post asking people to reach out if they want to take over the community. otherwise, if the community was removed or deleted, all the posts and comments within them would also be taken down with the community.








  • Except it wasn’t created on lemmy.ml, it was created on lemmy.world.

    lemmy.world then informed lemmy.ml that it is intended to be published in the community that it was created for.

    It doesn’t say “crossposted from lemmy.world” but “crossposted from canonical_post_url”. This is not wrong in any way, although it might be a bit confusing and could likely be improved by including a reference to the community. The instance domain should for the most part just be a technical detail there.

    It should also be noted that this format of crossposting is an implementation detail of Lemmy-UI and other clients may handle it differently (if they’re implementing crossposting in the first place).


  • I’m not saying it’s technically impossible, although it would likely be a bit challenging to integrate on the technical level, as the community instance has no authority to modify the post itself other than removing it from the community at this point.

    The existing fedilink is already present for technical reasons anyway, so this is currently only showing existing data.

    Why would you want a lemmy.ml link though? On Lemmy you’re typically intending to stay on your own instance, which many third party apps already implement. For Lemmy UI there is already a feature request to implement this, although it might still take some time to get done. If you have the canonical link to an object (which will always point to the users instance) Lemmy can look up which post/comment you’re referring to in its db without any network calls when it already knows about the entry. If you were linking to the lemmy.ml version of that post then the instance would first have to do a network request to resolve that and then it would realize it’s actually the lemmy.world version that it may or may not know about already.


  • it doesn’t matter whether you consider it reasonable, as it’s this way for technical reasons.

    when a post or comment are created they are created on the users instance. the users instance then tells the community instance about the new post/comment and the community instance relays (announces) this to other instances that have community subscribers.

    the fedilink is an id and reference to the original item. this unique id is known to all servers that know about this comment and it is what is used when updates to the post are distributed. except for the reference to the item on the originating instance, no instance stores information about where to find a specific post/comment on a random other instance.



  • It should be noted that the (visibility of) community bans are a result of better enforcement of site bans in 0.19.4, which for now is implemented by sending out community bans for local communities when a user gets instance banned: https://github.com/LemmyNet/lemmy/pull/4464

    Prior to this, when a user got instance banned from .ml, they were also implicitly banned from .ml communities, but this was only known to the instance they were banned on. As a result, users were still able to post, comment, and vote on those communities, but it would be visible only on that user’s instance, not federated anywhere else. Visibility of this ban was exclusively on the banning instance’s modlog.

    fyi @[email protected]