import React from 'react' import { Bot, User } from 'lucide-react' import EvalCard from './EvalCard.jsx' export default function ChatMessage({ message }) { const { role, content, evaluation, retryResult, retryPerformed, scoreImprovement } = message if (role === 'user') { return (

{content}

) } if (role === 'typing') { return (
) } return (
{/* Response bubble */}

{content}

{/* Evaluation card */} {evaluation && ( )} {/* Retry result */} {retryPerformed && retryResult && (
↻ Auto-Retry with Optimized Prompt
{/* Improved response */} {retryResult.response && (
Optimized Response {retryResult.prompt_version || 'optimized'} prompt

{retryResult.response}

)} {/* Score improvement badge */} {scoreImprovement !== undefined && scoreImprovement !== null && (
0 ? 'bg-success-50 text-success-700 border border-success-500/20' : 'bg-slate-100 text-slate-600' }`}> {scoreImprovement > 0 ? '↑' : '→'} Score {scoreImprovement > 0 ? '+' : ''}{Math.round(scoreImprovement * 100)}%
)}
)}
) }