Addressing confusion between `Create` and contained object

I just learned that Lemmy actually does send activities where the addressing does not match:

{
    "id": "https://lemmy.example/activities/create/ad54f1a4-be61-44fa-8fc2-daae18ba04f1",
    "actor": "https://lemmy.example/u/lemmy",
    "to": [
        "https://www.w3.org/ns/activitystreams#Public"
    ],
    "object": {
        "type": "Page",
        "id": "https://lemmy.example/post/2",
        "attributedTo": "https://lemmy.example/u/lemmy",
        "to": [
            "https://lemmy.example/c/lemmy",
            "https://www.w3.org/ns/activitystreams#Public"
        ],
        "name": "Hello from Lemmy!",
        "cc": [],
        "mediaType": "text/html",
        "attachment": [],
        "sensitive": false,
        "published": "2025-05-21T20:15:31.023976Z",
        "audience": "https://lemmy.example/c/lemmy",
        "tag": [
            {
                "href": "https://lemmy.example/post/2",
                "name": "#lemmy",
                "type": "Hashtag"
            }
        ]
    },
    "cc": [
        "https://lemmy.example/c/lemmy"
    ],
    "type": "Create",
    "audience": "https://lemmy.example/c/lemmy"
}

Note that the outer Create activity has to: ["https://www.w3.org/ns/activitystreams#Public"] and cc: ["https://lemmy.example/c/lemmy"] while the inner Page object has to: ["https://lemmy.example/c/lemmy", "https://www.w3.org/ns/activitystreams#Public"] and cc: [].

@nutomic perhaps this is something you’d like to fix - the spec suggests that the addressing on Create and its contained object should be equal.

1 Like