generateInsights method
- ElectricalNode root,
- Map<
String, FieldMeasurement> measurements
Genera lista de insights priorizados
Implementation
List<Insight> generateInsights(
ElectricalNode root,
Map<String, FieldMeasurement> measurements,
) {
final insights = <Insight>[];
// Flatten tree once for better performance
final nodes = TreeUtilities.flattenElectricalNodes(root);
// 1. Insights de errores teóricos (ValidationEngine)
insights.addAll(_generateTheoryInsights(nodes));
// 2. Insights de verificación (mediciones vs cálculos)
insights.addAll(_generateVerificationInsights(nodes, measurements));
// 3. Insights de éxito (si todo OK)
if (insights.where((i) => i.type == InsightType.critical).isEmpty) {
insights.add(_generateSuccessInsight(root));
}
// Ordenar por prioridad
insights.sort((a, b) => a.priority.value.compareTo(b.priority.value));
return insights;
}