import { TopicBadge, TOPICS } from "./TopicBadge"; interface Props { activeStage: string; } const STAGES = [ { id: "chunking", label: "Chunker", sub: "File -> Chunks (generator)" }, { id: "queued", label: "ChunkQueue", sub: "Bounded queue (backpressure)" }, { id: "processing", label: "WorkerPool", sub: "ThreadPoolExecutor" }, { id: "collecting", label: "ResultCollector", sub: "heapq reassembly" }, { id: "completed", label: "PipelineResult", sub: "Aggregate stats" }, ]; /** * Visual flow diagram of pipeline stages. * Highlights the currently active stage. * Interview Topic 4: OOP design — shows class hierarchy. */ export function PipelineDiagram({ activeStage }: Props) { return (

Pipeline Flow

{STAGES.map((stage, i) => (
{stage.label}
{stage.sub}
{i < STAGES.length - 1 &&
}
))}
Processor ABC
ChecksumProcessor SimulatedDecodeProcessor CompositeProcessor
); }