Skip to content
  • Categories
  • Recent
  • Popular
Skins
  • 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
Collapse

NodeBB-ActivityPub Bridge Test Instance

  1. Home
  2. Categories
  3. General Discussion
  4. AP Test (community.nodebb.org)
  5. `Update(Note)` quirk

`Update(Note)` quirk

Scheduled Pinned Locked Moved AP Test (community.nodebb.org)
activitypubfedidevmastodonismnodebbactivityp
11 Posts 7 Posters 77 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • fentiger@mastodon.socialF This user is from outside of this forum
    fentiger@mastodon.socialF This user is from outside of this forum
    fentiger@mastodon.social
    wrote on last edited by
    #2

    @julian This is exactly my point 1 from here: https://socialhub.activitypub.rocks/t/desired-changes-for-a-future-revision-of-activitypub-and-activitystreams/4534/10

    My opinion is that this should actually be the standardised behaviour.

    1 Reply Last reply
    0
    • sortekanin@socialhub.activitypub.rocksS This user is from outside of this forum
      sortekanin@socialhub.activitypub.rocksS This user is from outside of this forum
      sortekanin@socialhub.activitypub.rocks
      wrote on last edited by
      #3

      Tbf it feels like Mastodon could assume that the update is the latest one if there is no updated field and only use the updated fields to not apply an update, if the updated field is before the last update. Does that make sense?

      julian@community.nodebb.orgJ 1 Reply Last reply
      0
      • sortekanin@socialhub.activitypub.rocksS sortekanin@socialhub.activitypub.rocks

        Tbf it feels like Mastodon could assume that the update is the latest one if there is no updated field and only use the updated fields to not apply an update, if the updated field is before the last update. Does that make sense?

        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 on last edited by
        #4

        @sortekanin@socialhub.activitypub.rocks Yes and no, I can see how that would be logical, but there could potentially be issues if subsequent updates were delivered out of order (due to a variety of reasons one can dream up).

        In that scenario you wouldn't want to assume that the undated updated is the latest.

        This whole thing could actually be sidestepped if we sent timestamps with our activities, but that's not in the spec, so I guess nobody does it heh.

        1 Reply Last reply
        0
        • sortekanin@socialhub.activitypub.rocksS This user is from outside of this forum
          sortekanin@socialhub.activitypub.rocksS This user is from outside of this forum
          sortekanin@socialhub.activitypub.rocks
          wrote on last edited by
          #5
          julian:

          This whole thing could actually be sidestepped if we sent timestamps with our activities, but that's not in the spec, so I guess nobody does it heh.

          Sounds like another suggestion that could be useful in the wiki post hehe

          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 on last edited by
            #6

            @julian @SorteKanin

            published property can exist on activities too. Some implementation already does this but I don't remember which one

            1 Reply Last reply
            0
            • D This user is from outside of this forum
              D This user is from outside of this forum
              dariusk@community.nodebb.org
              wrote on last edited by
              #7

              @julian said in `Update(Note)` quirk:

              This whole thing could actually be sidestepped if we sent timestamps with our activities, but that's not in the spec, so I guess nobody does it heh.

              Not sure what you mean here? Any Mastodon (or misskey or...) Create(Note) has a published property on the Create activity with a timestamp and a published property on the Note object with a timestamp.

              1 Reply Last reply
              0
              • 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 on last edited by
                #8

                @dariusk must just not have noticed 🙂

                1 Reply Last reply
                0
                • D This user is from outside of this forum
                  D This user is from outside of this forum
                  dariusk@community.nodebb.org
                  wrote on last edited by
                  #9

                  To be fair I have this cool software I'm working on that helps me answer that question immediately 🙂

                  image.png

                  1 Reply Last reply
                  0
                  • thisismissem@socialhub.activitypub.rocksT This user is from outside of this forum
                    thisismissem@socialhub.activitypub.rocksT This user is from outside of this forum
                    thisismissem@socialhub.activitypub.rocks
                    wrote on last edited by
                    #10
                    julian:

                    This whole thing could actually be sidestepped if we sent timestamps with our activities, but that's not in the spec, so I guess nobody does it heh.

                    This sounds like a wonderful FEP!

                    aschrijver@socialhub.activitypub.rocksA 1 Reply Last reply
                    0
                    • thisismissem@socialhub.activitypub.rocksT thisismissem@socialhub.activitypub.rocks
                      julian:

                      This whole thing could actually be sidestepped if we sent timestamps with our activities, but that's not in the spec, so I guess nobody does it heh.

                      This sounds like a wonderful FEP!

                      aschrijver@socialhub.activitypub.rocksA This user is from outside of this forum
                      aschrijver@socialhub.activitypub.rocksA This user is from outside of this forum
                      aschrijver@socialhub.activitypub.rocks
                      wrote last edited by
                      #11
                      thisismissem:

                      This sounds like a wonderful FEP!

                      This article published two weeks ago mentions the issue (highlight mine) ..

                      Another example I personally encountered was a frustrating issue while implementing ActivityPub for this blog: updating a post propagated to Lemmy but not Mastodon. Despite the Update activity being accepted, Mastodon silently rejected it unless the updated timestamp changed—a logical but unofficial requirement. Developers must track down subtle implementation details that aren't formally documented, significantly complicating adoption and usage.

                      Link Preview Image
                      ActivityPub: The Good, the Bad and the Ugly | Blog by Dominik Chrástecký

                      ActivityPub is the best protocol available for interoperable federated social media—primarily because no other current federated protocols target social media, offer interoperability, and aren't deprecated.

                      favicon

                      (chrastecky.dev)

                      I'd write it off as a Mastodon-ism, but it's actually better to have that property present, so now it is.

                      So one that's becoming de-facto standard. Ideally if Mastodon introduces such logic, it is up to them to remember to inform the broader developer community via a FEP.

                      ---

                      Aside: "If all we have is a Note .. "

                      Overall it is such a pity that everything is to be a Note or else.. And the default pragmatic urge of most devs is to assign app-specific business logic to an existing or custom property within it, to create all the behavioral flavors. And then call it a day "my app works" and throw the protocol decay out in the ecosystem.

                      There are other improvements regarding revision control as long-time open issues, see e.g. @trwnh's https://socialhub.activitypub.rocks/t/exposing-edit-history-via-activitystreams/2930 (mastodon issue # dd. January 2023). In this issue @stevebate suggests previousversions from the ForgeFed Vocabulary.

                      What do we do when we "Edit a Note"? Is using the CRUD of ActivityStreams really the best option, or are we really "Creating a Revision". Shouldn't ActivityPub have a proper way to Revision Control across the board?

                      If my new Fediverse app included both editable and non-editable posts, how I'd hack that in on top of the current mechanism? Just pondering this. It seems we go out of our way not to use the extension mechanism of ActivityPub as it was intended to be used, cramming everything in NoteCrud​. Is that official best-practice for the future fediverse now, I wonder.

                      Many more examples seen in discussions. The ActivityPub specs state that you may ditch JSON-LD for plain JSON, but doesn't say that the whole idea of a semantic type model should be thrown out of the window as well. In https://socialhub.activitypub.rocks/t/distinguish-between-posts-and-direct-messages/2283 the example is people going out of their way not to define ChatMessage in favor of Note + property-logic.

                      1 Reply Last reply
                      1
                      0
                      • System shared this topic
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      • Login

                      • Login or register to search.
                      Powered by NodeBB Contributors
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Popular