Skip Navigation

Posts
15
Comments
1,655
Joined
2 yr. ago

  • In Lemmy, only admins and mods can see votes. But most other ActivityPub implementations show votes freely and there's nothing in the protocol that makes votes private. Votes are inherently public - they are only hidden behind a curtain that is very easy to get around in Lemmy.

  • Please be aware that votes are effectively already public, just not shown in the Lemmy UI.

  • This is not the conversation about the underlying protocol, which is ActivityPub. This discussion is merely within Lemmy. Lemmy does not have its own protocol, it uses the ActivityPub protocol. ActivityPub has no support currently for private votes. Lemmy's GitHub repository is not the place to suggest ActivityPub changes.

  • Would the client not be able to sort the received posts after filtering?

    Your client only gets a page of the sorting at a time. You would only be able to sort that single page, but to do an actual sorting, you'll need more posts than just what appears on the front page.

  • I’m not sure it would. If my instance knows who up and downvoted a post, then they can work it out on the fly per post without even needing to tell me who did what.

    The problem is the sorting of the posts, i.e. what sits at the top of your feed. That can definitely not be calculated on the fly for every single user.

  • That would require a major change in the underlying protocol, and it could enable easy vote manipulation since there is no way for admins to watch out for malicious voting patterns.

  • Well you could do something like that but it wouldn't affect sorting of the posts then. If you have blocked an instance and that instance has upvoted a post to 1000 votes so that it appears on the top of the All-feed, you'd see it at the top with 0 votes (or only the votes from the instances you haven't blocked), which would be very strange.

  • This would require aggregating vote counts for every single user separately. I think that is simply computationally infeasible.

  • That's okay, these are very technical things. No need to be sorry :)

  • Any implementation is of course free to use a reputation system, but it seems hard to implement. You don't necessarily know all the votes a remote user has received. Say you get a vote to a post from a user who you've never heard about before. But actually this user is a well-respected member of their own instance and has been on that instance for years. Meanwhile, your instance believes this is an inactive spammer or new account or something.

  • Yea these things are unfortunately hard dealbreakers for some people. Hopefully the situation can improve in the future.

  • You only get to vote privately because the system can still verify that each person only gets to vote once.

    There is no such mechanism on the internet. Anyone can make multiple accounts and vote multiple times.

  • Vote aggregates would be insanely easy to maliciously manipulate. Also, the underlying protocol has no support for vote aggregates so this isn't even an option in the first place.

  • That would require a major change to the ActivityPub standard, which is not easy or trivial. This is at worst infeasible to impossible, at best something that is 5+ years away.

  • I don't think vibes is good enough. There's not enough certainty there. You could ask the other instance admin, but who's to say that admin is cooperative? They could be actively malicious and hiding behind this mechanism. You would ask them what's going on and they'd just say "nothing bad to see here" and you would have no way to disprove that.

    As for activitypub, there isn’t a generic server to server message that could contain a VoteTotals field while updates to the standard are proposed for addition?

    There is no such thing at the moment, though Lemmy could in theory implement it among its own instances, though even that would be hard. But it would be very non-standard and wouldn't work with other ActivityPub implementations.

  • If I can’t vote privately then I don’t vote.

    Then you should not vote on the fediverse at all, since votes have been public since the beginning. The Lemmy UI just doesn't let you see the votes.

  • Mbin and Kbin should be encouraged to change this.

    Who are you to impose how others run their instance? Clearly this should be an option that each instance can set by itself. You are of course free to defederate, but that's kinda like an instance that has downvotes disabled defederating from instances that have downvotes enabled. You can do it but it's kind of arbitrary I would say.

  • The experience of kbin and mbin users say otherwise, however.

  • No, as I said, there are Likes and Dislikes. You can see the Dislike object in the standard here. ActivityPub is composed of various different standards that all come together to form a federation system.

    Likes are defined as being added to the Liked collection, which is essentially votes. It's all just what you call a vote or a like, it's just semantics. It is definitely part of the standard.

  • using their position of trust on the lemmy network

    Being a lemmy admin is not a "position of trust" - anyone can fire up a single-person instance for themselves and be a lemmy admin. You can also just view a post on mbin to see votes.