"""Unit tests for effective method contract resolution.""" from __future__ import annotations from steering.effective_contract import resolve_effective_steering_elements def test_product_plan_phase_includes_agile_backlog_elements(): elements = resolve_effective_steering_elements( "continuous_product", data_slices=["backlog", "actions", "work_cycles"], active_composition_modifier=None, ) assert "work_cycle_scope" in elements assert "backlog_epic_hierarchy" in elements def test_linear_without_work_cycles_excludes_agile_backlog(): elements = resolve_effective_steering_elements( "sequential_dependency", data_slices=["backlog", "actions", "roadmap"], active_composition_modifier=None, ) assert "critical_path" in elements assert "backlog_epic_hierarchy" not in elements def test_active_modifier_merges_agile_elements(): elements = resolve_effective_steering_elements( "sequential_dependency", data_slices=["backlog", "actions"], active_composition_modifier="agile_iteration", ) assert "backlog_epic_hierarchy" in elements