Sfoglia il codice sorgente

fix: Multiple Paths Between IF/ELSE Branches Invalidate Conditions (#11544)

Signed-off-by: yihong0618 <zouzou0208@gmail.com>
yihong 4 mesi fa
parent
commit
70dd69d533

+ 2 - 0
api/core/workflow/nodes/answer/answer_stream_generate_router.py

@@ -147,6 +147,8 @@ class AnswerStreamGeneratorRouter:
         reverse_edges = reverse_edge_mapping.get(current_node_id, [])
         for edge in reverse_edges:
             source_node_id = edge.source_node_id
+            if source_node_id not in node_id_config_mapping:
+                continue
             source_node_type = node_id_config_mapping[source_node_id].get("data", {}).get("type")
             source_node_data = node_id_config_mapping[source_node_id].get("data", {})
             if (

+ 2 - 0
api/core/workflow/nodes/end/end_stream_generate_router.py

@@ -135,6 +135,8 @@ class EndStreamGeneratorRouter:
         reverse_edges = reverse_edge_mapping.get(current_node_id, [])
         for edge in reverse_edges:
             source_node_id = edge.source_node_id
+            if source_node_id not in node_id_config_mapping:
+                continue
             source_node_type = node_id_config_mapping[source_node_id].get("data", {}).get("type")
             if source_node_type in {
                 NodeType.IF_ELSE.value,