Skip to content
  • Hjem
  • Seneste
  • Etiketter
  • Populære
  • Verden
  • Bruger
  • Grupper
Temaer
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Kollaps
FARVEL BIG TECH
  1. Forside
  2. Technical Discussion
  3. Topic removal from a category/community

Topic removal from a category/community

Planlagt Fastgjort Låst Flyttet Technical Discussion
piefed
24 Indlæg 5 Posters 0 Visninger
  • Ældste til nyeste
  • Nyeste til ældste
  • Most Votes
Svar
  • Svar som emne
Login for at svare
Denne tråd er blevet slettet. Kun brugere med emne behandlings privilegier kan se den.
  • rimu@piefed.socialR rimu@piefed.social

    only understood by Piefed? Not Lemmy

    No, that’s a Lemmy thing too.

    julian@activitypub.spaceJ This user is from outside of this forum
    julian@activitypub.spaceJ This user is from outside of this forum
    julian@activitypub.space
    wrote sidst redigeret af
    #14

    Oh okay. I wasn’t sure about that since I don’t think it’s documented in the FEP, though it’s been awhile since I’ve given it a read through.

    1 Reply Last reply
    0
    • rimu@piefed.socialR rimu@piefed.social

      only understood by Piefed? Not Lemmy

      No, that’s a Lemmy thing too.

      julian@community.nodebb.orgJ This user is from outside of this forum
      julian@community.nodebb.orgJ This user is from outside of this forum
      julian@community.nodebb.org
      wrote sidst redigeret af
      #15

      rimu@piefed.social Do you send the Undo(Announce(Create)) as well for microblog compatibility?

      1 Reply Last reply
      0
      • rimu@piefed.socialR This user is from outside of this forum
        rimu@piefed.socialR This user is from outside of this forum
        rimu@piefed.social
        wrote sidst redigeret af
        #16

        Looks like for Mastodon we just do a bare Delete.

        julian@community.nodebb.orgJ 1 Reply Last reply
        0
        • rimu@piefed.socialR rimu@piefed.social

          Looks like for Mastodon we just do a bare Delete.

          julian@community.nodebb.orgJ This user is from outside of this forum
          julian@community.nodebb.orgJ This user is from outside of this forum
          julian@community.nodebb.org
          wrote sidst redigeret af julian@community.nodebb.org
          #17

          rimu@piefed.social got it, thanks. How do you reconcile the Delete coming from outside your domain? I would figure Mastodon would drop those Deletes.

          1 Reply Last reply
          0
          • rimu@piefed.socialR This user is from outside of this forum
            rimu@piefed.socialR This user is from outside of this forum
            rimu@piefed.social
            wrote sidst redigeret af
            #18

            We only federate the deletion if it is in one of our local communities.

            The activity is signed by the person who did it, so if Mastodon detects that the person deleting is not the author and doesn’t know how to find out if someone is a moderator or not, that’s their problem.

            Mastodon has been dropping the ball on groups support for years so I didn’t even bother to find out if they handle it well - I bet they don’t.

            silverpill@mitra.socialS 1 Reply Last reply
            0
            • rimu@piefed.socialR rimu@piefed.social

              We only federate the deletion if it is in one of our local communities.

              The activity is signed by the person who did it, so if Mastodon detects that the person deleting is not the author and doesn’t know how to find out if someone is a moderator or not, that’s their problem.

              Mastodon has been dropping the ball on groups support for years so I didn’t even bother to find out if they handle it well - I bet they don’t.

              silverpill@mitra.socialS This user is from outside of this forum
              silverpill@mitra.socialS This user is from outside of this forum
              silverpill@mitra.social
              wrote sidst redigeret af
              #19

              @rimu

              so if Mastodon detects that the person deleting is not the author and doesn’t know how to find out if someone is a moderator or not, that’s their problem.

              It is not their problem. If your actor Deletes an object that is owned by a different server, then your implementation of ActivityPub standard is incorrect:

              https://www.w3.org/TR/activitypub/#delete-activity-inbox

              The side effect of receiving this is that (assuming the object is owned by the sending actor / server) the server receiving the delete activity SHOULD remove its representation of the object with the same id

              @julian

              julian@community.nodebb.orgJ 1 Reply Last reply
              0
              • silverpill@mitra.socialS silverpill@mitra.social

                @rimu

                so if Mastodon detects that the person deleting is not the author and doesn’t know how to find out if someone is a moderator or not, that’s their problem.

                It is not their problem. If your actor Deletes an object that is owned by a different server, then your implementation of ActivityPub standard is incorrect:

                https://www.w3.org/TR/activitypub/#delete-activity-inbox

                The side effect of receiving this is that (assuming the object is owned by the sending actor / server) the server receiving the delete activity SHOULD remove its representation of the object with the same id

                @julian

                julian@community.nodebb.orgJ This user is from outside of this forum
                julian@community.nodebb.orgJ This user is from outside of this forum
                julian@community.nodebb.org
                wrote sidst redigeret af
                #20

                I think Announce(Delete(Object)) skirts around that, though. Maybe not if you’re being technical about it, but the shape of the activity is different enough to mean something else in 1b12-land:

                • A community/group-actor announced a Delete
                • The object may or may not belong to the same domain as the community/group-actor or Delete actor
                • Verify that the community/group-actor and Delete actor are same-origin (might not need this if cross-instance moderation is a thing)
                • Verify that the Delete actor is a moderator of the community/group-actor as per 1b12
                1 Reply Last reply
                0
                • silverpill@mitra.socialS This user is from outside of this forum
                  silverpill@mitra.socialS This user is from outside of this forum
                  silverpill@mitra.social
                  wrote sidst redigeret af
                  #21

                  @julian @rimu No, when one object is embedded in another, it doesn't change its behavior. A Delete activity wrapped in Announce doesn't mean something else, it exists as an independent object that can be fetched by its id.

                  The invalid Delete activity worked for Lemmy only because they didn't care about federation with non-forum software. But it can't work in the multi-app network without ugly hacks like checking remote server's NodeInfo.

                  julian@activitypub.spaceJ 1 Reply Last reply
                  0
                  • silverpill@mitra.socialS silverpill@mitra.social

                    @julian @rimu No, when one object is embedded in another, it doesn't change its behavior. A Delete activity wrapped in Announce doesn't mean something else, it exists as an independent object that can be fetched by its id.

                    The invalid Delete activity worked for Lemmy only because they didn't care about federation with non-forum software. But it can't work in the multi-app network without ugly hacks like checking remote server's NodeInfo.

                    julian@activitypub.spaceJ This user is from outside of this forum
                    julian@activitypub.spaceJ This user is from outside of this forum
                    julian@activitypub.space
                    wrote sidst redigeret af
                    #22

                    Perhaps resolvable contexts can be a solution for this then.

                    I have been implementing topic deletion logic in NodeBB, and while I can send out Announce(Delete(Object)) where Object is the root-level post, it occasionally would send out Deletes where the sender is not the owner of the object. This is the 1b12-speaking logic.

                    In 7888-speaking logic, Object would be the local context collection. A receiver would be able to resolve the context URL to the appropriate local representation and delete it as needed. This would also satisfy the “sender needs to own the object” constraint.

                    silverpill@mitra.socialS 1 Reply Last reply
                    0
                    • julian@activitypub.spaceJ julian@activitypub.space

                      Perhaps resolvable contexts can be a solution for this then.

                      I have been implementing topic deletion logic in NodeBB, and while I can send out Announce(Delete(Object)) where Object is the root-level post, it occasionally would send out Deletes where the sender is not the owner of the object. This is the 1b12-speaking logic.

                      In 7888-speaking logic, Object would be the local context collection. A receiver would be able to resolve the context URL to the appropriate local representation and delete it as needed. This would also satisfy the “sender needs to own the object” constraint.

                      silverpill@mitra.socialS This user is from outside of this forum
                      silverpill@mitra.socialS This user is from outside of this forum
                      silverpill@mitra.social
                      wrote sidst redigeret af
                      #23

                      @julian

                      Delete(Context)? This is very unusual because other collections are not created or deleted, they are server-generated views.

                      I assume this problem arises when you create a topic for a remote post? Perhaps deletion of such topics shouldn't be federated?

                      Or you can generate

                      Announce(Remove(object: root, target: Context))
                      

                      It would be valid from the authorization point of view.

                      julian@community.nodebb.orgJ 1 Reply Last reply
                      0
                      • silverpill@mitra.socialS silverpill@mitra.social

                        @julian

                        Delete(Context)? This is very unusual because other collections are not created or deleted, they are server-generated views.

                        I assume this problem arises when you create a topic for a remote post? Perhaps deletion of such topics shouldn't be federated?

                        Or you can generate

                        Announce(Remove(object: root, target: Context))
                        

                        It would be valid from the authorization point of view.

                        julian@community.nodebb.orgJ This user is from outside of this forum
                        julian@community.nodebb.orgJ This user is from outside of this forum
                        julian@community.nodebb.org
                        wrote sidst redigeret af julian@community.nodebb.org
                        #24

                        Well, the whole idea behind them being resolvable is so that when they are acted upon (by the context owner), they can be queried.

                        For example if I receive a Delete(Context), I’ll resolve it to find the root level post, and from there find my local representation, and delete it, assuming the actor was allowed to delete it.

                        1 Reply Last reply
                        0
                        Svar
                        • Svar som emne
                        Login for at svare
                        • Ældste til nyeste
                        • Nyeste til ældste
                        • Most Votes


                        • Log ind

                        • Har du ikke en konto? Tilmeld

                        • Login or register to search.
                        Powered by NodeBB Contributors
                        Graciously hosted by data.coop
                        • First post
                          Last post
                        0
                        • Hjem
                        • Seneste
                        • Etiketter
                        • Populære
                        • Verden
                        • Bruger
                        • Grupper