fix(api): fix incorrectly handling of array[boolean] constant in loop node (#24619)

This commit is contained in:
QuantumGhost
2025-08-27 15:07:01 +08:00
committed by GitHub
parent d4883256f1
commit 421a3284bc

View File

@@ -524,7 +524,10 @@ class LoopNode(BaseNode):
@staticmethod
def _get_segment_for_constant(var_type: SegmentType, original_value: Any) -> Segment:
"""Get the appropriate segment type for a constant value."""
if not var_type.is_array_type() or var_type == SegmentType.BOOLEAN:
# TODO: Refactor for maintainability:
# 1. Ensure type handling logic stays synchronized with _VALID_VAR_TYPE (entities.py)
# 2. Consider moving this method to LoopVariableData class for better encapsulation
if not var_type.is_array_type() or var_type == SegmentType.ARRAY_BOOLEAN:
value = original_value
elif var_type in [
SegmentType.ARRAY_NUMBER,