fix(llm-gateway): improve type safety and datetime consistency

- Add type annotations for mypy compliance
- Use UTC-aware datetimes consistently (datetime.now(UTC))
- Add type: ignore comments for LiteLLM incomplete stubs
- Fix import ordering and formatting
- Update pyproject.toml mypy configuration

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-03 20:56:05 +01:00
parent 6e8b0b022a
commit f482559e15
15 changed files with 111 additions and 105 deletions

View File

@@ -215,25 +215,27 @@ class ModelRouter:
continue
if model_name not in available_models:
errors.append({
"model": model_name,
"error": f"Provider {config.provider.value} not configured",
})
errors.append(
{
"model": model_name,
"error": f"Provider {config.provider.value} not configured",
}
)
continue
# Check circuit breaker
circuit = self._circuit_registry.get_circuit_sync(config.provider.value)
if not circuit.is_available():
errors.append({
"model": model_name,
"error": f"Circuit open for {config.provider.value}",
})
errors.append(
{
"model": model_name,
"error": f"Circuit open for {config.provider.value}",
}
)
continue
# Model is available
logger.debug(
f"Selected model {model_name} for group {model_group.value}"
)
logger.debug(f"Selected model {model_name} for group {model_group.value}")
return model_name, config
# No models available