Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
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

Darkscribes Community

  1. Home
  2. Uncategorized
  3. ⚠️ We’re now entering the “extinguish” part of “Embrace, extend, extinguish”.

⚠️ We’re now entering the “extinguish” part of “Embrace, extend, extinguish”.

Scheduled Pinned Locked Moved Uncategorized
activitypubactivitypubspec
26 Posts 9 Posters 72 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.
  • silverpill@mitra.socialS [email protected]

    @raucao @bengo

    https://github.com/w3c/activitypub/issues/404

    It's quite long, but the summary is:

    - AP says that the identifier of the special public collection is https://www.w3.org/ns/activitystreams#Public (section 5.6).
    - JSON-LD programs may replace https://www.w3.org/ns/activitystreams#Public with as:Public. There is a note in AP that warns about this quirk.
    - One proposed erratum re-frames the current normative text. as:Public is presented as a "correct" variant, and https://www.w3.org/ns/activitystreams#Public is said to be "erroneous". Another proposed erratum replaces https://www.w3.org/ns/activitystreams#Public with as:Public in all examples.

    Why is it harmful?

    - https://www.w3.org/ns/activitystreams#Public is used everywhere. Even among those few implementations that do JSON-LD processing, most don't produce as:Public. The whole problem is made-up.
    - as:Public and Public are not valid HTTP URIs, so you need to special-case them when you parse audiences. These variants should be banned, but what happens is the opposite.
    - Specification will become even more confusing than it is now, because examples will contradict the normative text.

    raucao@kosmos.socialR This user is from outside of this forum
    raucao@kosmos.socialR This user is from outside of this forum
    [email protected]
    wrote last edited by
    #9

    @silverpill @bengo I see spec contributors having a disagreement over compatibility/priority between AP and other specs, but where's the EEE? The OP even outlines 3 different options from his POV to start the discussion on it.

    The person who inexplicably blocked me right after I asked for details made vague accusations about EEE going on, and I'm still just trying to find out what they were talking about. 😕

    silverpill@mitra.socialS 1 Reply Last reply
    0
    • raucao@kosmos.socialR [email protected]

      @silverpill @bengo I see spec contributors having a disagreement over compatibility/priority between AP and other specs, but where's the EEE? The OP even outlines 3 different options from his POV to start the discussion on it.

      The person who inexplicably blocked me right after I asked for details made vague accusations about EEE going on, and I'm still just trying to find out what they were talking about. 😕

      silverpill@mitra.socialS This user is from outside of this forum
      silverpill@mitra.socialS This user is from outside of this forum
      [email protected]
      wrote last edited by
      #10

      @raucao

      I don't know what @bengo means by EEE, but he also said

      remove requirements of activitypub that have been in place for 7+ years, and without an explanation how the removal improves anything

      And I gave you an example.

      The OP even outlines 3 different options from his POV to start the discussion on it.

      To understand what is wrong here you just need to compare those options with the actual text:

      https://www.w3.org/TR/activitypub/#public-addressing

      mikedev@fediversity.siteM trwnh@mastodon.socialT raucao@kosmos.socialR 3 Replies Last reply
      0
      • silverpill@mitra.socialS [email protected]

        @raucao

        I don't know what @bengo means by EEE, but he also said

        remove requirements of activitypub that have been in place for 7+ years, and without an explanation how the removal improves anything

        And I gave you an example.

        The OP even outlines 3 different options from his POV to start the discussion on it.

        To understand what is wrong here you just need to compare those options with the actual text:

        https://www.w3.org/TR/activitypub/#public-addressing

        mikedev@fediversity.siteM This user is from outside of this forum
        mikedev@fediversity.siteM This user is from outside of this forum
        [email protected]
        wrote last edited by
        #11
        I've also thrown about claims of EEE to some fediverse software without tangible evidence of intent, so I'll speak up here. I'm sure the project developers themselves would disagree, but many times these actions pass the walks-like-a-duck test. And it happens repeatedly. So even if it wasn't the intention, the pattern of actions has no distinguishing difference to performing the action with an intent that EEE will be the outcome.

        It's sort of like the Krasnov example. Trump may not be a Russian asset, but his actions have resulted in the exact same outcomes that a hypothetical Russian asset in his position would produce; so it walks like a duck, and it happens repeatedly.
        silverpill@mitra.socialS 1 Reply Last reply
        0
        • pfefferle@mastodon.socialP [email protected]

          @julian @bengo 😳???

          trwnh@mastodon.socialT This user is from outside of this forum
          trwnh@mastodon.socialT This user is from outside of this forum
          [email protected]
          wrote last edited by
          #12

          @pfefferle @julian @bengo @csarven @raucao @oblomov

          i think the context is this github issue: https://github.com/w3c/activitypub/issues/320

          was put to the swicg mailing list as a cfc by evan: https://lists.w3.org/Archives/Public/public-swicg/2025Jun/0038.html

          bengo requested a clear "error description" and "candidate correction": https://lists.w3.org/Archives/Public/public-swicg/2025Jun/0039.html

          to clarify, no requirements are being removed: https://lists.w3.org/Archives/Public/public-swicg/2025Jun/0043.html

          i agree that cfc emails should include an "error description" and "candidate correction". perhaps https://github.com/w3c/activitypub/issues/320#issuecomment-2971191447 suffices?

          1 Reply Last reply
          0
          • silverpill@mitra.socialS [email protected]

            @raucao

            I don't know what @bengo means by EEE, but he also said

            remove requirements of activitypub that have been in place for 7+ years, and without an explanation how the removal improves anything

            And I gave you an example.

            The OP even outlines 3 different options from his POV to start the discussion on it.

            To understand what is wrong here you just need to compare those options with the actual text:

            https://www.w3.org/TR/activitypub/#public-addressing

            trwnh@mastodon.socialT This user is from outside of this forum
            trwnh@mastodon.socialT This user is from outside of this forum
            [email protected]
            wrote last edited by
            #13

            @silverpill @raucao no requirements are being changed here. "the identifier is foo" does not mean "the identifier MUST always be expressed using the literal sequence of characters f, o, o".

            speaking of requirements, please read the first sentence of https://www.w3.org/TR/activitystreams-core/#jsonld and note the MUST.

            "as:Public should be banned" is completely uncalled for.

            and you currently need to special-case the full URI too! this is because it is not a real object. the real mistake is addressing Public at all.

            silverpill@mitra.socialS 1 Reply Last reply
            0
            • silverpill@mitra.socialS [email protected]

              @raucao

              I don't know what @bengo means by EEE, but he also said

              remove requirements of activitypub that have been in place for 7+ years, and without an explanation how the removal improves anything

              And I gave you an example.

              The OP even outlines 3 different options from his POV to start the discussion on it.

              To understand what is wrong here you just need to compare those options with the actual text:

              https://www.w3.org/TR/activitypub/#public-addressing

              raucao@kosmos.socialR This user is from outside of this forum
              raucao@kosmos.socialR This user is from outside of this forum
              [email protected]
              wrote last edited by
              #14

              @silverpill @bengo "We’re now entering the “extinguish” part of “Embrace, extend, extinguish”

              He means that an unspecified large corporate player, who adopted AP at some point, is now moving past the Embrace and Extend phases to literally Extinguish the protocol or the smaller competitors using it.

              I'm the first person to support him in banging the drum about this all day long, if he could point me to where this is happening. Alas, insta-block instead of explanation, strongly suggesting BS.

              mariusor@metalhead.clubM 1 Reply Last reply
              0
              • mikedev@fediversity.siteM [email protected]
                I've also thrown about claims of EEE to some fediverse software without tangible evidence of intent, so I'll speak up here. I'm sure the project developers themselves would disagree, but many times these actions pass the walks-like-a-duck test. And it happens repeatedly. So even if it wasn't the intention, the pattern of actions has no distinguishing difference to performing the action with an intent that EEE will be the outcome.

                It's sort of like the Krasnov example. Trump may not be a Russian asset, but his actions have resulted in the exact same outcomes that a hypothetical Russian asset in his position would produce; so it walks like a duck, and it happens repeatedly.
                silverpill@mitra.socialS This user is from outside of this forum
                silverpill@mitra.socialS This user is from outside of this forum
                [email protected]
                wrote last edited by
                #15

                @mikedev I have no evidence that people at SocialCG are acting on behalf of any software project. Yes, all of them are Mastodon users, but I doubt Mastodon devs are super excited about the errata we've been discussing here or the overall direction of SocialCG's work.

                And that is exactly the problem: there is no input from developers (I am the only active participant who maintains an ActivityPub application with more than 1 user).

                @raucao @bengo

                1 Reply Last reply
                0
                • trwnh@mastodon.socialT [email protected]

                  @silverpill @raucao no requirements are being changed here. "the identifier is foo" does not mean "the identifier MUST always be expressed using the literal sequence of characters f, o, o".

                  speaking of requirements, please read the first sentence of https://www.w3.org/TR/activitystreams-core/#jsonld and note the MUST.

                  "as:Public should be banned" is completely uncalled for.

                  and you currently need to special-case the full URI too! this is because it is not a real object. the real mistake is addressing Public at all.

                  silverpill@mitra.socialS This user is from outside of this forum
                  silverpill@mitra.socialS This user is from outside of this forum
                  [email protected]
                  wrote last edited by
                  #16

                  @trwnh @raucao

                  "the identifier is foo" does not mean "the identifier MUST always be expressed using the literal sequence of characters f, o, o".

                  It does literally mean that. Furthermore, ActivityPub requires identifiers to be dereferenceable URIs, so even in an alternative reality where "X is Y" has a different meaning, as:Public is not a valid identifier.

                  ActivityStreams requirements don't matter because we're implementing ActivityPub, not ActivityStreams.

                  steve@social.technoetic.comS 1 Reply Last reply
                  0
                  • silverpill@mitra.socialS [email protected]

                    @trwnh @raucao

                    "the identifier is foo" does not mean "the identifier MUST always be expressed using the literal sequence of characters f, o, o".

                    It does literally mean that. Furthermore, ActivityPub requires identifiers to be dereferenceable URIs, so even in an alternative reality where "X is Y" has a different meaning, as:Public is not a valid identifier.

                    ActivityStreams requirements don't matter because we're implementing ActivityPub, not ActivityStreams.

                    steve@social.technoetic.comS This user is from outside of this forum
                    steve@social.technoetic.comS This user is from outside of this forum
                    [email protected]
                    wrote last edited by
                    #17

                    @silverpill @trwnh @raucao I don't think this is accurate or helpful. The first sentence of the AP spec: "The ActivityPub protocol is a decentralized social networking protocol based upon the ActivityStreams 2.0 data format.". Later, "ActivityPub uses ActivityStreams for its vocabulary." AS2 is referenced many times in the spec. It definitely *does* matter in an ActivityPub context.

                    silverpill@mitra.socialS 1 Reply Last reply
                    0
                    • raucao@kosmos.socialR [email protected]

                      @silverpill @bengo "We’re now entering the “extinguish” part of “Embrace, extend, extinguish”

                      He means that an unspecified large corporate player, who adopted AP at some point, is now moving past the Embrace and Extend phases to literally Extinguish the protocol or the smaller competitors using it.

                      I'm the first person to support him in banging the drum about this all day long, if he could point me to where this is happening. Alas, insta-block instead of explanation, strongly suggesting BS.

                      mariusor@metalhead.clubM This user is from outside of this forum
                      mariusor@metalhead.clubM This user is from outside of this forum
                      [email protected]
                      wrote last edited by
                      #18

                      @raucao from my own perspective as a user and developer for the fediverse, the only perpetrator of EEE strategies is Mastodon.

                      They're the ones that implement only the parts of the spec that suits them, and add other unrelated bits, and inadvertently bully everyone else into supporting the same or face not being federated with the majority of the fediverse.

                      I suspect that's not what @bengo meant, but you never know.

                      @silverpill

                      1 Reply Last reply
                      0
                      • steve@social.technoetic.comS [email protected]

                        @silverpill @trwnh @raucao I don't think this is accurate or helpful. The first sentence of the AP spec: "The ActivityPub protocol is a decentralized social networking protocol based upon the ActivityStreams 2.0 data format.". Later, "ActivityPub uses ActivityStreams for its vocabulary." AS2 is referenced many times in the spec. It definitely *does* matter in an ActivityPub context.

                        silverpill@mitra.socialS This user is from outside of this forum
                        silverpill@mitra.socialS This user is from outside of this forum
                        [email protected]
                        wrote last edited by
                        #19

                        @steve @trwnh @raucao I was talking about the specific requirement in ActivityPub.

                        ActivityStreams may matter in other cases (however, as we have seen, it is not entirely clear whether "X is Y" and "X uses Y" are normative statements).

                        trwnh@mastodon.socialT 1 Reply Last reply
                        0
                        • silverpill@mitra.socialS [email protected]

                          @steve @trwnh @raucao I was talking about the specific requirement in ActivityPub.

                          ActivityStreams may matter in other cases (however, as we have seen, it is not entirely clear whether "X is Y" and "X uses Y" are normative statements).

                          trwnh@mastodon.socialT This user is from outside of this forum
                          trwnh@mastodon.socialT This user is from outside of this forum
                          [email protected]
                          wrote last edited by
                          #20

                          @silverpill @steve @raucao <Note> is <as:Note> is <https://www.w3.org/ns/activitystreams#Note>, but only "Note" is consistent with compacted JSON-LD.

                          Fundamentally, identifiers are expressed in different ways depending on context. The prefix mechanism produces compact URIs, which are still intrinsically URIs despite their lexical form not being a valid URI. If you care about referents, you need to expand them.

                          "as:Public" is canonical for object properties (type:id). Disliking this fact doesn't make it untrue.

                          trwnh@mastodon.socialT 1 Reply Last reply
                          0
                          • trwnh@mastodon.socialT [email protected]

                            @silverpill @steve @raucao <Note> is <as:Note> is <https://www.w3.org/ns/activitystreams#Note>, but only "Note" is consistent with compacted JSON-LD.

                            Fundamentally, identifiers are expressed in different ways depending on context. The prefix mechanism produces compact URIs, which are still intrinsically URIs despite their lexical form not being a valid URI. If you care about referents, you need to expand them.

                            "as:Public" is canonical for object properties (type:id). Disliking this fact doesn't make it untrue.

                            trwnh@mastodon.socialT This user is from outside of this forum
                            trwnh@mastodon.socialT This user is from outside of this forum
                            [email protected]
                            wrote last edited by
                            #21

                            @silverpill @steve @raucao The only thing I can really suggest is dropping the use of the prefix mechanism by undefining the `as` term, then rewriting all other term definitions to not use the `as:` prefix. This might make sense since the media type nominally guarantees the meaning of certain terms, and you really shouldn't define your own custom terms in the `as:` namespace, so maybe it's okay to say that no one should ever use `as:`. Is that the resolution you'd prefer?

                            silverpill@mitra.socialS 1 Reply Last reply
                            0
                            • trwnh@mastodon.socialT [email protected]

                              @silverpill @steve @raucao The only thing I can really suggest is dropping the use of the prefix mechanism by undefining the `as` term, then rewriting all other term definitions to not use the `as:` prefix. This might make sense since the media type nominally guarantees the meaning of certain terms, and you really shouldn't define your own custom terms in the `as:` namespace, so maybe it's okay to say that no one should ever use `as:`. Is that the resolution you'd prefer?

                              silverpill@mitra.socialS This user is from outside of this forum
                              silverpill@mitra.socialS This user is from outside of this forum
                              [email protected]
                              wrote last edited by
                              #22

                              @trwnh @steve @raucao I am not convinced that there is a problem in the first place.

                              ActivityPub says the identifier is https://www.w3.org/ns/activitystreams#Public. JSON publishers use full URI. Server implementations that perform JSON-LD processing (e.g. Iceshrimp) also produce full URI, they figured it out. Then, why make a change?

                              If this issue is purely theoretical, then it must be addressed without changing ActivityPub.

                              steve@social.technoetic.comS 1 Reply Last reply
                              0
                              • silverpill@mitra.socialS [email protected]

                                @trwnh @steve @raucao I am not convinced that there is a problem in the first place.

                                ActivityPub says the identifier is https://www.w3.org/ns/activitystreams#Public. JSON publishers use full URI. Server implementations that perform JSON-LD processing (e.g. Iceshrimp) also produce full URI, they figured it out. Then, why make a change?

                                If this issue is purely theoretical, then it must be addressed without changing ActivityPub.

                                steve@social.technoetic.comS This user is from outside of this forum
                                steve@social.technoetic.comS This user is from outside of this forum
                                [email protected]
                                wrote last edited by
                                #23

                                @silverpill @trwnh @raucao These kinds of discussions fascinate me. "Yeah, it's not right, but what's the problem?" 😉 It reminds me of ...

                                https://xkcd.com/1172/

                                trwnh@mastodon.socialT 1 Reply Last reply
                                0
                                • steve@social.technoetic.comS [email protected]

                                  @silverpill @trwnh @raucao These kinds of discussions fascinate me. "Yeah, it's not right, but what's the problem?" 😉 It reminds me of ...

                                  https://xkcd.com/1172/

                                  trwnh@mastodon.socialT This user is from outside of this forum
                                  trwnh@mastodon.socialT This user is from outside of this forum
                                  [email protected]
                                  wrote last edited by
                                  #24

                                  @silverpill

                                  Iceshrimp has hacky workarounds for interop reasons with plain JSON consumers who fail to understand the currently canonical fully conformant normal form of "as:Public" and only understand the non-canonical full URI. Hacky workarounds shouldn't be the norm. If one were to build an AS2 validator right now, the validator would produce documents that cause interop issues. That's the problem we're trying to solve. Issues like this prevent validation from being feasible.

                                  @steve @raucao

                                  julian@community.nodebb.orgJ 1 Reply Last reply
                                  0
                                  • trwnh@mastodon.socialT [email protected]

                                    @silverpill

                                    Iceshrimp has hacky workarounds for interop reasons with plain JSON consumers who fail to understand the currently canonical fully conformant normal form of "as:Public" and only understand the non-canonical full URI. Hacky workarounds shouldn't be the norm. If one were to build an AS2 validator right now, the validator would produce documents that cause interop issues. That's the problem we're trying to solve. Issues like this prevent validation from being feasible.

                                    @steve @raucao

                                    julian@community.nodebb.orgJ This user is from outside of this forum
                                    julian@community.nodebb.orgJ This user is from outside of this forum
                                    [email protected]
                                    wrote last edited by
                                    #25

                                    [email protected] but as:Public is not a dereferenceable URL. Needs to be special cased anyway.

                                    End of the day nothing changes, it needs special handling for all the cases anyway.

                                    cc [email protected]

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


                                    • Login

                                    • Don't have an account? Register

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