Skip to content

Stop RankingScorer author diversity from keying the retweeter - #172

Closed
Pitchfork-and-Torch wants to merge 1 commit into
xai-org:mainfrom
Pitchfork-and-Torch:cursor/magellan-ranking-author-div-ff33
Closed

Stop RankingScorer author diversity from keying the retweeter#172
Pitchfork-and-Torch wants to merge 1 commit into
xai-org:mainfrom
Pitchfork-and-Torch:cursor/magellan-ranking-author-div-ff33

Conversation

@Pitchfork-and-Torch

Copy link
Copy Markdown

Bug

RankingScorer::author_pool_counts decayed on wrapper author_id. Phoenix ranking features already key the original author (as_tweet_info / get_original_author_id). Distinct retweeters of one original did not share a diversity bucket. One retweeter of distinct originals did.

This is not #31 (author-size IPS). This is not #125 (gizmoduck origin size/NSFW). This is not #128/#154/#135 (in_network stamps). in_network stays the poster. Diversity is the post-Phoenix author-repeat lever.

Five-line proof

  • Entry: RankingScorer::author_pool_counts (EnableAuthorDiversity)
  • Sink: PhoenixCandidatePipeline scorers [PhoenixScorer, RankingScorer, VMRanker] then TopKScoreSelector
  • Break: pool count used retweeter author_id while Phoenix hashed get_original_author_id()
  • Viewer effect: one original could take many For You slots via different retweeters; a single retweeter of distinct authors was starved
  • Twin: PostCandidate::as_tweet_info / build_tweet_infos already send the original author to Phoenix

Change

  • Count author diversity on get_original_author_id() (retweeted user, else poster)
  • Originals and quotes unchanged (no retweeted_user_id)

Tests

  • Two retweets of the same original author from different retweeters: second is decayed
  • One retweeter of two original authors: no decay
  • Existing same-poster originals still decay

Standalone rustc model of author_pool_counts + get_original_author_id: 3/3 passed.

cargo test cannot run. Public dump has no home-mixer crate manifest.

Fork PR: none

RankingScorer author-pool decay used the wrapper author_id. Phoenix
already hashes get_original_author_id, so one original could flood For
You through distinct retweeters while a single retweeter of distinct
authors was decayed. Count diversity on the original author.
@Pitchfork-and-Torch
Pitchfork-and-Torch force-pushed the cursor/magellan-ranking-author-div-ff33 branch from a1886d8 to 902a06f Compare September 8, 2026 23:08
@Pitchfork-and-Torch

Copy link
Copy Markdown
Author

Parking this intern-stack PR per operator GitHub cleanup (2026-09-08). Hunt notes remain local. Not a reject of the class.

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