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.