Isolate residual S/R target selection
This commit is contained in:
@@ -765,6 +765,8 @@ def test_sr_research_variant_is_explicit_and_validated(monkeypatch):
|
||||
"legacy_range_grid_neutral",
|
||||
"production_range504",
|
||||
"rewrite_range504_legacy_primary",
|
||||
"rewrite_range504_structural_legacy_primary",
|
||||
"rewrite_range504_structural_primary2",
|
||||
):
|
||||
monkeypatch.setenv("BACKTEST_SR_VARIANT", variant)
|
||||
assert bt._sr_research_variant() == variant
|
||||
@@ -776,6 +778,10 @@ def test_sr_research_variant_is_explicit_and_validated(monkeypatch):
|
||||
def test_range_factor_detector_mapping_is_explicit():
|
||||
assert bt._sr_detector_variant("production_range504") == "production_control"
|
||||
assert bt._sr_detector_variant("rewrite_range504_legacy_primary") == "rewrite"
|
||||
assert bt._sr_detector_variant(
|
||||
"rewrite_range504_structural_legacy_primary"
|
||||
) == "rewrite"
|
||||
assert bt._sr_detector_variant("rewrite_range504_structural_primary2") == "rewrite"
|
||||
assert bt._sr_detector_variant("soft_zones_legacy_primary") == "soft_zones"
|
||||
|
||||
|
||||
@@ -789,6 +795,10 @@ def test_range_factor_gate_is_research_arm_only():
|
||||
below = bt.RANGE_FACTOR_MIN_LOG - 0.01
|
||||
assert not bt._range_factor_allows("production_range504", below)
|
||||
assert not bt._range_factor_allows("rewrite_range504_legacy_primary", below)
|
||||
assert not bt._range_factor_allows(
|
||||
"rewrite_range504_structural_primary2",
|
||||
below,
|
||||
)
|
||||
assert bt._range_factor_allows(
|
||||
"production_range504",
|
||||
bt.RANGE_FACTOR_MIN_LOG,
|
||||
@@ -796,6 +806,18 @@ def test_range_factor_gate_is_research_arm_only():
|
||||
assert bt._range_factor_allows("production_control", below)
|
||||
|
||||
|
||||
def test_residual_arms_change_only_the_primary_rr_floor():
|
||||
activation = {"min_rr": 2.0}
|
||||
assert bt._primary_min_rr_for_variant(
|
||||
"rewrite_range504_structural_legacy_primary",
|
||||
activation,
|
||||
) == 1.5
|
||||
assert bt._primary_min_rr_for_variant(
|
||||
"rewrite_range504_structural_primary2",
|
||||
activation,
|
||||
) == 2.0
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
("variant", "neutral_strength"),
|
||||
[
|
||||
|
||||
@@ -374,3 +374,6 @@ def test_gate_requires_confirmation_for_standalone_round_number():
|
||||
assert _gate_eligible_levels(
|
||||
[untouched, confirmed, confluent], confirmed_rounds_only=True
|
||||
) == [confirmed, confluent]
|
||||
assert _gate_eligible_levels(
|
||||
[untouched, confirmed, confluent], exclude_standalone_rounds=True
|
||||
) == [confluent]
|
||||
|
||||
Reference in New Issue
Block a user