Kairo-Jinkendo/backend/steering/strategies/next_action/__init__.py

47 lines
1.7 KiB
Python
Raw Permalink Normal View History

"""Bootstrap NextAction strategies."""
from __future__ import annotations
from steering.strategies.next_action.agile_iteration import (
register_agile_iteration_strategy,
)
from steering.strategies.next_action.continuous_product import (
continuous_product_strategy,
register_continuous_product_strategy,
)
from steering.strategies.next_action.default_strategy import default_strategy
from steering.strategies.next_action.maturity_progression import (
register_maturity_progression_strategy,
)
from steering.strategies.next_action.product_milestone_driven import (
product_milestone_strategy,
)
from steering.strategies.next_action.program_delivery import (
program_delivery_strategy,
register_program_delivery_strategy,
)
from steering.strategies.next_action.queue_pull import register_queue_pull_strategy
from steering.strategies.next_action.recurring_control import (
register_recurring_control_strategy,
)
from steering.strategies.next_action.registry import (
get_next_action_strategy,
register_next_action_strategy,
)
from steering.strategies.next_action.sequential_dependency import (
register_sequential_dependency_strategy,
)
def register_builtin_strategies() -> None:
for strategy in (default_strategy, product_milestone_strategy):
if not get_next_action_strategy(strategy.key):
register_next_action_strategy(strategy)
register_program_delivery_strategy()
register_continuous_product_strategy()
register_sequential_dependency_strategy()
register_maturity_progression_strategy()
register_recurring_control_strategy()
register_queue_pull_strategy()
register_agile_iteration_strategy()