"""Ingestion modules for digest-engine. Every module here exposes `fetch(lookback_hours: float) -> list[dict]` and is independently importable — `python -c 'from ingest import news_rss; print(news_rss.fetch(6))'` is a valid way to smoke-test a single source without running a whole digest. Read-only, always: per docs/project-plan.md Phase 12 step 8, no module in this package may perform a write action against any ingested platform (no replies, no flag/archive/delete, no read receipts beyond what a protocol mandates to fetch). """