[ActivityPub] Impossible to undo like/reactions sent to misskey #15

Closed
opened 2022-06-25 16:22:55 +00:00 by floatingghost · 0 comments

when trying to undo a Like or EmojiReact activity, the system references the object property of its Undo to an AP ID

however, it also deletes the record from the database, rendering resolution of this impossible without a local lookup on the remote end

{
  "actor": "https://upstream.local.live/users/upstream_user",
  "bcc": [],
  "bto": [],
  "cc": [
    "https://www.w3.org/ns/activitystreams#Public"
  ],
  "id": "https://upstream.local.live/activities/8c89b7d1-dd2c-4f08-bd5b-b967e8dce216",
  "object": "https://upstream.local.live/activities/7d98c303-ba45-42dc-b13d-3db632d92187",
  "to": [
    "https://misskey.local.live/users/918e9nrm7o",
    "https://upstream.local.live/users/upstream_user/followers"
  ],
  "type": "Undo"
}

to replicate you will need a (pler|akk)oma instance and a misskey instance, try reacting to or liking a post from misskey, then undo it

misskey will complain about not being able to find the referenced object

the AP Spec suggests that we should embed the object to undo instead of referencing - but it should theoretically be in-spec to use an ID

let's see if embedding fixes this, else we'll have to think of a more clever solution to this

when trying to undo a `Like` or `EmojiReact` activity, the system references the `object` property of its `Undo` to an AP ID however, it also deletes the record from the database, rendering resolution of this impossible without a local lookup on the remote end ```json { "actor": "https://upstream.local.live/users/upstream_user", "bcc": [], "bto": [], "cc": [ "https://www.w3.org/ns/activitystreams#Public" ], "id": "https://upstream.local.live/activities/8c89b7d1-dd2c-4f08-bd5b-b967e8dce216", "object": "https://upstream.local.live/activities/7d98c303-ba45-42dc-b13d-3db632d92187", "to": [ "https://misskey.local.live/users/918e9nrm7o", "https://upstream.local.live/users/upstream_user/followers" ], "type": "Undo" } ``` to replicate you will need a (pler|akk)oma instance and a misskey instance, try reacting to or liking a post from misskey, then undo it misskey will complain about not being able to find the referenced object the [AP Spec](https://www.w3.org/TR/activitystreams-vocabulary/#dfn-undo) suggests that we should embed the object to undo instead of referencing - but it should theoretically be in-spec to use an ID let's see if embedding fixes this, else we'll have to think of a more clever solution to this
floatingghost added the
bug
label 2022-06-25 16:23:07 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: AkkomaGang/akkoma#15
No description provided.