Add provider rotation to Gas City so agents can fail over between providers:
ProviderStrategy interface with RandomStrategy implementation
Providers []string and ProviderStrategy fields on Agent/AgentPatch/AgentOverride
- Wire provider rotation into
ResolveProvider — agents cycle through configured providers
- Skip session restarts when provider is in quota cooldown
- Re-roll provider on session restart to avoid quota-exhausted cycles
- Startup probe for provider session health
- Test coverage for provider rotation selection
Motivation: when running multiple LLM providers (Claude, Gemini, OpenAI via proxy), agents should automatically rotate away from providers that are rate-limited or down.
Add provider rotation to Gas City so agents can fail over between providers:
ProviderStrategyinterface withRandomStrategyimplementationProviders []stringandProviderStrategyfields on Agent/AgentPatch/AgentOverrideResolveProvider— agents cycle through configured providersMotivation: when running multiple LLM providers (Claude, Gemini, OpenAI via proxy), agents should automatically rotate away from providers that are rate-limited or down.