f8072ab339
Logs into a real Telegram account via MTProto (GramJS) rather than a bot, so it can read any public channel's history. API ID/hash and the login session are entered through the admin Connections panel and stored encrypted at rest (new storage/crypto.ts AES-256-GCM helper) rather than via .env. Messages render as their own TelegramCard (same treatment as tweets) and open the original message on Telegram instead of an internal article page; attached media/albums are downloaded and self-hosted at ingestion time since Telegram has no public hotlinkable media URL. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014c1L8ghNBFjfiH64UMViP8