Prototype: Show known likers on post thread page#11080
Conversation
|
Claude finished @abenzer's task in 2m 29s —— View job Review
I read the four changed files against I found no blocking issues. A few non-blocking observations: 1. Avatars (3) vs. names (2) can make a recognized face read as an anonymous "other" —
2. GrowthBook exposure logged on every eligible render — The comment explains the ordering intent (evaluate only for viewers who could see the treatment), which is right. Just flagging that 3. Just confirming the new I checked the three-platform surface (nothing web/native-specific here), Lingui coverage (all strings wrapped; both the visible |
|
|
Let's discuss in Slack. Just concerned about the feasibility of actually shipping this to production for all posts. Huge +1 on the feature though 👍 |
Fetch the likers sample for everyone signed in, then check the feature gate only if the viewer follows one of the likers. This keeps people who'd see no difference out of the test. Note: this means app.bsky.feed.getLikes will be called on every thread page view for signed-in users for posts with at least 1 like
# Conflicts: # src/analytics/features/types.ts
|
Claude finished @abenzer's task in 2m 32s —— View job Review
I re-reviewed against One finding survives, and it's the same one from the first pass — still present verbatim after the merge: 1. Face pile shows up to 3 avatars, but the sentence only names 2 and counts the rest as "others" — a recognizable face gets described as anonymous —
Concrete case: you follow Jack, Amy, and Bob; all three liked a post whose total Non-blocking (prototype, gated), but visible whenever ≥3 followed likers appear in the sample. Reconcile the two: either cap the pile at Non-blocking notes (no change requested):
I also checked Lingui coverage (all four sentence variants and the a11y |
|
Claude finished @abenzer's task in 2m 36s —— View job Review
I re-reviewed against One finding survives from the prior passes — still present verbatim: 1. Face pile shows up to 3 avatars, but the sentence names 2 and counts the rest as "others" — a recognizable face gets described as anonymous —
Concrete case: you follow Jack, Amy, and Bob; all three liked a post whose total Reconcile the two: cap the pile at New note on
Still-standing non-blocking notes (no change requested):
I also re-checked Lingui coverage (all four sentence variants plus the a11y |
|
Claude finished @estrattonbailey's task in 1m 57s —— View job Review
I re-reviewed focusing on what's new since the last pass — the substantive change is That's a good change, and it's correct. It matches the canonical moderation-filter pattern used across the app ( One finding survives from the prior passes — still present verbatim: 1. Face pile shows up to 3 avatars, but the sentence names 2 and counts the rest as "others" — a recognizable face gets described as anonymous —
Concrete case: you follow Jack, Amy, and Bob; all three liked a post whose total Reconcile the two: cap the pile at Still-standing non-blocking notes (no change requested):
I also re-checked Lingui coverage (all four sentence variants + the a11y |
What this does
On the post thread page, the post's plain "N likes" stat is replaced with a row showing which people you follow liked the post: a few stacked avatars plus a sentence like "Jack, Amy, and 34 others like this." Names link to profiles, but the rest of the row links to the liked-by list. Viewers who don't follow any of the likers (or aren't signed in) see the existing "N likes" text unchanged.
Demo
How it works
app.bsky.feed.getLikes(limit: 100, the API max) via a newuseLikedBySampleQuery, kept separate from the liked-by screen's paginated query.post_thread:known_likers:enable. The gate is evaluated only for signed-in viewers of posts with likes, and when it's off, nogetLikesrequest fires.Known limitations