RSS-Bridge / RSS-Bridge/rss-bridge
[BlueskyBridge] Periodic errors in feed due to Bluesky downtime.
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 9.2k
- Forks
- 1.2k
- Avg merge
- 12h 45m
- Merged PRs (30d)
- 2
Description
@mruac Periodically the BlueskyBridge will return errors in the feed due to timing out. This most always coincides with brief periods of downtime on Bluesky's servers, which I've confirmed at the time of the error using DownDetector.
When these errors happen, the feed will display with a single item, and its content_html field will be full of errors, including a variation on this line:
cURL error Operation timed out after 5002 milliseconds with 0 bytes received: 28 (https://curl.haxx.se/libcurl/c/libcurl-errors.html) for https://public.api.bsky.app/xrpc.bsky.feed.getAuthorFeed?actor=did%3{REDACTED]&filter=posts_no_replies&limit=30
The feed in question is set to display only posts from the user, no replies, and have a cache timeout of 10 minutes.
Not sure if it's possible to implement this, but would there be a way to have the bridge error out without actually updating the feed? In other words, it would stop trying sometime before 5000ms and would leave the feed as-is until the next scheduled check?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the BlueskyBridge entry point and follow how a timed-out Bluesky request updates the feed and its cache. Reproduce a timeout around the reported 5002-millisecond failure and inspect the existing feed output. Done means a failed request leaves the previous feed unchanged and does not publish error text as its only item.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100