Pagination in the Discover feed fails to produce a distinct, ordered list of posts when using cursors. Duplicate posts become increasingly prevalent with each subsequent page, making it nearly impossible to retrieve new unique posts after a certain point.
To Reproduce
Steps to reproduce the behavior:
Go to bsky.app while logged out
Open a network tab
Scroll down as much as you can
Keep scrolling
Before long, you'll notice the network tab is going crazy making repeated requests to the feed and getting mostly posts that have already been returned by the feed. I assume the DDoS behavior is due to the client logic filtering out duplicate posts and continuing to try to fetch more since we're still at the bottom of the feed.
Expected behavior
Ideally, a unique, distinct list should be returned by the API as the fetcher uses a cursor to get additional pages. It seems the feed was engineered to allow for real-time reordering of the list, which is understandable, but in its current state the pagination is nearly unusable. It seems the cursor may not be functioning at all.
Describe the bug
Pagination in the Discover feed fails to produce a distinct, ordered list of posts when using cursors. Duplicate posts become increasingly prevalent with each subsequent page, making it nearly impossible to retrieve new unique posts after a certain point.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Ideally, a unique, distinct list should be returned by the API as the fetcher uses a
cursor
to get additional pages. It seems the feed was engineered to allow for real-time reordering of the list, which is understandable, but in its current state the pagination is nearly unusable. It seems the cursor may not be functioning at all.Details