const categoryLabels = { observations: "Direct Observations", reportedClaims: "Reported Claims", assumptions: "Unsupported Assumptions", entities: "Entities", transitions: "Transitions", expectedButMissing: "Expected But Missing", presentButUnexpected: "Present But Unexpected", contradictions: "Contradictions", openUncertainties: "Open Uncertainties", }; const confidenceColor = { low: "text-red-600 bg-red-50 border-red-200", medium: "text-yellow-700 bg-yellow-50 border-yellow-200", high: "text-green-700 bg-green-50 border-green-200", }; const ConfidenceBadge = ({ level }) => ( {level} ); function ItemList({ items, renderExtra }) { if (!items?.length) return

None identified

; return ( ); } export default function ReconstructionView({ reconstruction, partial }) { if (partial) { return (
⚠ Partial result — some fields failed validation. Showing what was accepted.
); } const categories = Object.entries(categoryLabels).map(([key, label]) => ({ key, label, items: reconstruction[key], })); return (

Reconstruction

{categories.map(({ key, label, items }) => (

{label}

))}
); }