0c6358ab98
When Cloudflare blocks requests to bsky.social or public.api.bsky.app with a 403, the error was swallowed by a generic except clause and reported as "Bluesky auth failed" - misleading users into thinking their credentials were wrong. Now _create_session() preserves the specific error in _session_error, and search_bluesky() surfaces it. Cloudflare 403s get a clear message about network-level blocks. Actual 401s say "Invalid credentials". Closes #69 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>