mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-08-03 13:52:09 +03:00
Search Playground (Phase 1): - Web Search as 10th endpoint in Playground with isolated SearchPlayground component - Endpoint selector moved first; Provider/Model/Send hidden when search selected - Provider dropdown via GET /api/search/providers, formatted results with cache indicator Search Tools page (Phase 2) at /dashboard/search-tools: - Split panel: SearchForm (left) with query, provider, filters + ResultsPanel (right) - Compare Providers: parallel queries with latency, cost, response size, URL overlap - Rerank Pipeline: model selector from /v1/models, results with position delta - Search History: last 10 searches from call_logs with replay - Sidebar entry under Debug section Backend: - GET /api/search/providers — list providers with auth guard + SEARCH_CREDENTIAL_FALLBACKS - GET /api/search/stats — cache stats, provider aggregates, recent searches (auth guard) - Add local provider_nodes routing for /v1/rerank (oMLX, vLLM support) Bug fixes (from F-27 PR #432): - Fix Brave news normalizer: data.results directly, not data.news.results - Enforce max_results truncation after normalization for all providers - Fix EndpointPageClient: use /api/search/providers instead of /api/v1/search - Add isAuthenticated() guards on /api/search/providers and /api/search/stats Response size metric in results meta bar and compare table. i18n: 30+ keys in search namespace (en.json)