@@ -70,6 +70,11 @@ interface ParsedMessage {
70
70
node_id ?: string ;
71
71
value ?: number ;
72
72
visits ?: number ;
73
+ reward ?: number ;
74
+ terminal_node_description ?: string ;
75
+ step ?: number ;
76
+ step_name ?: string ;
77
+ iteration ?: number ;
73
78
}
74
79
75
80
interface PathStep {
@@ -174,6 +179,9 @@ const MessageLogPanelLATS: React.FC<MessageLogPanelProps> = ({ messages, message
174
179
case 'node_terminal' :
175
180
return "bg-gradient-to-r from-green-50 to-green-100 dark:from-green-900/20 dark:to-green-800/20 border-green-200 dark:border-green-800" ;
176
181
182
+ case 'simulation_result' :
183
+ return "bg-gradient-to-r from-amber-50 to-amber-100 dark:from-amber-900/20 dark:to-amber-800/20 border-amber-200 dark:border-amber-800" ;
184
+
177
185
default :
178
186
return "bg-gradient-to-r from-slate-50 to-slate-100 dark:from-slate-900/20 dark:to-slate-800/20 border-slate-200 dark:border-slate-800" ;
179
187
}
@@ -284,6 +292,8 @@ const MessageLogPanelLATS: React.FC<MessageLogPanelProps> = ({ messages, message
284
292
return < Play className = "h-4 w-4 text-green-500" /> ;
285
293
case 'node_terminal' :
286
294
return < Flag className = "h-4 w-4 text-green-500" /> ;
295
+ case 'simulation_result' :
296
+ return < Info className = "h-4 w-4 text-amber-500" /> ;
287
297
default :
288
298
return < Info className = "h-4 w-4 text-slate-500" /> ;
289
299
}
@@ -379,6 +389,9 @@ const MessageLogPanelLATS: React.FC<MessageLogPanelProps> = ({ messages, message
379
389
case 'node_terminal' :
380
390
return "bg-green-100 dark:bg-green-800/30 text-green-600 dark:text-green-400" ;
381
391
392
+ case 'simulation_result' :
393
+ return "bg-amber-100 dark:bg-amber-800/30 text-amber-600 dark:text-amber-400" ;
394
+
382
395
default :
383
396
return "bg-slate-100 dark:bg-slate-800/30 text-slate-600 dark:text-slate-400" ;
384
397
}
@@ -559,11 +572,6 @@ const MessageLogPanelLATS: React.FC<MessageLogPanelProps> = ({ messages, message
559
572
< div className = "text-cyan-600 dark:text-cyan-400" >
560
573
{ message . description || message . type . split ( '_' ) . join ( ' ' ) }
561
574
</ div >
562
- { message . node_id && (
563
- < div className = "text-xs text-slate-500 dark:text-slate-400" >
564
- Node ID: { message . node_id }
565
- </ div >
566
- ) }
567
575
</ div >
568
576
</ div >
569
577
) ;
@@ -580,17 +588,56 @@ const MessageLogPanelLATS: React.FC<MessageLogPanelProps> = ({ messages, message
580
588
< div className = "text-green-600 dark:text-green-400" >
581
589
{ message . description || message . type . split ( '_' ) . join ( ' ' ) }
582
590
</ div >
583
- { message . node_id && (
591
+ { message . action && (
592
+ < div className = "text-xs text-slate-500 dark:text-slate-400" >
593
+ Action: { message . action }
594
+ </ div >
595
+ ) }
596
+ </ div >
597
+ </ div >
598
+ ) ;
599
+
600
+ case 'simulation_result' :
601
+ return (
602
+ < div className = "flex items-center gap-2 animate-fadeIn" >
603
+ { getIcon ( message ) }
604
+ < div className = "animate-slideIn" >
605
+ < div className = "text-amber-600 dark:text-amber-400" >
606
+ Simulation Result | Reward: { message . reward }
607
+ </ div >
608
+ { message . terminal_node_description && (
584
609
< div className = "text-xs text-slate-500 dark:text-slate-400" >
585
- Node ID: { message . node_id }
586
- { message . value !== undefined && ` | Value: ${ message . value . toFixed ( 2 ) } ` }
587
- { message . visits !== undefined && ` | Visits: ${ message . visits } ` }
610
+ { message . terminal_node_description }
588
611
</ div >
589
612
) }
590
613
</ div >
591
614
</ div >
592
615
) ;
593
616
617
+ case 'step_start' :
618
+ return (
619
+ < div className = "flex items-center gap-2 animate-fadeIn" >
620
+ { getIcon ( message ) }
621
+ < div className = "animate-slideIn" >
622
+ < div className = "text-blue-600 dark:text-blue-400" >
623
+ Step { message . step } : { message . step_name }
624
+ </ div >
625
+ </ div >
626
+ </ div >
627
+ ) ;
628
+
629
+ case 'iteration_start' :
630
+ return (
631
+ < div className = "flex items-center gap-2 animate-fadeIn" >
632
+ { getIcon ( message ) }
633
+ < div className = "animate-slideIn" >
634
+ < div className = "text-blue-600 dark:text-blue-400" >
635
+ Iteration { message . iteration }
636
+ </ div >
637
+ </ div >
638
+ </ div >
639
+ ) ;
640
+
594
641
default :
595
642
return (
596
643
< div className = "flex items-center gap-2 animate-fadeIn" >
0 commit comments