New tab: sort by recency, not by trust tier

Adam reported the latest design (a premium one) was showing up
about halfway down the New tab. The New-tab sort key was:

  (broken)  ||  (trust tier weight)  ||  (createdAt desc)

So a recent post from someone you don't follow ranked BELOW older
posts from people you do follow. That's the right behaviour for a
"Following" tab, not a "New" tab — users expect newest-first when
they click New.

Trust tier removed from the New-tab sort. Recency wins, with
broken-preview still as the only soft demotion so a wall of
missing images doesn't lead. The existing Trust dropdown on the
filter row is already there for users who want to scope to
follows / extended-follows; this change just stops it from being
silently the dominant sort.

Other tabs are unchanged: Popular still uses zap-total → reactions
→ trust → createdAt, Zapped uses zap-total → trust → createdAt,
Premium uses createdAt → unlock-min.

Co-Authored-By: Claude Opus 4.7 <[email protected]>
This commit is contained in:
thePR0M3TH3ANandClaude Opus 4.7 committed 2026-05-29 09:09:23 -04:00
1 parent e6588017ed
commit 39dee5157a
1 file changed
+6 -1
+6 -1
View File
@@ -20947,7 +20947,12 @@
// "Mine" tab keeps everything because users want to see their own posts.
if (tab !== 'Mine') rows = dedupByFingerprint(rows);
if (tab === 'New') {
rows.sort((a, b) => (Number(isPreviewBroken(a)) - Number(isPreviewBroken(b))) || (TIER_WEIGHT[a.trust] - TIER_WEIGHT[b.trust]) || (b.createdAt - a.createdAt));
// "New" means newest first. Broken-image previews still sink to
// the bottom so the wall doesn't lead with junk, but trust tier
// is NOT a sort key on this tab — that's what the Trust filter
// dropdown is for. Use Popular if you want trust- and zap-
// weighted ranking.
rows.sort((a, b) => (Number(isPreviewBroken(a)) - Number(isPreviewBroken(b))) || (b.createdAt - a.createdAt));
} else if (tab === 'Premium') {
// Newest premium first; cheaper unlocks before pricier ones at the
// same recency.