diff --git a/capability_manager/built_in_capabilities/GenerateUserInteractionPlanCapability.py b/capability_manager/built_in_capabilities/GenerateUserInteractionPlanCapability.py index e69de29..4724912 100644 --- a/capability_manager/built_in_capabilities/GenerateUserInteractionPlanCapability.py +++ b/capability_manager/built_in_capabilities/GenerateUserInteractionPlanCapability.py @@ -0,0 +1,18 @@ +"""Capability to generate a user interaction plan.""" + +from ..Capability import Capability + + +class GenerateUserInteractionPlanCapability(Capability): + """Stub that would plan system prompts and expected user responses.""" + + def __init__(self): + super().__init__( + name="GenerateUserInteractionPlanCapability", + description="Create an outline of planned interactions with the user.", + ) + + def execute(self): # pragma: no cover - minimal stub + """Execute generation of the interaction plan.""" + pass + diff --git a/capability_manager/built_in_capabilities/UpdateUserInteractionPlanCapability.py b/capability_manager/built_in_capabilities/UpdateUserInteractionPlanCapability.py index e69de29..5ceb816 100644 --- a/capability_manager/built_in_capabilities/UpdateUserInteractionPlanCapability.py +++ b/capability_manager/built_in_capabilities/UpdateUserInteractionPlanCapability.py @@ -0,0 +1,18 @@ +"""Capability to update an existing user interaction plan.""" + +from ..Capability import Capability + + +class UpdateUserInteractionPlanCapability(Capability): + """Stub for adjusting an existing interaction plan based on feedback.""" + + def __init__(self): + super().__init__( + name="UpdateUserInteractionPlanCapability", + description="Modify a previously generated user interaction plan.", + ) + + def execute(self): # pragma: no cover - minimal stub + """Apply updates to the interaction plan.""" + pass + diff --git a/capability_manager/built_in_capabilities/__init__.py b/capability_manager/built_in_capabilities/__init__.py index 3cb4f4e..d09326c 100644 --- a/capability_manager/built_in_capabilities/__init__.py +++ b/capability_manager/built_in_capabilities/__init__.py @@ -2,10 +2,14 @@ from .InitialAssessmentCapability import InitialAssessmentCapability from .MermaidGanttChartCapability import MermaidGanttChartCapability from .UserDialogueCapability import UserDialogueCapability +from .GenerateUserInteractionPlanCapability import GenerateUserInteractionPlanCapability +from .UpdateUserInteractionPlanCapability import UpdateUserInteractionPlanCapability __all__ = [ "EthicalDecisionMakingCapability", "InitialAssessmentCapability", "MermaidGanttChartCapability", "UserDialogueCapability", + "GenerateUserInteractionPlanCapability", + "UpdateUserInteractionPlanCapability", ] diff --git a/product_manager/built_in_products/BudgetProposalProduct.py b/product_manager/built_in_products/BudgetProposalProduct.py index e69de29..7c2b216 100644 --- a/product_manager/built_in_products/BudgetProposalProduct.py +++ b/product_manager/built_in_products/BudgetProposalProduct.py @@ -0,0 +1,30 @@ +"""Budget Proposal product stub.""" + +from ..Product import Product + + +class BudgetProposalProduct(Product): + """Represents a simple budget proposal document.""" + + def __init__(self): + super().__init__( + name="BudgetProposalProduct", + description="Drafts a basic budget proposal for a project.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the budget proposal.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review the budget proposal.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize the budget proposal.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the proposal to persistent storage.""" + pass + diff --git a/product_manager/built_in_products/BusinessCaseProduct.py b/product_manager/built_in_products/BusinessCaseProduct.py index e69de29..794b201 100644 --- a/product_manager/built_in_products/BusinessCaseProduct.py +++ b/product_manager/built_in_products/BusinessCaseProduct.py @@ -0,0 +1,30 @@ +"""Business case product stub implementation.""" + +from ..Product import Product + + +class BusinessCaseProduct(Product): + """Represents a simple business case document.""" + + def __init__(self): + super().__init__( + name="BusinessCaseProduct", + description="Compile a high level business case for the project.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the business case.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review the business case.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize the business case.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the business case to persistent storage.""" + pass + diff --git a/product_manager/built_in_products/CommunicationPlanProduct.py b/product_manager/built_in_products/CommunicationPlanProduct.py index e69de29..90881d2 100644 --- a/product_manager/built_in_products/CommunicationPlanProduct.py +++ b/product_manager/built_in_products/CommunicationPlanProduct.py @@ -0,0 +1,30 @@ +"""Communication plan product stub.""" + +from ..Product import Product + + +class CommunicationPlanProduct(Product): + """Represents a basic communication plan.""" + + def __init__(self): + super().__init__( + name="CommunicationPlanProduct", + description="Outline project communication channels and frequency.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the communication plan.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review the communication plan.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize the communication plan.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the plan to persistent storage.""" + pass + diff --git a/product_manager/built_in_products/LegalRegulatoryReviewProduct.py b/product_manager/built_in_products/LegalRegulatoryReviewProduct.py index e69de29..869c039 100644 --- a/product_manager/built_in_products/LegalRegulatoryReviewProduct.py +++ b/product_manager/built_in_products/LegalRegulatoryReviewProduct.py @@ -0,0 +1,30 @@ +"""Legal and regulatory review product stub.""" + +from ..Product import Product + + +class LegalRegulatoryReviewProduct(Product): + """Represents legal and regulatory compliance review.""" + + def __init__(self): + super().__init__( + name="LegalRegulatoryReviewProduct", + description="Check project compliance with legal and regulatory requirements.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the review.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review compliance results.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize compliance sign-off.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the review to storage.""" + pass + diff --git a/product_manager/built_in_products/ProcurementStrategyProduct.py b/product_manager/built_in_products/ProcurementStrategyProduct.py index e69de29..64771da 100644 --- a/product_manager/built_in_products/ProcurementStrategyProduct.py +++ b/product_manager/built_in_products/ProcurementStrategyProduct.py @@ -0,0 +1,30 @@ +"""Procurement strategy product stub.""" + +from ..Product import Product + + +class ProcurementStrategyProduct(Product): + """Represents a simple procurement strategy document.""" + + def __init__(self): + super().__init__( + name="ProcurementStrategyProduct", + description="Outline how required goods and services will be procured.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the procurement strategy.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review the procurement strategy.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize the procurement strategy.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the strategy.""" + pass + diff --git a/product_manager/built_in_products/ProjectApprovalDocumentationProduct.py b/product_manager/built_in_products/ProjectApprovalDocumentationProduct.py index e69de29..652e189 100644 --- a/product_manager/built_in_products/ProjectApprovalDocumentationProduct.py +++ b/product_manager/built_in_products/ProjectApprovalDocumentationProduct.py @@ -0,0 +1,30 @@ +"""Project approval documentation product stub.""" + +from ..Product import Product + + +class ProjectApprovalDocumentationProduct(Product): + """Represents documentation for project approval.""" + + def __init__(self): + super().__init__( + name="ProjectApprovalDocumentationProduct", + description="Collate materials required for formal project approval.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the approval documentation.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review the approval documentation.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize documentation for approval.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the approval documentation.""" + pass + diff --git a/product_manager/built_in_products/ProjectCharterProduct.py b/product_manager/built_in_products/ProjectCharterProduct.py index e69de29..a0e3a3c 100644 --- a/product_manager/built_in_products/ProjectCharterProduct.py +++ b/product_manager/built_in_products/ProjectCharterProduct.py @@ -0,0 +1,30 @@ +"""Project charter product stub.""" + +from ..Product import Product + + +class ProjectCharterProduct(Product): + """Represents a basic project charter.""" + + def __init__(self): + super().__init__( + name="ProjectCharterProduct", + description="Summarize project objectives, scope and stakeholders.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the project charter.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review the project charter.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize the project charter.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the charter.""" + pass + diff --git a/product_manager/built_in_products/ProjectOrganisationChartProduct.py b/product_manager/built_in_products/ProjectOrganisationChartProduct.py index e69de29..82d1682 100644 --- a/product_manager/built_in_products/ProjectOrganisationChartProduct.py +++ b/product_manager/built_in_products/ProjectOrganisationChartProduct.py @@ -0,0 +1,30 @@ +"""Project organisation chart product stub.""" + +from ..Product import Product + + +class ProjectOrganisationChartProduct(Product): + """Represents a project organisation chart.""" + + def __init__(self): + super().__init__( + name="ProjectOrganisationChartProduct", + description="Visual depiction of project roles and reporting lines.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the organisation chart.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review the organisation chart.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize the organisation chart.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the chart.""" + pass + diff --git a/product_manager/built_in_products/ProjectScheduleProduct.py b/product_manager/built_in_products/ProjectScheduleProduct.py index e69de29..a11c5e5 100644 --- a/product_manager/built_in_products/ProjectScheduleProduct.py +++ b/product_manager/built_in_products/ProjectScheduleProduct.py @@ -0,0 +1,30 @@ +"""Project schedule product stub.""" + +from ..Product import Product + + +class ProjectScheduleProduct(Product): + """Represents a basic project schedule.""" + + def __init__(self): + super().__init__( + name="ProjectScheduleProduct", + description="Create a timeline of project activities.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the project schedule.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review the project schedule.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize the project schedule.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the schedule.""" + pass + diff --git a/product_manager/built_in_products/ProjectScopeStatementProduct.py b/product_manager/built_in_products/ProjectScopeStatementProduct.py index e69de29..51f0e47 100644 --- a/product_manager/built_in_products/ProjectScopeStatementProduct.py +++ b/product_manager/built_in_products/ProjectScopeStatementProduct.py @@ -0,0 +1,30 @@ +"""Project scope statement product stub.""" + +from ..Product import Product + + +class ProjectScopeStatementProduct(Product): + """Represents a brief statement of project scope.""" + + def __init__(self): + super().__init__( + name="ProjectScopeStatementProduct", + description="Define the scope and deliverables of the project.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the scope statement.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review the scope statement.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize the scope statement.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the scope statement.""" + pass + diff --git a/product_manager/built_in_products/QualityManagementPlanProduct.py b/product_manager/built_in_products/QualityManagementPlanProduct.py index e69de29..920891e 100644 --- a/product_manager/built_in_products/QualityManagementPlanProduct.py +++ b/product_manager/built_in_products/QualityManagementPlanProduct.py @@ -0,0 +1,30 @@ +"""Quality management plan product stub.""" + +from ..Product import Product + + +class QualityManagementPlanProduct(Product): + """Represents a quality management plan.""" + + def __init__(self): + super().__init__( + name="QualityManagementPlanProduct", + description="Describe quality assurance and control activities.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the quality management plan.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review the quality management plan.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize the quality management plan.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the quality management plan.""" + pass + diff --git a/product_manager/built_in_products/ResourcePlanProduct.py b/product_manager/built_in_products/ResourcePlanProduct.py index e69de29..3b66a63 100644 --- a/product_manager/built_in_products/ResourcePlanProduct.py +++ b/product_manager/built_in_products/ResourcePlanProduct.py @@ -0,0 +1,30 @@ +"""Resource plan product stub.""" + +from ..Product import Product + + +class ResourcePlanProduct(Product): + """Represents a basic resource plan.""" + + def __init__(self): + super().__init__( + name="ResourcePlanProduct", + description="Plan for labour and material resources required.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the resource plan.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review the resource plan.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize the resource plan.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the plan.""" + pass + diff --git a/product_manager/built_in_products/RiskManagementPlanProduct.py b/product_manager/built_in_products/RiskManagementPlanProduct.py index e69de29..0df76fc 100644 --- a/product_manager/built_in_products/RiskManagementPlanProduct.py +++ b/product_manager/built_in_products/RiskManagementPlanProduct.py @@ -0,0 +1,30 @@ +"""Risk management plan product stub.""" + +from ..Product import Product + + +class RiskManagementPlanProduct(Product): + """Represents a risk management plan.""" + + def __init__(self): + super().__init__( + name="RiskManagementPlanProduct", + description="Identify and plan responses to potential risks.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the risk management plan.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review the risk management plan.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize the risk management plan.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the plan.""" + pass + diff --git a/product_manager/built_in_products/StakeholderAnalysisProduct.py b/product_manager/built_in_products/StakeholderAnalysisProduct.py index e69de29..bbc7a70 100644 --- a/product_manager/built_in_products/StakeholderAnalysisProduct.py +++ b/product_manager/built_in_products/StakeholderAnalysisProduct.py @@ -0,0 +1,30 @@ +"""Stakeholder analysis product stub.""" + +from ..Product import Product + + +class StakeholderAnalysisProduct(Product): + """Represents a simple stakeholder analysis.""" + + def __init__(self): + super().__init__( + name="StakeholderAnalysisProduct", + description="Identify stakeholders and analyse their influence.", + ) + + def draft(self): # pragma: no cover - minimal stub + """Draft the stakeholder analysis.""" + pass + + def review(self): # pragma: no cover - minimal stub + """Review the stakeholder analysis.""" + pass + + def complete(self): # pragma: no cover - minimal stub + """Finalize the stakeholder analysis.""" + pass + + def export(self): # pragma: no cover - minimal stub + """Export the analysis.""" + pass + diff --git a/product_manager/built_in_products/__init__.py b/product_manager/built_in_products/__init__.py index e69de29..39e5698 100644 --- a/product_manager/built_in_products/__init__.py +++ b/product_manager/built_in_products/__init__.py @@ -0,0 +1,34 @@ +"""Collection of built-in product stubs.""" + +from .BudgetProposalProduct import BudgetProposalProduct +from .BusinessCaseProduct import BusinessCaseProduct +from .CommunicationPlanProduct import CommunicationPlanProduct +from .LegalRegulatoryReviewProduct import LegalRegulatoryReviewProduct +from .ProcurementStrategyProduct import ProcurementStrategyProduct +from .ProjectApprovalDocumentationProduct import ProjectApprovalDocumentationProduct +from .ProjectCharterProduct import ProjectCharterProduct +from .ProjectOrganisationChartProduct import ProjectOrganisationChartProduct +from .ProjectScheduleProduct import ProjectScheduleProduct +from .ProjectScopeStatementProduct import ProjectScopeStatementProduct +from .QualityManagementPlanProduct import QualityManagementPlanProduct +from .ResourcePlanProduct import ResourcePlanProduct +from .RiskManagementPlanProduct import RiskManagementPlanProduct +from .StakeholderAnalysisProduct import StakeholderAnalysisProduct + +__all__ = [ + "BudgetProposalProduct", + "BusinessCaseProduct", + "CommunicationPlanProduct", + "LegalRegulatoryReviewProduct", + "ProcurementStrategyProduct", + "ProjectApprovalDocumentationProduct", + "ProjectCharterProduct", + "ProjectOrganisationChartProduct", + "ProjectScheduleProduct", + "ProjectScopeStatementProduct", + "QualityManagementPlanProduct", + "ResourcePlanProduct", + "RiskManagementPlanProduct", + "StakeholderAnalysisProduct", +] +