Adds DISCORD_WEBHOOK_DECISIONS_URL env var. If set, decision and
news_alert posts go to that channel; all other events stay on the
main webhook. Falls back to main webhook if not configured.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Pass raw a/b decisions to notify_decision so gemini shows its real
value (⛔ limit) instead of groq's value when rate-limited.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- main.py: detect rate_limit_exhausted from voter_a, switch to single(voter_b)
and notify Discord once per session
- discord.py: add notify_voter_fallback() with yellow warning embed
- config.py: add voter_fallback to default notify_on list
- dashboard/app.py: show warning banner when fallback mode active (last 2h)
- CLAUDE.md: refresh architecture docs, fix stale google-genai migration note
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>