feat: Add Microsub integration with reference-based data approach

- Add Microsub source type to sync subscriptions from Microsub channels
- Use reference-based approach to avoid data duplication:
  - Blogs store microsubFeedId reference instead of copying data
  - Items for Microsub blogs are queried from microsub_items directly
  - No duplicate storage or retention management needed
- Add channel filter and category prefix options for Microsub sources
- Add webhook endpoint for Microsub subscription change notifications
- Update scheduler to skip item fetching for Microsub blogs
- Update items storage to combine results from both collections
- Bump version to 1.0.7

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Ricardo
2026-02-08 12:35:52 +01:00
parent 9556849df0
commit 8ace76f8c2
9 changed files with 631 additions and 38 deletions

View File

@@ -89,6 +89,10 @@ export default class BlogrollEndpoint {
// Feed discovery (protected to prevent abuse)
protectedRouter.get("/api/discover", apiController.discover);
// Microsub integration (protected - internal use)
protectedRouter.post("/api/microsub-webhook", apiController.microsubWebhook);
protectedRouter.get("/api/microsub-status", apiController.microsubStatus);
return protectedRouter;
}