import { AlertTriangle } from 'lucide-react' import { formatPercent } from '@/lib/format' import type { Activity } from '@/domain/types' import type { RoiResult } from '@/domain/roi' // Umbral de ROI a partir del cual se dispara la advertencia de verosimilitud. // Un ROI > 1000% anual es matemáticamente posible pero comercialmente inverosímil: // indica casi siempre un input incorrecto (frecuencia sobreestimada, costo auto subestimado // o inversión subestimada). Documentado en METHODOLOGY_AUTOMATED_COST.md. const ROI_HIGH_THRESHOLD = 1000 interface TransparencySectionProps { activities: Activity[] investment: number roi?: RoiResult } export function TransparencySection({ activities, investment, roi }: TransparencySectionProps) { const zeroCostAutomatable = activities.filter( (a) => a.automatable && a.automatedCostFixed === 0 && a.automatedTimeMinutes === 0 ) const investmentIsZero = investment === 0 // Caso 4: ROI > 1000% finito (Infinity no aplica — ya lo cubre el caso de investment=0) const roiIsUnusuallyHigh = roi !== undefined && Number.isFinite(roi.roiAnnualPercent) && roi.roiAnnualPercent > ROI_HIGH_THRESHOLD if (zeroCostAutomatable.length === 0 && !investmentIsZero && !roiIsUnusuallyHigh) return null return (

Transparencia metodológica

{zeroCostAutomatable.length > 0 && (

{zeroCostAutomatable.length === 1 ? '1 actividad automatizable sin costo configurado:' : `${zeroCostAutomatable.length} actividades automatizables sin costo configurado:`}

Estas actividades se incluyen en el escenario automatizado con costo cero, lo que puede inflar artificialmente el ahorro calculado. Configurá sus costos en el workspace para un análisis realista.

)} {investmentIsZero && (

Inversión en automatización no configurada.{' '} El payback aparece como inmediato y el ROI como infinito porque no hay inversión inicial. Configurá la inversión total en la tab "Global" del workspace para un análisis financiero completo.

)} {roiIsUnusuallyHigh && roi && (

ROI inusualmente alto detectado: {formatPercent(roi.roiAnnualPercent)}. {' '} Un ROI superior al {formatPercent(ROI_HIGH_THRESHOLD, 0)} anual suele indicar uno de estos casos:

Revisá estos inputs antes de presentar el reporte al cliente. Ver METHODOLOGY_AUTOMATED_COST.md para guía de estimación.

)}
) }