PMFlow/backend/app/services/ai_pmo/ai_pmo_cadence/service.py

32 lines
855 B
Python

"""AI PMO cadence service composition."""
from __future__ import annotations
from .mixin_builders import CadenceBuildersMixin
from .mixin_program_view import CadenceProgramViewMixin
from .mixin_queries_a import CadenceQueriesAMixin
from .mixin_queries_b import CadenceQueriesBMixin
from .mixin_snapshots import CadenceSnapshotsMixin
from .shared import AsyncSession
class AIPMOCadenceService(
CadenceSnapshotsMixin,
CadenceProgramViewMixin,
CadenceBuildersMixin,
CadenceQueriesAMixin,
CadenceQueriesBMixin,
):
"""Daily/weekly/risk/milestone cadence engine."""
SUPPORTED_CADENCE_TYPES = {
"daily_standup",
"weekly_review",
"risk_review",
"milestone_check",
}
def __init__(self, db: AsyncSession, tenant_id: int) -> None:
self.db = db
self.tenant_id = int(tenant_id)