Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Appview: add grandparent author to reply ref, ensure no replies to blocked grandparent in feeds #2461

Merged
merged 6 commits into from
May 2, 2024

Conversation

devinivy
Copy link
Collaborator

@devinivy devinivy commented May 2, 2024

Two changes here:

  • introduces a new field on feed items item.reply.grandparentAuthor which contains a basic profile for the grandparent (i.e. parent's parent) reply of a post.
  • ensures that in feed settings (e.g. timeline), posts whose reply grandparent author is blocked do not appear. This essentially applies the block rule to item.reply.parent that Appview: remove replies to blocked posts from feeds #2430 applied to item.post, if that makes sense.

Replaces #2229.

Copy link
Collaborator

@dholms dholms left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks great 🙌

@devinivy devinivy merged commit ec40af0 into main May 2, 2024
10 checks passed
@devinivy devinivy deleted the parent-reply-author branch May 2, 2024 19:25
@haileyok
Copy link
Contributor

haileyok commented May 2, 2024

💎

@mackuba
Copy link

mackuba commented May 2, 2024

Please don't do this ☹️ If I understand it correctly, this means that if some user blocks me, I will not only not see their posts (which is expected), and not only someone's comments to them, but also someone's comments to those comments. This goes way further than is expected IMHO.

So imagine a case like this: we have a user, let's call them Karen, who has blocked me. Karen asks a question about the AT Protocol. Shreyan (who I follow) answers that question using the word "ATProto". Daniel (who I also follow) chimes in and clarifies the answer, also mentioning "ATProto". Now, because Karen has blocked me, that comment by Shreyan and the reply by Daniel, who are both my mutuals, will not appear either in my Following timeline or in the ATProto feed which I follow. These are two comments by people I both follow that are both relevant to the ATProto-themed feed I'm interested in, but because I'm blocked by Karen, these posts won't be visible to me in any of the main feeds. What's more, because this is now being implemented at the AppView level, I won't even be able to make a customized client app that chooses to show these comments. Which means some interesting discussions on topics that interest me between people I follow will be hidden from me…

Bluesky is all about choice and letting you customize your experience and what you want and don't want to see. Why should the decision to hide these posts from my view be made by Karen in this case and not by me? She has a right to hide her own posts from me, but not my friends' replies to one another. My opinion is that these posts should not be filtered out at the AppView level, they should be returned in the API response and there should be client-side configuration that should let me choose to see all posts that aren't directly blocked in my feeds if that is my preference (even if that's not the default setting).

@MasterJ93
Copy link

This is a fair point that mackuba is saying. I understand that my example could potentially be extreme, but what mackuba says caused me some concern that I've been worried could happen:

Why should the decision to hide these posts from my view be made by Karen in this case and not by me?

I fear that this can possibly lead to abusive scenarios where someone could simply block you, then decide to follow you around and begin saying whatever they want to say, thereby disallowing you to even see many of the replies (as a show of hatred). I've always been wary of having things like this be done, so I don't think it would be a great idea to implement it in this sort of way at this time. Perhaps there can be a boolean setting that bypasses that. Then, you have the choice of allowing this sort of thing to happen.

I think this should probably be reverted for now and a rethink of a better solution could be possible.

@mackuba
Copy link

mackuba commented May 3, 2024

I realize that changes like this and the earlier change to hide direct replies to a blocked parent are in response to many people saying "I keep seeing my friends replying to someone I blocked, I don't want to be seeing those, please fix this". And this is a perfectly good (and probably common) position to have! Like I said, Bluesky is all about letting you control what you want to see and not see. And a lot of people want to avoid seeing something that might be potentially annoying, even at the cost of missing some relevant content. But other people like me want to choose a different tradeoff, and this kind of implementation forces this other choice on me - because you can hide something unwanted, but you can't show something that isn't there at all.

@devinivy
Copy link
Collaborator Author

devinivy commented May 3, 2024

Totally heard! We'll take a closer look at this behavior 👍

@mackuba
Copy link

mackuba commented May 6, 2024

Thanks! 🙌

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants