import type { RRFResult, RerankedResult, FinalResult } from '../types'; import { InfoTooltip } from './PipelineView'; interface FusionColumnState { rrf: { status: 'idle' | 'done'; data?: { merged: RRFResult[] } }; rerank: { status: 'idle' | 'running' | 'done'; data?: { before: RRFResult[]; after: RerankedResult[] } }; finalResults?: FinalResult[]; } interface FusionColumnProps { state: FusionColumnState; accent: string; info: string; } function Spinner({ color }: { color: string }) { return ( ); } function SectionHeader({ label, color, badge }: { label: string; color: string; badge?: string }) { return (
Awaiting search...
)} {rrfDone && state.rrf.data && (Reranking with cross-encoder...
)} {rerankDone && state.rerank.data && (