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. i will not rest until fedi devs start using as:context properly. this is my single-issue. /hj

i will not rest until fedi devs start using as:context properly. this is my single-issue. /hj

Scheduled Pinned Locked Moved AP Test (community.nodebb.org)
36 Posts 7 Posters 454 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.
  • trwnh@mastodon.socialT trwnh@mastodon.social

    i will not rest until fedi devs start using as:context properly. this is my single-issue. /hj

    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
    #11

    @trwnh you mean, a real `Collection` that contains all the objects in that conversation?

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

      @trwnh @julian I kind of hate that.

      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
      #12

      @evan @julian if it's confusing then i can change the examples

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

        @trwnh you mean, a real `Collection` that contains all the objects in that conversation?

        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
        #13

        @evan that would be the ideal, yes. streams does this (except i think they expose all the activities). pleroma uses a uri that doesnt resolve to anything. mastodon still uses the old ostatus:conversation.

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

          @evan that would be the ideal, yes. streams does this (except i think they expose all the activities). pleroma uses a uri that doesnt resolve to anything. mastodon still uses the old ostatus:conversation.

          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
          #14

          @trwnh 🫤 we'll get there. Is there a FEP?

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

            @trwnh 🫤 we'll get there. Is there a FEP?

            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
            #15

            @evan https://w3id.org/fep/7888

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

              i will not rest until fedi devs start using as:context properly. this is my single-issue. /hj

              tedu@honk.tedunangst.comT This user is from outside of this forum
              tedu@honk.tedunangst.comT This user is from outside of this forum
              tedu@honk.tedunangst.com
              wrote on last edited by
              #16

              @trwnh interesting, I thought about this and decided that context should not be derefencable because nobody owns it. Anyone can create a new context, and then anyone can append to it. If you want to own the collection, make it a proper replies collection.

              trwnh@mastodon.socialT 1 Reply Last reply
              0
              • tedu@honk.tedunangst.comT tedu@honk.tedunangst.com

                @trwnh interesting, I thought about this and decided that context should not be derefencable because nobody owns it. Anyone can create a new context, and then anyone can append to it. If you want to own the collection, make it a proper replies 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
                #17

                @tedu the problem with deferring to a "replies" collection is that declaring a context is completely orthogonal to declaring a reply

                my thinking is that IF:
                - the context is present
                - the context is dereferenceable
                - the context is a Collection that has attributedTo

                THEN:
                - the context collection is managed by that attributedTo actor, via Add/Remove
                - you can participate by sending your Create to that actor, with the object having the same context

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

                  @tedu the problem with deferring to a "replies" collection is that declaring a context is completely orthogonal to declaring a reply

                  my thinking is that IF:
                  - the context is present
                  - the context is dereferenceable
                  - the context is a Collection that has attributedTo

                  THEN:
                  - the context collection is managed by that attributedTo actor, via Add/Remove
                  - you can participate by sending your Create to that actor, with the object having the same context

                  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
                  #18

                  @tedu side note, you do run into similar issues with establishing a two-way confirmation, e.g. that a reply is in the replies collection, or that an object is in its declared context. but that's a matter of convention and not a technical issue. i suppose you could have reply proofs and/or context proofs, but that's out of scope and is an exercise left to the reader

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

                    @tedu side note, you do run into similar issues with establishing a two-way confirmation, e.g. that a reply is in the replies collection, or that an object is in its declared context. but that's a matter of convention and not a technical issue. i suppose you could have reply proofs and/or context proofs, but that's out of scope and is an exercise left to the reader

                    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
                    #19

                    @tedu my tentative approach would be to have a resolvable "stamp" in the form of an Add activity targeting either the `replies` collection or the `context` collection, although one raised objection was that fedi devs don't want to check for inReplyTo.replies being equivalent to replyProof.target? i can't say i understand the objection myself... something about inefficiencies with current database schemas in Mastodon et al. the alternative proposal was a custom AcceptReply activity, i think.

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

                      @tedu my tentative approach would be to have a resolvable "stamp" in the form of an Add activity targeting either the `replies` collection or the `context` collection, although one raised objection was that fedi devs don't want to check for inReplyTo.replies being equivalent to replyProof.target? i can't say i understand the objection myself... something about inefficiencies with current database schemas in Mastodon et al. the alternative proposal was a custom AcceptReply activity, i think.

                      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
                      #20

                      @tedu to which i say: just make it a multityped activity, ["Add", "AcceptReply"]

                      finally, the one other issue with the "stamp" idea is that it doesn't necessarily play well with edits. you can't easily approve a specific revision of the reply/comment/etc. all you can do is somehow detect this and revoke your approval by making the "stamp" nonresolvable.

                      but, again... convention can solve this? just convene to always check the replies/context collection if you care about the authority of owners

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

                        @evan https://w3id.org/fep/7888

                        devnull@crag.socialD This user is from outside of this forum
                        devnull@crag.socialD This user is from outside of this forum
                        devnull@crag.social
                        wrote on last edited by
                        #21

                        @trwnh @evan thanks, it seems like even if there is disagreement over whether 400e or 7888 is the preferred approach, alignment on implementations of `context` is important even between those who choose to implement 7888.

                        devnull@crag.socialD 1 Reply Last reply
                        0
                        • devnull@crag.socialD devnull@crag.social

                          @trwnh @evan thanks, it seems like even if there is disagreement over whether 400e or 7888 is the preferred approach, alignment on implementations of `context` is important even between those who choose to implement 7888.

                          devnull@crag.socialD This user is from outside of this forum
                          devnull@crag.socialD This user is from outside of this forum
                          devnull@crag.social
                          wrote on last edited by
                          #22

                          @trwnh @evan to that end, it's be something the forum/link sharing WG would love to address...

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

                            pleroma and streams are like 80-90% of the way there, the only missing bit is signaling who owns the context via `attributedTo`

                            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
                            #23

                            @trwnh Conversations in streams now have attributedTo property (example: https://fediversity.site/conversation/7342c8d7-6ac2-4128-8168-6cbd0dc9a37c). Does it make streams a complete FEP-7888 implementation?

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

                              @trwnh Conversations in streams now have attributedTo property (example: https://fediversity.site/conversation/7342c8d7-6ac2-4128-8168-6cbd0dc9a37c). Does it make streams a complete FEP-7888 implementation?

                              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
                              #24

                              @silverpill i guess it does? it depends on whether comments are sent to context.attributedTo or not.

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

                                @silverpill i guess it does? it depends on whether comments are sent to context.attributedTo or not.

                                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
                                #25

                                @silverpill in any case if i had to describe "compliance levels" then it would be something like:

                                0: does not use context (mastodon)
                                1: uses non-dereferenceable context (pleroma)
                                2.1: context resolves to a collection representing the conversation (streams?)
                                2.2: context has attributedTo and participating objects are sent to this actor

                                so all it would take for streams to be 2.2 compliant is for their "conversation containers" to be sent to `context.attributedTo` instead of `target.attributedTo`

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

                                  @silverpill in any case if i had to describe "compliance levels" then it would be something like:

                                  0: does not use context (mastodon)
                                  1: uses non-dereferenceable context (pleroma)
                                  2.1: context resolves to a collection representing the conversation (streams?)
                                  2.2: context has attributedTo and participating objects are sent to this actor

                                  so all it would take for streams to be 2.2 compliant is for their "conversation containers" to be sent to `context.attributedTo` instead of `target.attributedTo`

                                  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
                                  #26

                                  @silverpill reading through the "conversation containers" doc at https://codeberg.org/streams/streams/src/branch/release/doc/develop/en/Containers.mc i have the following comments

                                  - the notion of a "top level post" is kinda redundant with the context, and its definition as "without inReplyTo" can be problematic if your "top-level post" is actually a reply to something. imagine an article inReplyTo something, but with its own context

                                  - "the conversation owner (target->attributedTo)" seems to confirm not 2.2...

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

                                    @silverpill reading through the "conversation containers" doc at https://codeberg.org/streams/streams/src/branch/release/doc/develop/en/Containers.mc i have the following comments

                                    - the notion of a "top level post" is kinda redundant with the context, and its definition as "without inReplyTo" can be problematic if your "top-level post" is actually a reply to something. imagine an article inReplyTo something, but with its own context

                                    - "the conversation owner (target->attributedTo)" seems to confirm not 2.2...

                                    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
                                    #27

                                    @silverpill cc @mikedev for posterity. also the swicg threaded discussions task force (hi @julian and @angus) is looking at this from a forum perspective and not just a social media perspective. it is quite likely they will arrive at a similar finding in their report

                                    julian@community.nodebb.orgJ 1 Reply Last reply
                                    0
                                    • trwnh@mastodon.socialT trwnh@mastodon.social

                                      @silverpill cc @mikedev for posterity. also the swicg threaded discussions task force (hi @julian and @angus) is looking at this from a forum perspective and not just a social media perspective. it is quite likely they will arrive at a similar finding in their report

                                      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
                                      #28

                                      @trwnh@mastodon.social something @angus@socialhub.activitypub.rocks and I were discussing was that some implementations include OP in the Page/context (iirc Lemmy does this @nutomic@lemmy.ml), and subsequent replies are Notes, whereas NodeBB, Discourse, and later Flarum, treat the context as merely a container.

                                      It seems the latter fits better with the vision of 7888 but I'm not sure whether concessions need to be made for those other types.

                                      trwnh@mastodon.socialT 1 Reply Last reply
                                      0
                                      • julian@community.nodebb.orgJ julian@community.nodebb.org

                                        @trwnh@mastodon.social something @angus@socialhub.activitypub.rocks and I were discussing was that some implementations include OP in the Page/context (iirc Lemmy does this @nutomic@lemmy.ml), and subsequent replies are Notes, whereas NodeBB, Discourse, and later Flarum, treat the context as merely a container.

                                        It seems the latter fits better with the vision of 7888 but I'm not sure whether concessions need to be made for those other types.

                                        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
                                        #29

                                        @julian @angus @nutomic i'm not sure what exactly you mean, but the exact types don't really matter (and shouldn't matter). for `context` you would just match against the id. after grouping by context, you are free to present in whichever way you want -- you can present in a flat chronological list, or in a nested reply tree sorted by some algorithmic scoring, it's all the same.

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

                                          @julian @angus @nutomic i'm not sure what exactly you mean, but the exact types don't really matter (and shouldn't matter). for `context` you would just match against the id. after grouping by context, you are free to present in whichever way you want -- you can present in a flat chronological list, or in a nested reply tree sorted by some algorithmic scoring, it's all the same.

                                          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
                                          #30

                                          @trwnh @julian @angus @nutomic the `inReplyTo` property and `replies` collection give you what you need to build a tree structure.

                                          trwnh@mastodon.socialT 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