Skip to content

Outbox Like #67

Description

@steve-bate

There may be similar issues with other outbox activity side-effect specifications, but this is one that I've recently encountered.

Section 6.8 describes the outbox processing side-effect:

The side effect of receiving this in an outbox is that the server SHOULD add the object to the actor's liked Collection.

That's fine, but what about the likes count/collection on the liked object?

The AP spec describes that side-effect only in the Server-to-Server side-effects in section 7.10:

The side effect of receiving this in an inbox is that the server SHOULD increment the object's count of likes by adding the received activity to the likes collection if this collection is present.

Again, this is Server-to-Server (Federated) inbox behavior and ActivityPub provides little or no specifications for local delivery. However, that means the outbox Like side-effects for local likes will result in lower-than-expected likes counts (because the likes count/collection is not updated).

Shouldn't there should be an outbox side-effect for updating the likes count/collection when the liked object is local?

I'm also wondering about Like addressing and what it means. Is it valid to have a non-public directly-addressed outbox Like? It seems like the addressing indicates the actor only wants specific recipients to be aware of the Like. How does that affect the local and remote like counts?

Should we only allow public Likes where any other recipients are specified only for remote delivery purposes?


There are also seems to be side-effect issues with inbox Like (although it's not an ActivityPub API issue, per se). The way the requirement is phrased, each time a remote Like is received in (delivered to) an inbox, the side-effects should be performed. If an incoming remote Like is delivered to multiple, possible many, local inboxes, that would locally overcount the likes for the remote object.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions