import React from 'react';
import { motion } from 'framer-motion';
const clamp = (value) => Math.min(Math.max(value || 0, 0), 1);
const MetricCard = ({ label, value, tone, hint }) => (
{label}
{clamp(value).toFixed(2)}
{hint}
);
export const MetricsPanel = ({ metrics, trade, agents }) => {
const reward = clamp(metrics?.reward);
const grade = clamp(metrics?.grade);
const drawdown = clamp(1 - (metrics?.drawdown || 0));
const sharpe = clamp(metrics?.sharpe);
const confidences = Object.values(agents || {}).map((agent) => agent?.confidence || 0);
const deskSync = confidences.length
? confidences.reduce((sum, confidence) => sum + confidence, 0) / confidences.length
: 0;
return (
Training Pulse
Desk metrics in motion
{trade?.override ? 'PM override live' : 'Autonomy running'}
);
};