Original dislike:

{
  "actor": "https://lemmy.ml/c/asklemmy",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public"
  ],
  "object": {
    "id": "https://endlesstalk.org/activities/dislike/e1f82f6a-d49b-4dab-b444-36c382f13c5a",
    "actor": "https://endlesstalk.org/u/freamon",
    "@context": [
      "https://www.w3.org/ns/activitystreams",
      "https://w3id.org/security/v1",
      { ... },
        ...
      }
    ],
    "object": "https://midwest.social/post/7242862",
    "type": "Dislike",
    "audience": "https://lemmy.ml/c/asklemmy"
  },
  "cc": [
    "https://lemmy.ml/c/asklemmy/followers"
  ],
  "type": "Announce",
  "id": "https://lemmy.ml/activities/announce/dislike/6896b8ce-026d-463a-a223-ec1a1d444e5c"
}

Undo of Dislike:

{
  "actor": "https://lemmy.ml/c/asklemmy",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public"
  ],
  "object": {
    "id": "https://endlesstalk.org/activities/undo/a9377c0b-074c-41de-ba99-51eeca323810",
    "actor": "https://endlesstalk.org/u/freamon",
    "@context": [
      "https://www.w3.org/ns/activitystreams",
      "https://w3id.org/security/v1",
      { ... },
        ...
      }
    ],
    "object": {
      "actor": "https://endlesstalk.org/u/freamon",
      "object": "https://midwest.social/post/7242862",
      "type": "Like",
      "id": "https://endlesstalk.org/activities/like/1f0b6132-547e-4fb5-8313-6f7b7f31be6b",
      "audience": "https://lemmy.ml/c/asklemmy"
    },
    "type": "Undo",
    "audience": "https://lemmy.ml/c/asklemmy"
  },
  "cc": [
    "https://lemmy.ml/c/asklemmy/followers"
  ],
  "type": "Announce",
  "id": "https://lemmy.ml/activities/announce/undo/feedfdca-3392-4f7b-a3ce-2306d8981c5c"
}

The original Dislike activity (https://endlesstalk.org/activities/dislike/e1f82f6a-d49b-4dab-b444-36c382f13c5a) has a record at endlesstalk.org, but the Like object’s activity that’s been undone doesn’t (https://endlesstalk.org/activities/like/1f0b6132-547e-4fb5-8313-6f7b7f31be6b just returns ‘No record found’)

I got the same results when I tried this from lemmy.world (but I thought I’d try again from a 0.19 instance)

I found some references to this at the GitHub, but they were issues that were closed off as being fixed, so I don’t know what the situation is with this now.

  • freamonOP
    link
    fedilink
    English
    arrow-up
    1
    arrow-down
    1
    ·
    1 year ago

    Well, for my own nefarious purposes, I would’ve preferred to have all the info in one place. I’m not using Lemmy or Mastodon, just messing around with ActivityPub, so it’s be easier not to have to rely on past data about who voted for what that I haven’t necessarily kept.

    • Scrubbles@poptalk.scrubbles.tech
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I don’t think that’s the architecture of ActivityPub though. It’s not meant to be a queryable thing, or a datastore. It only sends deltas, and it’s your job to keep the data you care about and apply the changes as they come through. It’s why when an instance subscribes to a community it never has before there is no history, because it doesn’t have any. (I think Lemmy goes and gets one page though)

      • freamonOP
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        I would argue that I’m not asking it to be a queryable thing or a datastore. I wouldn’t expect a community’s ‘Accept’ of a ‘Follow’ to contain loads of data about past activity because that’s not a logical or practical thing to encapsulate. For an Undo though, there’s already a small, fixed-length encapsulated object inside, consistent with how ActivityPub is used for other circumstances. Since it’s there anyway, I don’t see the value in it containing incorrect, made-up data, when it may as well have the correct data.