w3c / activitystreams

Activity Streams 2.0
https://www.w3.org/TR/activitystreams-core/
Other
285 stars 60 forks source link

Issuing updates related to Flag Activities? #609

Closed ThisIsMissEm closed 2 months ago

ThisIsMissEm commented 4 months ago

Please Indicate One:

Please Describe the Issue:

Currently when content is reported on ActivityPub servers, this generates a Flag activity being sent to the other servers, in practice with Mastodon this looks like:

    {
      "@context": "https://www.w3.org/ns/activitystreams",
      "id": "https://social.example/reports/123",
      "type": "Flag",
      "content": "Harassing comment",
      "actor": "https://social.example/@jane_smith",
      "object": [
         "https://other.social/users/123",
         "https://other.social/users/123/status/456",
      ],
    }

However, we currently lack a way to represent the report itself in ActivityStreams, so https://social.example/reports/123 cannot be requested and get back some representation of the report.

This then means that we don't really have a mechanism to allow other.social to notify social.example that they've resolved the report that gets created on their server (since it's a copy), we can't send an Update, because we don't have an Object to update as far as I can tell?

We can't do Accept/Reject for the same reason.

Unless it's possible for us to do something like:

    {
      "@context": "https://www.w3.org/ns/activitystreams",
      "id": "https://social.example/reports/123#2024-07-19T200...",
      "type": "Update",
      "object": {
        "type": "Flag",
        "content": "Harassing comment",
        "actor": "https://social.example/@jane_smith",
        "object": [
           "https://other.social/users/123",
           "https://other.social/users/123/status/456",
        ],
      }
   }

This means that we currently seem to lack a way to allow a server that has received a Flag activity to notify the reporting server that the Flag has been resolved, which leaves people wondering if their reports have actually been recieved or actioned by remote users.

I suspect this needs a FEP.

evanp commented 4 months ago

In issue triage today, we considered some options for this process.

An important part of this is content -- giving some notice to reporter why their report was or wasn't acted upon.

Any work in here will need to take into account user safety. We wouldn't want to expose the reporter's identity without their consent.

I think this work is really interesting, but probably isn't directly implied by the Activity Vocabulary definitions. I think a FEP is probably the next best step.

ThisIsMissEm commented 4 months ago

I've documented more of the user experience concerns in https://github.com/mastodon/mastodon/issues/31083

ThisIsMissEm commented 2 months ago

Closing as I think this can be moved to the ActivityPub Trust & Safety Taskforce within SWICG.