Changed API fallback chain:
- Tier 1: Ollama (local, free, always available)
- Tier 2: Gemini (free tier with quota limits)
- Tier 3: OpenRouter (cheap, flexible fallback)
- Tier 4: OpenCode (final backup)
This saves costs by using local Ollama for most tasks.
OpenRouter only used when Ollama unavailable.
Added OpenRouter as tertiary fallback:
- Primary: Gemini (free tier, quota-limited)
- Secondary: OpenCode (fallback if Gemini quota exceeded)
- Tertiary: OpenRouter (final fallback, supports multiple models)
gemini-fallback.js now tries all three in sequence with proper error handling.
- Configured OpenCode as fallback when Gemini quota exceeded
- Created gemini-fallback.js utility (tries Gemini → OpenCode)
- API keys stored in .env (excluded from git)
- PM unblocked: can resume 05-03 with fallback system
Flow: Gemini (primary) → OpenCode (fallback) → fail gracefully