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. Pre-Alpha ActivityPub-related bug reports

Pre-Alpha ActivityPub-related bug reports

Scheduled Pinned Locked Moved AP Test (community.nodebb.org)
bugsnodebbacti
138 Posts 18 Posters 1.3k 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.
  • evan@cosocial.caE evan@cosocial.ca

    @trwnh @julian @silverpill Content types? Note, Article, Image, Video, Audio, Document? That should cover most Web content collections.

    If you want to add an extension (Listicle, say) you could multi-type with the most appropriate Activity Vocabulary content type (`type`: ['buzz:Listicle', 'as:Article']`).

    trwnh@mastodon.socialT This user is from outside of this forum
    trwnh@mastodon.socialT This user is from outside of this forum
    trwnh@mastodon.social
    wrote on last edited by
    #101

    @evan @julian @silverpill This goes back to a convo from yesterday about how to handle Activity types with content, which conceivably makes them "posts" in the sense of an "activity stream". ("John Created a Note" is a first-class item in much the same way "Sally Liked a Note" is also a first-class item in Facebook's activity feed, or "Alice Added 9 Images to a MediaAlbum" would be.)

    If you put content on an Announce, then that Announce is ostensibly its own "post" in addition to being a share.

    trwnh@mastodon.socialT evan@cosocial.caE 2 Replies Last reply
    0
    • trwnh@mastodon.socialT trwnh@mastodon.social

      @evan @julian @silverpill This goes back to a convo from yesterday about how to handle Activity types with content, which conceivably makes them "posts" in the sense of an "activity stream". ("John Created a Note" is a first-class item in much the same way "Sally Liked a Note" is also a first-class item in Facebook's activity feed, or "Alice Added 9 Images to a MediaAlbum" would be.)

      If you put content on an Announce, then that Announce is ostensibly its own "post" in addition to being a share.

      trwnh@mastodon.socialT This user is from outside of this forum
      trwnh@mastodon.socialT This user is from outside of this forum
      trwnh@mastodon.social
      wrote on last edited by
      #102

      @evan @julian @silverpill But yes, in most cases, you will probably be using types such as Note or Article.

      evan@cosocial.caE 1 Reply Last reply
      0
      • trwnh@mastodon.socialT trwnh@mastodon.social

        @evan @julian @silverpill This goes back to a convo from yesterday about how to handle Activity types with content, which conceivably makes them "posts" in the sense of an "activity stream". ("John Created a Note" is a first-class item in much the same way "Sally Liked a Note" is also a first-class item in Facebook's activity feed, or "Alice Added 9 Images to a MediaAlbum" would be.)

        If you put content on an Announce, then that Announce is ostensibly its own "post" in addition to being a share.

        evan@cosocial.caE This user is from outside of this forum
        evan@cosocial.caE This user is from outside of this forum
        evan@cosocial.ca
        wrote on last edited by
        #103

        @trwnh @julian @silverpill OK. I mean, we just call that an `Object`.

        trwnh@mastodon.socialT 1 Reply Last reply
        0
        • trwnh@mastodon.socialT trwnh@mastodon.social

          @evan @julian @silverpill But yes, in most cases, you will probably be using types such as Note or Article.

          evan@cosocial.caE This user is from outside of this forum
          evan@cosocial.caE This user is from outside of this forum
          evan@cosocial.ca
          wrote on last edited by
          #104

          @trwnh @julian @silverpill especially in a forum thread, right? It's just not the place you put an `TentativeReject` activity or a `Relationship` object.

          1 Reply Last reply
          0
          • evan@cosocial.caE evan@cosocial.ca

            @trwnh @julian @silverpill OK. I mean, we just call that an `Object`.

            trwnh@mastodon.socialT This user is from outside of this forum
            trwnh@mastodon.socialT This user is from outside of this forum
            trwnh@mastodon.social
            wrote on last edited by
            #105

            @evan @julian @silverpill In terms of a potential WIP FEP, I would tentatively define a Conversation as a Collection where each item has at least `content`. I would likewise define a MediaAlbum as a Collection where each item is an Image or Video. There are probably other type definitions that could make sense.

            evan@cosocial.caE 1 Reply Last reply
            0
            • trwnh@mastodon.socialT trwnh@mastodon.social

              @evan @julian @silverpill In terms of a potential WIP FEP, I would tentatively define a Conversation as a Collection where each item has at least `content`. I would likewise define a MediaAlbum as a Collection where each item is an Image or Video. There are probably other type definitions that could make sense.

              evan@cosocial.caE This user is from outside of this forum
              evan@cosocial.caE This user is from outside of this forum
              evan@cosocial.ca
              wrote on last edited by
              #106

              @trwnh @julian @silverpill yeah, I just don't like the ducktyping on the 'content' property.

              1 Reply Last reply
              0
              • trwnh@mastodon.socialT trwnh@mastodon.social

                @julian @silverpill We could define a dedicated type for Thread or Conversation or whatever you want to call "a Collection that contains only "post" objects", but it would still be a Collection as well. I think this was something I was considering for a FEP that I ended up never really writing because it felt unnecessary and also very premature. The general idea is to define some way to know what a Collection "contains" -- is it a Conversation or a MediaAlbum or whatever. The problem is taxonomy

                erincandescent@akko.erincandescent.netE This user is from outside of this forum
                erincandescent@akko.erincandescent.netE This user is from outside of this forum
                erincandescent@akko.erincandescent.net
                wrote on last edited by
                #107
                @trwnh @julian @silverpill I think the question here is "does a thread actually have any distinct properties of its own?"

                Maybe a title, but that can also be inherited from either the first or most recent post. Many threaded discussion systems don't have thread objects at all, of course (email is perhaps the canonical example)

                So I lean towards the idea that you should just redirect to the first thread in the post, and place the context (which when becomes just a collection of in-thread posts; an implementation detail) at another URL where it mostly becomes invisible to users.

                And I think that's better, especially because having significant semantics on collections starts getting confusing when e.g. you have collection pages flying around

                Really I think most types which can be represented directly as a collection (e.g. image galleries) are best represented as an object that possess a collection, though not everyone might agree
                trwnh@mastodon.socialT julian@community.nodebb.orgJ erincandescent@akko.erincandescent.netE 3 Replies Last reply
                0
                • erincandescent@akko.erincandescent.netE erincandescent@akko.erincandescent.net
                  @trwnh @julian @silverpill I think the question here is "does a thread actually have any distinct properties of its own?"

                  Maybe a title, but that can also be inherited from either the first or most recent post. Many threaded discussion systems don't have thread objects at all, of course (email is perhaps the canonical example)

                  So I lean towards the idea that you should just redirect to the first thread in the post, and place the context (which when becomes just a collection of in-thread posts; an implementation detail) at another URL where it mostly becomes invisible to users.

                  And I think that's better, especially because having significant semantics on collections starts getting confusing when e.g. you have collection pages flying around

                  Really I think most types which can be represented directly as a collection (e.g. image galleries) are best represented as an object that possess a collection, though not everyone might agree
                  trwnh@mastodon.socialT This user is from outside of this forum
                  trwnh@mastodon.socialT This user is from outside of this forum
                  trwnh@mastodon.social
                  wrote on last edited by
                  #108

                  @erincandescent @julian @silverpill It makes sense for threads to have not just their own title, but also their own audience and moderators, as well as flags for whether the thread is pinned or locked.

                  1 Reply Last reply
                  0
                  • erincandescent@akko.erincandescent.netE erincandescent@akko.erincandescent.net
                    @trwnh @julian @silverpill I think the question here is "does a thread actually have any distinct properties of its own?"

                    Maybe a title, but that can also be inherited from either the first or most recent post. Many threaded discussion systems don't have thread objects at all, of course (email is perhaps the canonical example)

                    So I lean towards the idea that you should just redirect to the first thread in the post, and place the context (which when becomes just a collection of in-thread posts; an implementation detail) at another URL where it mostly becomes invisible to users.

                    And I think that's better, especially because having significant semantics on collections starts getting confusing when e.g. you have collection pages flying around

                    Really I think most types which can be represented directly as a collection (e.g. image galleries) are best represented as an object that possess a collection, though not everyone might agree
                    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
                    #109

                    @erincandescent@akko.erincandescent.net said:

                    So I lean towards the idea that you should just redirect to the first thread in the post, and place the context (which when becomes just a collection of in-thread posts; an implementation detail) at another URL where it mostly becomes invisible to users.

                    That's why I'm still on the fence about this whole thing. In principle, a thread object can and does exist in software, but in practice there is lots of prior art that says otherwise.

                    That said, email might be a threaded chain of messages, but most email clients I know have standardized around representing them as a discrete topic, if only in the UI.

                    @trwnh@mastodon.social @evan@cosocial.ca @silverpill@mitra.social

                    trwnh@mastodon.socialT 1 Reply Last reply
                    0
                    • erincandescent@akko.erincandescent.netE erincandescent@akko.erincandescent.net
                      @trwnh @julian @silverpill I think the question here is "does a thread actually have any distinct properties of its own?"

                      Maybe a title, but that can also be inherited from either the first or most recent post. Many threaded discussion systems don't have thread objects at all, of course (email is perhaps the canonical example)

                      So I lean towards the idea that you should just redirect to the first thread in the post, and place the context (which when becomes just a collection of in-thread posts; an implementation detail) at another URL where it mostly becomes invisible to users.

                      And I think that's better, especially because having significant semantics on collections starts getting confusing when e.g. you have collection pages flying around

                      Really I think most types which can be represented directly as a collection (e.g. image galleries) are best represented as an object that possess a collection, though not everyone might agree
                      erincandescent@akko.erincandescent.netE This user is from outside of this forum
                      erincandescent@akko.erincandescent.netE This user is from outside of this forum
                      erincandescent@akko.erincandescent.net
                      wrote on last edited by
                      #110

                      @trwnh @julian @silverpill (the other option is instead of redirection do <link> tags, and then you can link to both if you wish; imagine including <link rel="as:context" href="...">)

                      evan@cosocial.caE 1 Reply Last reply
                      0
                      • julian@community.nodebb.orgJ julian@community.nodebb.org

                        @erincandescent@akko.erincandescent.net said:

                        So I lean towards the idea that you should just redirect to the first thread in the post, and place the context (which when becomes just a collection of in-thread posts; an implementation detail) at another URL where it mostly becomes invisible to users.

                        That's why I'm still on the fence about this whole thing. In principle, a thread object can and does exist in software, but in practice there is lots of prior art that says otherwise.

                        That said, email might be a threaded chain of messages, but most email clients I know have standardized around representing them as a discrete topic, if only in the UI.

                        @trwnh@mastodon.social @evan@cosocial.ca @silverpill@mitra.social

                        trwnh@mastodon.socialT This user is from outside of this forum
                        trwnh@mastodon.socialT This user is from outside of this forum
                        trwnh@mastodon.social
                        wrote on last edited by
                        #111

                        @julian @erincandescent @evan @silverpill Let me put it this way: the latter half of FEP-7888 can be summarized as "reifying context as an object, and specifically a Collection". If you *just* want the grouping, then it could be an arbitrary opaque IRI. But what you gain by reifying the context as an object is specifically the ability to give it metadata properties. Particularly things like `attributedTo` or `audience`. Maybe even `followers` or `outbox`. An opaque IRI cannot do this.

                        erincandescent@akko.erincandescent.netE evan@cosocial.caE 2 Replies Last reply
                        0
                        • trwnh@mastodon.socialT trwnh@mastodon.social

                          @julian @silverpill We could define a dedicated type for Thread or Conversation or whatever you want to call "a Collection that contains only "post" objects", but it would still be a Collection as well. I think this was something I was considering for a FEP that I ended up never really writing because it felt unnecessary and also very premature. The general idea is to define some way to know what a Collection "contains" -- is it a Conversation or a MediaAlbum or whatever. The problem is taxonomy

                          thisismissem@hachyderm.ioT This user is from outside of this forum
                          thisismissem@hachyderm.ioT This user is from outside of this forum
                          thisismissem@hachyderm.io
                          wrote on last edited by
                          #112

                          @trwnh @julian @silverpill

                          I think you could also put a summary or name on a Collection and use that for the title of the thread?

                          1 Reply Last reply
                          0
                          • trwnh@mastodon.socialT trwnh@mastodon.social

                            @julian @erincandescent @evan @silverpill Let me put it this way: the latter half of FEP-7888 can be summarized as "reifying context as an object, and specifically a Collection". If you *just* want the grouping, then it could be an arbitrary opaque IRI. But what you gain by reifying the context as an object is specifically the ability to give it metadata properties. Particularly things like `attributedTo` or `audience`. Maybe even `followers` or `outbox`. An opaque IRI cannot do this.

                            erincandescent@akko.erincandescent.netE This user is from outside of this forum
                            erincandescent@akko.erincandescent.netE This user is from outside of this forum
                            erincandescent@akko.erincandescent.net
                            wrote on last edited by
                            #113
                            @trwnh @julian @evan @silverpill I never did the URI should be opaque; what I implied was that perhaps it should be an implementation detail URI as opposed to a directly visible one.

                            Some of this is that I wonder how decoupled such a thread truly is *semantically* from it's root post
                            trwnh@mastodon.socialT 1 Reply Last reply
                            0
                            • erincandescent@akko.erincandescent.netE erincandescent@akko.erincandescent.net

                              @trwnh @julian @silverpill (the other option is instead of redirection do <link> tags, and then you can link to both if you wish; imagine including <link rel="as:context" href="...">)

                              evan@cosocial.caE This user is from outside of this forum
                              evan@cosocial.caE This user is from outside of this forum
                              evan@cosocial.ca
                              wrote on last edited by
                              #114

                              @erincandescent @julian @trwnh @silverpill a thread is a tree with a root. Every non-root node in the tree has an `inReplyTo` that points to one of the other nodes.

                              It's represented by a `Collection` in the `context` property of each object. (I don't like this, but it's common so we should just use it).

                              It's in reverse-chronological order.

                              If you started at the root node and walked the tree using the `replies` collection, you should visit exactly the same nodes as in the `context` collection.

                              trwnh@mastodon.socialT 1 Reply Last reply
                              0
                              • trwnh@mastodon.socialT trwnh@mastodon.social

                                @julian @erincandescent @evan @silverpill Let me put it this way: the latter half of FEP-7888 can be summarized as "reifying context as an object, and specifically a Collection". If you *just* want the grouping, then it could be an arbitrary opaque IRI. But what you gain by reifying the context as an object is specifically the ability to give it metadata properties. Particularly things like `attributedTo` or `audience`. Maybe even `followers` or `outbox`. An opaque IRI cannot do this.

                                evan@cosocial.caE This user is from outside of this forum
                                evan@cosocial.caE This user is from outside of this forum
                                evan@cosocial.ca
                                wrote on last edited by
                                #115

                                @trwnh @julian @erincandescent @silverpill you can also get the whole thing! That's the big benefit of having a `Collection` -- you can retrieve it.

                                1 Reply Last reply
                                0
                                • erincandescent@akko.erincandescent.netE erincandescent@akko.erincandescent.net
                                  @trwnh @julian @evan @silverpill I never did the URI should be opaque; what I implied was that perhaps it should be an implementation detail URI as opposed to a directly visible one.

                                  Some of this is that I wonder how decoupled such a thread truly is *semantically* from it's root post
                                  trwnh@mastodon.socialT This user is from outside of this forum
                                  trwnh@mastodon.socialT This user is from outside of this forum
                                  trwnh@mastodon.social
                                  wrote on last edited by
                                  #116

                                  @erincandescent @julian @evan @silverpill I've never really understood why anyone would semantically collapse them. You lose so much expressivity by doing that. In my mind, they're *very* distinct from each other. A thread can have its own title which is separate from the title of the "root post". In fact, I don't think "root post" is even the best way to think about it. You can group posts that aren't replies to each other. Your first post may be a response to something outside of the thread.

                                  1 Reply Last reply
                                  0
                                  • evan@cosocial.caE evan@cosocial.ca

                                    @erincandescent @julian @trwnh @silverpill a thread is a tree with a root. Every non-root node in the tree has an `inReplyTo` that points to one of the other nodes.

                                    It's represented by a `Collection` in the `context` property of each object. (I don't like this, but it's common so we should just use it).

                                    It's in reverse-chronological order.

                                    If you started at the root node and walked the tree using the `replies` collection, you should visit exactly the same nodes as in the `context` collection.

                                    trwnh@mastodon.socialT This user is from outside of this forum
                                    trwnh@mastodon.socialT This user is from outside of this forum
                                    trwnh@mastodon.social
                                    wrote on last edited by
                                    #117

                                    @evan @erincandescent @julian @silverpill I don't think a thread *has* to be a tree -- it's a set. The "reply tree" is a separate structure. Threads can be forked out of other threads.

                                    (I also dislike "reverse chron" and heavily favor "forward chron", but custom sorting of collections is not well-specced rn so that's a future step.)

                                    silverpill@mitra.socialS 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
                                      #118

                                      @julian I reported this to you because one user asked me by "why I can't discover this NodeBB thread from my instance?". I think this is going to happen quite often across the Fediverse.
                                      Maybe in the future we will figure out how to deal with these collections, but right now this leads to a bad user experience

                                      @trwnh @evan @erincandescent @evan

                                      trwnh@mastodon.socialT 1 Reply Last reply
                                      0
                                      • jupiter_rowland@hub.netzgemeinde.euJ This user is from outside of this forum
                                        jupiter_rowland@hub.netzgemeinde.euJ This user is from outside of this forum
                                        jupiter_rowland@hub.netzgemeinde.eu
                                        wrote on last edited by
                                        #119
                                        @julian @Erin 💽✨ I'm not a dev, so I don't have the technical details down pat.

                                        But Friendica and everything that came after it, including Hubzilla, handle conversations as something enclosed with exactly one (1) post and otherwise only comments, as opposed to Mastodon's loose chain of posts. Replies are always comments instead of posts, and they're always sent to the thread starter who is the owner of the whole thread, and who then distributes them to all participants.

                                        Right after Friendica, permissions were introduced. These aren't stored with each comment separately and with the post only for the post itself. Rather, they're unified for the whole thread. The thread starter defines who is allowed to see what and who is allowed to do what. As opposed to Mastodon, commenters cannot change the permissions of their comments away from those of the start post.

                                        Last year, (streams) switched to conversations as containers. To the outward, it works the same, but internally, it's different. Again, I'm not a dev. @Mike Macgirvin 🖥️ has made all this. But to my understanding, this is when a thread really became an object of its own.

                                        CC: @infinite love ⴳ @Evan Prodromou @silverpill

                                        #Long #LongPost #CWLong #CWLongPost #FediMeta #FediverseMeta #CWFediMeta #CWFediverseMeta #Friendica #Hubzilla #Streams #(streams) #Conversations
                                        1 Reply Last reply
                                        0
                                        • silverpill@mitra.socialS silverpill@mitra.social

                                          @julian I reported this to you because one user asked me by "why I can't discover this NodeBB thread from my instance?". I think this is going to happen quite often across the Fediverse.
                                          Maybe in the future we will figure out how to deal with these collections, but right now this leads to a bad user experience

                                          @trwnh @evan @erincandescent @evan

                                          trwnh@mastodon.socialT This user is from outside of this forum
                                          trwnh@mastodon.socialT This user is from outside of this forum
                                          trwnh@mastodon.social
                                          wrote on last edited by
                                          #120

                                          @silverpill @evan@cosocial.ca @erincandescent @julian @evan@community.nodebb.org I'd prefer impls update to support showing threads/collections, rather than NodeBB being held back. UX will get better as other impls update.

                                          At the very least, browser.pub can do it! 😛

                                          erincandescent@akko.erincandescent.netE 1 Reply Last reply
                                          0
                                          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