mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-08-01 04:42:10 +03:00
- SearchToolsClient: Studio orchestrator with Search/Scrape/Compare tabs and shared SearchToolsConfigPane; latency+cost metrics wired to TopBar - SearchToolsTopBar: 3-tab switcher with metrics display and Export Code button (MockExportCodeModal placeholder annotated TODO(F7-merge)) - SearchToolsConfigPane: provider catalog inline with per-tab options (search-type, fetch format/full-page, rerank model, history) - SearchConceptCard: collapsible explanatory cards for all 5 modalities - ProviderCatalog: fetches /api/search/providers, renders 12 search + 3 fetch providers with status badges (configured/missing/rate_limited) - ScrapeResult: markdown preview + raw toggle + D21 256KB cap with truncation warning and full-content raw modal - tabs/SearchTab: SearchForm + ResultsPanel + RerankPanel with noProvidersConfigured CTA wired - tabs/ScrapeTab: URL input + /v1/web/fetch call via useScrapeFetch hook - tabs/CompareTab: up to 4 providers (D22) in parallel via Promise.allSettled, overlap calculation, best/worst coloring - hooks/useScrapeFetch: fetch wrapper for /v1/web/fetch with latency - SearchForm: extended with catalog provider metadata badges - ResultsPanel: extended with noProvidersConfigured CTA empty state - ProviderComparison: "Size" hardcoded text annotated with data-i18n attr - 7 vitest UI test files: 75 tests covering all acceptance criteria