FediHome v1.12.0
FediHome v1.12.0 — crossposts that don't get lost 🔁
Highlights
- Failed Bluesky/Threads crossposts are now retried automatically instead of silently lost. When you published a post, a crosspost that failed transiently (a network blip, a 5xx, an HTTP/2
GOAWAY) used to be discarded with no log line and no retry — a real incident lost a video post's Bluesky copy with zero evidence. Now every crosspost failure is logged, and Bluesky/Threads failures are persisted and retried by the scheduler with backoff (2 min → 10 min → 1 h → 6 h → 24 h, then it gives up), writing the crosspost marker on success. Because Bluesky/Threads (unlike ActivityPub) don't dedupe a re-sent post, a retry re-reads the post first and skips if it already landed or was deleted — so a crash between a successful crosspost and its bookkeeping can't produce a duplicate. It's a fourth toggle on Instance settings (/admin/settings,SCHEDULER_CROSSPOST_*). (#225) - Dependency refresh:
@atproto/api→ 0.20.27.
Upgrade
npm run update. Additive schema only (new FailedCrosspost table) — no breaking changes.
Full changelog: the 1.12.0 section of CHANGELOG.md