@@ -665,15 +665,16 @@ def get_next_node_list(self, current_node, current_node_result):
665665 if next_node .properties .get ('condition' , "AND" ) == 'AND' :
666666 if self .dependent_node_been_executed (edge .targetNodeId ):
667667 up_nodes = self .flow .get_up_nodes (edge .targetNodeId )
668- up_node_id_list = current_node .up_node_id_list
668+ up_node_id_list = [ * current_node .up_node_id_list , current_node . node . id ]
669669 if up_nodes and len (up_nodes ) > 1 :
670670 up_nodes .sort (key = lambda node : node .id )
671671 first = up_nodes [0 ]
672672 up_node_id_list = [n_c for n_c in self .node_context if n_c .node .id == first .id ][
673673 0 ].up_node_id_list
674+ up_node_id_list = [* up_node_id_list , first .id ]
674675 node_list .append (
675676 self .get_node_cls_by_id (edge .targetNodeId ,
676- [ * up_node_id_list , current_node . node . id ] ))
677+ up_node_id_list ))
677678 else :
678679 node_list .append (
679680 self .get_node_cls_by_id (edge .targetNodeId ,
@@ -686,15 +687,16 @@ def get_next_node_list(self, current_node, current_node_result):
686687 if next_node .properties .get ('condition' , "AND" ) == 'AND' :
687688 if self .dependent_node_been_executed (edge .targetNodeId ):
688689 up_nodes = self .flow .get_up_nodes (edge .targetNodeId )
689- up_node_id_list = current_node .up_node_id_list
690+ up_node_id_list = [ * current_node .up_node_id_list , current_node . node . id ]
690691 if up_nodes and len (up_nodes ) > 1 :
691692 up_nodes .sort (key = lambda node : node .id )
692693 first = up_nodes [0 ]
693694 up_node_id_list = [n_c for n_c in self .node_context if n_c .node .id == first .id ][
694695 0 ].up_node_id_list
696+ up_node_id_list = [* up_node_id_list , first .id ]
695697 node_list .append (
696698 self .get_node_cls_by_id (edge .targetNodeId ,
697- [ * up_node_id_list , current_node . node . id ] ))
699+ up_node_id_list ))
698700 else :
699701 node_list .append (
700702 self .get_node_cls_by_id (edge .targetNodeId ,
0 commit comments