Skip to content

Drop Following posts whose author blocked the viewer - #108

Open
Pitchfork-and-Torch wants to merge 1 commit into
xai-org:mainfrom
Pitchfork-and-Torch:fix/following-native-blocked-by
Open

Drop Following posts whose author blocked the viewer#108
Pitchfork-and-Torch wants to merge 1 commit into
xai-org:mainfrom
Pitchfork-and-Torch:fix/following-native-blocked-by

Conversation

@Pitchfork-and-Torch

Copy link
Copy Markdown

Bug

FollowingBlockedByHydrator asked socialgraph whether quoted_user_id or retweeted_user_id blocked the viewer. It never sent candidate.author_id. AuthorSocialgraphFilter then drops on author_blocks_viewer (unwrap_or false).

A native Following post from an author who blocked the viewer still served: author_blocks_viewer was written from retweeted_user_id only, so a non-retweet was Some(false). VFFilter None is fail-open, but this path is worse: it claims the author did not block the viewer.

Phoenix BlockedByHydrator already checks author_id. PR 100 added retweeted_user_id on For You. This is the Following twin of that missing native-author edge. This is not mute-on-retweet (PR 9) and not quote mute (PR 23).

Fix

Include author_id in check_blocked_by. Set author_blocks_viewer if either the primary author or the original retweeted author blocked the viewer. Keep quoted_author_blocks_viewer on quoted_user_id.

Proof

  • Entry: FollowingBlockedByHydrator check_blocked_by on reverse-chron Following
  • Sink: AuthorSocialgraphFilter author_blocks_viewer
  • Break: Following never passed author_id into blocked-by
  • Viewer effect: user blocked by A still sees A's native Following post (and A's retweet of B)
  • Twin: Phoenix BlockedByHydrator author_id (PR 100 is the retweet original twin)

Tests

  • native_author_who_blocked_viewer_is_marked (fails on unmodified main)
  • retweet_of_author_who_blocked_viewer_is_still_marked
  • retweeter_who_blocked_viewer_is_marked
  • quoted_author_who_blocked_viewer_is_still_marked
  • unit tests added; cargo test cannot run in the public dump (no Home Mixer Cargo.toml)

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.

1 participant