Expand description
§Merging multiple timelines into one feed
MultipleTimeline composes several
crate::client::timeline::single_timeline::SingleTimeline cursors into one
chronologically merged stream. Used for:
- “following” feeds (one
SingleTimelineper followed user), - “trending hashtags” (one
SingleTimelineper hashtag), - any other feed that fans out over several
(BucketType, base_id)sources.
Each call to get_more_posts sorts the component timelines by age + post-count
penalty (so slow / empty sub-timelines don’t hog quota), pulls a quota of posts from
each, and then merges the results by timestamp. Deduplication and the
recent-posts-pen integration are delegated to the sub-timelines.