#35223 [Bug]: Auto Router ignores vision capability when picking a deployment, so one image permanently breaks a session
### Check for existing issues
- [x] I have searched the existing issues and checked that my issue is not a duplicate.
### What happened?
## What happens
If a model group (or an `auto_router` alias) mixes vision-capable and text-only deployments, one image kills the whole session, not just the turn it was sent on.
The client keeps the image in its history and resends it every turn. As soon as the router picks a text-only deployment, the provider rejects the entire request, so every following turn fails the same way. Client-side history compaction fails too, since it replays the full history, so there is no way out: the session has to be thrown away.
Hit this on Bedrock behind an `auto_router/complexity_router` alias, but nothing here is Bedrock-specific. Code below is the same on the `v1.94.0` tag and current `main`.
## Why
The router never looks at request modality when picking a deployment.
**1. `_pre_call_checks` has no modality filter.** `litellm/router.py:10163` filters candidates on context window, RPM, region, and unsupported params. That last one already does capability-based elimination via `litellm.get_supported_openai_params()`, but it is scoped to one param:
``…