Skip to content

Stop CoreData from keeping a stale source author_id after TES - #131

Open
Pitchfork-and-Torch wants to merge 1 commit into
xai-org:mainfrom
Pitchfork-and-Torch:cursor/tes-author-overwrite-in-network-a4ef
Open

Stop CoreData from keeping a stale source author_id after TES#131
Pitchfork-and-Torch wants to merge 1 commit into
xai-org:mainfrom
Pitchfork-and-Torch:cursor/tes-author-overwrite-in-network-a4ef

Conversation

@Pitchfork-and-Torch

Copy link
Copy Markdown

Bug

#128 runs InNetwork after CoreData so TES can fill author_id. CoreData update only wrote author_id when the source field was already 0.

Phoenix (and Thunder) ship a nonzero author_id. TES still runs (text is empty, so already_hydrated is false). The TES author is discarded. InNetwork stamps the source id.

A followed TES author is then fetched at TimelineHomeRecommendations. Recs-only Drop fires for tweet NSFW_HIGH_PRECISION, GORE_AND_VIOLENCE_HIGH_PRECISION, and NSFW_CARD_IMAGE. The same labels on Home are Interstitial (NSFW_MEDIA_INTERSTITIALS).

  • Entry: CoreDataCandidateHydrator::update fill-if-zero
  • Sink: VFCandidateHydrator (in_network.unwrap_or(false) → Recs) then VFFilter
  • Break: TES author thrown away when the source already set a nonzero id
  • Viewer effect: a followee's NSFW HP / gore / card post retrieved via Phoenix is hard-dropped on For You
  • Twin: retweeted_tweet_id / retweeted_user_id from TES already overwrite the source

This is not rewriting Recs-only policy. This is not #128 (order). This is not #119 (RT wrapper primary id). This is not #115 (Following quotes).

Fix

When TES returns a nonzero author, write it. TES miss still keeps the source author.

Tests

  • Source author_id = 0, TES 4242
  • Source 99, TES 4242
  • TES miss (0) keeps source
  • TES 42 (followed) then InNetwork → in_network = true
  • Stale source 99 without TES overwrite still stamps OON

Standalone decision-table harness (same predicate): 6 assertions passed.

cargo test cannot run here. Public dump has no Home Mixer manifest.

Leftover

already_hydrated still skips TES when source author_id != 0 and text is nonempty. InNetworkCandidateHydrator.enable is still !has_cached_posts.

xai-org#128 runs InNetwork after CoreData so TES can fill author_id. CoreData only
wrote author_id when the source field was 0. Phoenix and Thunder ship a
nonzero id. TES ran and was discarded. InNetwork stamped the source id.

A followed TES author then hit TimelineHomeRecommendations. NSFW HP / gore /
card Recs-drop; the same labels are interstitial on TimelineHome.

TES author now overwrites a nonzero source id. TES miss still keeps source.
@Pitchfork-and-Torch
Pitchfork-and-Torch force-pushed the cursor/tes-author-overwrite-in-network-a4ef branch from 172c429 to 902a06f Compare September 8, 2026 23:12
@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.

@Pitchfork-and-Torch

Copy link
Copy Markdown
Author

Reopened. This was a serving-path hunt PR parked by mistake during the 2026-09-08 intern-stack cleanup. Not a reject of the class. Leaving it for xAI review.

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