Skip to content

Engagement manipulation via irrelevant trending mentions in TweetBuilder #15987

@1uc4sm4theus

Description

@1uc4sm4theus

Describe the bug
Posts containing lists of popular/trending usernames receive artificially inflated engagement metrics, allowing users to manipulate the platform's recommendation algorithm. The TweetBuilder validation system focuses on technical limits (mention count, character limits) but lacks semantic validation to detect contextually irrelevant mentions used purely for engagement manipulation.

To Reproduce
Steps to reproduce the behavior:

  1. Create a post with 3-5 mentions of currently trending or high-follower accounts
  2. Include mentions that have no contextual relevance to the posts content
  3. Post the post during peak engagement hours
  4. Observe significantly higher impressions/engagement compared to similar content without popular mentions

Expected behavior
The platform should detect and penalize posts that use irrelevant mentions of popular accounts purely for algorithmic manipulation. Such posts should either be shadowbanned, receive reduced distribution, or trigger additional review.

Screenshots

Image Image

Platform: Twitter/X web and mobile applications

Affected component: TweetBuilder pipeline (specifically spamChecker and validateEntities functions)
Code analysis based on: Internal TweetBuilder.scala implementation

Additional context
Exists in the posts creation pipeline where:

  • spamChecker doesn't analyze mention-to-content relevance
  • validateEntities only checks quantity limits, not quality/relevance
  • No semantic analysis of whether mentions serve legitimate communicative purpose
  • Missing rate limiting for engagement manipulation patterns

Proposed Solution:
Implement contextual relevance validation in the existing pipeline by:

  • Adding mention relevance scoring to TweetSpamRequest
  • Expanding validateEntities to include semantic analysis
  • Implementing specific rate limits for high-profile mention patterns
  • Marking low-quality engagement attempts for reduced algorithmic distribution

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions