All checks were successful
Deploy Development / deploy (push) Successful in 47s
Test Suite / pytest-backend (push) Successful in 3m10s
Test Suite / lint-backend (push) Successful in 7s
Test Suite / compose-smoke (push) Has been skipped
Test Suite / k6 /api/health Baseline (push) Successful in 18s
Test Suite / playwright-smoke (push) Successful in 24s
Co-authored-by: Cursor <cursoragent@cursor.com>
47 lines
1.3 KiB
Python
47 lines
1.3 KiB
Python
"""Built-in method: product_milestone_driven — AP1.1."""
|
|
|
|
from __future__ import annotations
|
|
|
|
from steering.lifecycle.states import STANDARD_LIFECYCLE_STEPS
|
|
from steering.methods.registry import MethodDefinition, get_method, register_method
|
|
from steering.methods.registrations._helpers import SLICES_PRODUCT
|
|
|
|
_PRODUCT_STEPS = (
|
|
"intake",
|
|
"method_selection",
|
|
"structure_setup",
|
|
"planning",
|
|
"action_selection",
|
|
"assignment",
|
|
"waiting",
|
|
"result_intake",
|
|
"validation",
|
|
"review",
|
|
"adaptation",
|
|
"closure",
|
|
)
|
|
|
|
|
|
def register() -> None:
|
|
if get_method("product_milestone_driven"):
|
|
return
|
|
register_method(
|
|
MethodDefinition(
|
|
key="product_milestone_driven",
|
|
version="0.1.0",
|
|
label="Produkt / Meilenstein",
|
|
description="Meilenstein-orientierte Steuerung für Produkt- und Projektentwicklung",
|
|
default_lifecycle_steps=_PRODUCT_STEPS,
|
|
next_action_strategy_key="product_milestone_driven",
|
|
data_slices=SLICES_PRODUCT,
|
|
compatible_archetype_keys=frozenset(
|
|
{
|
|
"initiative.product",
|
|
"initiative.generic",
|
|
"initiative.linear_project",
|
|
"initiative.program",
|
|
}
|
|
),
|
|
)
|
|
)
|