## Summary
- Added RoutingService with scoring algorithm for model selection
- Routes based on task type, cost tier, capabilities (reasoning/image/context), provider preference
- REST endpoints: POST /api/providers/route and /api/providers/rank
- New routing types in @mosaic/types
## Test plan
- [x] typecheck, lint, format:check all pass
Closes #21
Add RoutingService that selects optimal LLM model based on task type,
cost tier, capability requirements (reasoning, image, context window),
and provider preference. Scoring algorithm ranks all available models.
- RoutingService: route() for best match, rank() for scored list
- POST /api/providers/route and /api/providers/rank endpoints
- Routing types in @mosaic/types (CostTier, TaskType, RoutingCriteria)
- Cost tier classification: cheap (<$1/M), standard (<$10/M), premium
Closes#21
Co-Authored-By: Claude Opus 4.6 <[email protected]>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Test plan
Closes #21