diff --git a/frontend/src/components/workflow/panels/WorkflowResultViewer.jsx b/frontend/src/components/workflow/panels/WorkflowResultViewer.jsx index 6a596a5..2ea613a 100644 --- a/frontend/src/components/workflow/panels/WorkflowResultViewer.jsx +++ b/frontend/src/components/workflow/panels/WorkflowResultViewer.jsx @@ -192,13 +192,18 @@ export function WorkflowResultViewer({ result, onClose }) { Node States (Debug)
- {nodeStates.map((node) => ( + {nodeStates.map((node) => { + const hasFailed = node.status === 'failed' + const hasError = node.error != null + return (
{/* Node Header */} @@ -216,13 +221,13 @@ export function WorkflowResultViewer({ result, onClose }) { }} >
- {node.node_type === 'start' && 'πŸš€'} - {node.node_type === 'analysis' && 'πŸ€–'} - {node.node_type === 'logic' && '⚑'} - {node.node_type === 'join' && 'πŸ”€'} - {node.node_type === 'end' && '🏁'} + {node.debug_node_type === 'start' && 'πŸš€'} + {node.debug_node_type === 'analysis' && 'πŸ€–'} + {node.debug_node_type === 'logic' && '⚑'} + {node.debug_node_type === 'join' && 'πŸ”€'} + {node.debug_node_type === 'end' && '🏁'} {' '} - {node.node_label || node.node_id} + {node.debug_prompt_slug || node.node_label || (node.debug_node_type ? `${node.debug_node_type}-${node.node_id.substring(0, 8)}` : node.node_id)} {node.status === 'skipped' && ( (skipped) @@ -237,45 +242,91 @@ export function WorkflowResultViewer({ result, onClose }) { {/* Node Details */} {expandedNodes[node.node_id] && (
- {node.output && ( -
- Output: -
-                            {typeof node.output === 'string'
-                              ? node.output
-                              : JSON.stringify(node.output, null, 2)}
+                      {/* Error (show first if present) */}
+                      {node.error && (
+                        
+
+ Error: +
+
+                            {node.error}
                           
)} - {node.error && ( -
- Error: {node.error} + + {/* Debug Prompt (vollstΓ€ndiger Prompt) */} + {node.debug_prompt && ( +
+
+ Prompt: +
+
+                            {node.debug_prompt}
+                          
)} + + {/* Debug Raw Response (rohe KI-Antwort) */} + {node.debug_raw_response && ( +
+
+ Rohe Antwort: +
+
+                            {node.debug_raw_response}
+                          
+
+ )} + + {/* Analysis Core (geparste Ergebnisse) */} + {node.analysis_core && ( +
+
+ Geparste Ergebnisse: +
+
+                            {node.analysis_core}
+                          
+
+ )} + + {/* Normalized Signals */} + {node.normalized_signals && node.normalized_signals.length > 0 && ( +
+
+ Signale ({node.normalized_signals.length}): +
+
+ {node.normalized_signals.map((sig, i) => ( +
+ {sig.question_type}:{' '} + + "{sig.raw_value}" β†’ "{sig.normalized_value}" + {' '} + + {sig.status} + +
+ ))} +
+
+ )} + + {/* Output (fallback) */} + {node.output && !node.analysis_core && ( +
+ Output: +
+                            {typeof node.output === 'string' ? node.output : JSON.stringify(node.output, null, 2)}
+                          
+
+ )} + + {/* Metadata */} {node.metadata && (
Metadata: -
+                          
                             {JSON.stringify(node.metadata, null, 2)}
                           
@@ -283,7 +334,7 @@ export function WorkflowResultViewer({ result, onClose }) {
)}
- ))} + )})}
)}