/** * Investigation Map — user-facing workspace card. * * Shows the progress of reasoning as a set of investigation topics with * simple status indicators. Does NOT expose graph internals. * * Design principles: * - Calm, spacious, accessible * - No percentages, no progress bars, no confidence scores * - Topics evolve naturally across turns */ import getInvestigationMapTopics from "@/lib/map/investigation-map-adapter"; /* ── Status icons (unicode — no icon library dependency) ─── */ const STATUS_ICONS = { established: "✓", current: "●", unknown: "○", }; function topicRowColor(status) { switch (status) { case "established": return "text-gray-900"; case "current": return "text-blue-800"; default: return "text-gray-400"; } } function topicIconColor(status) { switch (status) { case "established": return "text-green-600"; case "current": return "text-blue-500"; default: return "text-gray-300"; } } /* ── Single topic row ───────────────────────────────────── */ function TopicRow({ title, status }) { const icon = STATUS_ICONS[status]; const colorClass = topicRowColor(status); const iconColor = topicIconColor(status); const ariaLabel = `${status === "established" ? "Established" : status === "current" ? "Currently investigating" : "Still to explore"}: ${title}`; return (
Active investigation topics and their status.