From 45f87f0cbb6ff9a30ee94dbcf3456e84427b78f0 Mon Sep 17 00:00:00 2001 From: Florian Pfaff <6773539+FlorianPfaff@users.noreply.github.com> Date: Mon, 29 Jun 2026 11:30:49 +0200 Subject: [PATCH 1/2] Add public sequence node flag validation regression --- .../test_public_sequence_node_flag_validation.py | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 tests/filters/test_public_sequence_node_flag_validation.py diff --git a/tests/filters/test_public_sequence_node_flag_validation.py b/tests/filters/test_public_sequence_node_flag_validation.py new file mode 100644 index 000000000..dd187c53e --- /dev/null +++ b/tests/filters/test_public_sequence_node_flag_validation.py @@ -0,0 +1,11 @@ +import pytest +from pyrecest.filters import SequenceAssociationNode + + +def test_public_node_rejects_non_boolean_gap_flag_before_consistency_check(): + with pytest.raises(ValueError, match="is_missed_detection must be a bool"): + SequenceAssociationNode( + frame_index=0, + candidate_index=1, + is_missed_detection="False", + ) From 753babac234754651948af6ced74f1bdb2adc37e Mon Sep 17 00:00:00 2001 From: Florian Pfaff <6773539+FlorianPfaff@users.noreply.github.com> Date: Mon, 29 Jun 2026 11:31:25 +0200 Subject: [PATCH 2/2] Simplify public node wrapper --- src/pyrecest/filters/sequence_node_validation.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/pyrecest/filters/sequence_node_validation.py b/src/pyrecest/filters/sequence_node_validation.py index d56ae3800..5a45910af 100644 --- a/src/pyrecest/filters/sequence_node_validation.py +++ b/src/pyrecest/filters/sequence_node_validation.py @@ -9,6 +9,4 @@ class SequenceAssociationNode(_SequenceAssociationNode): """Sequence-association node with consistent gap-node bookkeeping.""" def __post_init__(self) -> None: - if self.is_missed_detection and self.candidate_index is not None: - raise ValueError("candidate_index must be None for explicit gap nodes") super().__post_init__()