core.workflow_models

工作流数据模型

定义工作流生成器使用的核心数据结构和类型。

Classes

AcceptanceCriteria([id, requirement_id, ...])

验收标准

ComplexityAnalysis([overall_complexity, ...])

复杂度分析

ComplexityLevel(value)

复杂度级别

CriticalPath([id, name, phases, ...])

关键路径

Dependency([id, name, type, description, ...])

依赖关系

EffortEstimation([total_hours, ...])

工作量估算

MCPResults([context7_results, ...])

MCP服务器结果

OutputFormat(value)

输出格式枚举

PRDStructure([title, version, author, ...])

PRD文档结构

ParallelStream([id, name, description, ...])

并行工作流

PersonaType(value)

专家人格类型

Priority(value)

优先级枚举

ProjectConstraints([timeline, budget, ...])

项目约束条件

Requirement([id, title, description, type, ...])

需求项

RequirementCategories([...])

需求分类

Risk([id, name, description, category, ...])

风险项

RiskLevel(value)

风险级别

Workflow([id, name, description, strategy, ...])

完整工作流

WorkflowMilestone([id, name, description, ...])

工作流里程碑

WorkflowOptions([strategy, output_format, ...])

工作流生成选项

WorkflowPhase([id, name, description, ...])

工作流阶段

WorkflowStep([id, name, description, ...])

工作流步骤

WorkflowStrategy(value)

工作流策略枚举

class core.workflow_models.WorkflowStrategy(value)[source]

Bases: Enum

工作流策略枚举

SYSTEMATIC = 'systematic'
AGILE = 'agile'
MVP = 'mvp'
class core.workflow_models.OutputFormat(value)[source]

Bases: Enum

输出格式枚举

ROADMAP = 'roadmap'
TASKS = 'tasks'
DETAILED = 'detailed'
class core.workflow_models.PersonaType(value)[source]

Bases: Enum

专家人格类型

FRONTEND = 'frontend'
BACKEND = 'backend'
ARCHITECT = 'architect'
SECURITY = 'security'
DEVOPS = 'devops'
QA = 'qa'
SCRIBE = 'scribe'
PERFORMANCE = 'performance'
class core.workflow_models.Priority(value)[source]

Bases: Enum

优先级枚举

LOW = 'low'
MEDIUM = 'medium'
HIGH = 'high'
CRITICAL = 'critical'
class core.workflow_models.ComplexityLevel(value)[source]

Bases: Enum

复杂度级别

SIMPLE = 'simple'
MEDIUM = 'medium'
COMPLEX = 'complex'
ENTERPRISE = 'enterprise'
class core.workflow_models.RiskLevel(value)[source]

Bases: Enum

风险级别

LOW = 'low'
MEDIUM = 'medium'
HIGH = 'high'
CRITICAL = 'critical'
class core.workflow_models.Requirement(id=<factory>, title='', description='', type='functional', priority=Priority.MEDIUM, complexity=ComplexityLevel.MEDIUM, estimated_effort=None, acceptance_criteria=<factory>, dependencies=<factory>, tags=<factory>, metadata=<factory>)[source]

Bases: object

需求项

id: str
title: str = ''
description: str = ''
type: str = 'functional'
priority: Priority = 'medium'
complexity: ComplexityLevel = 'medium'
estimated_effort: int | None = None
acceptance_criteria: List[str]
dependencies: List[str]
tags: List[str]
metadata: Dict[str, Any]
__init__(id=<factory>, title='', description='', type='functional', priority=Priority.MEDIUM, complexity=ComplexityLevel.MEDIUM, estimated_effort=None, acceptance_criteria=<factory>, dependencies=<factory>, tags=<factory>, metadata=<factory>)
class core.workflow_models.AcceptanceCriteria(id=<factory>, requirement_id='', description='', is_testable=True, test_method='manual', success_metric=None)[source]

Bases: object

验收标准

id: str
requirement_id: str = ''
description: str = ''
is_testable: bool = True
test_method: str = 'manual'
success_metric: str | None = None
__init__(id=<factory>, requirement_id='', description='', is_testable=True, test_method='manual', success_metric=None)
class core.workflow_models.PRDStructure(title='', version='1.0', author='', date_created=None, date_updated=None, overview='', objectives=<factory>, requirements=<factory>, acceptance_criteria=<factory>, constraints=<factory>, assumptions=<factory>, success_metrics=<factory>, metadata=<factory>)[source]

Bases: object

PRD文档结构

title: str = ''
version: str = '1.0'
author: str = ''
date_created: datetime | None = None
date_updated: datetime | None = None
overview: str = ''
objectives: List[str]
requirements: List[Requirement]
acceptance_criteria: List[AcceptanceCriteria]
constraints: List[str]
assumptions: List[str]
success_metrics: List[str]
metadata: Dict[str, Any]
__init__(title='', version='1.0', author='', date_created=None, date_updated=None, overview='', objectives=<factory>, requirements=<factory>, acceptance_criteria=<factory>, constraints=<factory>, assumptions=<factory>, success_metrics=<factory>, metadata=<factory>)
class core.workflow_models.Dependency(id=<factory>, name='', type='internal', description='', criticality=Priority.MEDIUM, estimated_resolution_time=None, owner=None, status='pending', metadata=<factory>)[source]

Bases: object

依赖关系

id: str
name: str = ''
type: str = 'internal'
description: str = ''
criticality: Priority = 'medium'
estimated_resolution_time: int | None = None
owner: str | None = None
status: str = 'pending'
metadata: Dict[str, Any]
__init__(id=<factory>, name='', type='internal', description='', criticality=Priority.MEDIUM, estimated_resolution_time=None, owner=None, status='pending', metadata=<factory>)
class core.workflow_models.Risk(id=<factory>, name='', description='', category='technical', likelihood=RiskLevel.MEDIUM, impact=RiskLevel.MEDIUM, risk_score=0.0, mitigation_strategies=<factory>, contingency_plans=<factory>, owner=None, status='identified')[source]

Bases: object

风险项

id: str
name: str = ''
description: str = ''
category: str = 'technical'
likelihood: RiskLevel = 'medium'
impact: RiskLevel = 'medium'
risk_score: float = 0.0
mitigation_strategies: List[str]
contingency_plans: List[str]
owner: str | None = None
status: str = 'identified'
__init__(id=<factory>, name='', description='', category='technical', likelihood=RiskLevel.MEDIUM, impact=RiskLevel.MEDIUM, risk_score=0.0, mitigation_strategies=<factory>, contingency_plans=<factory>, owner=None, status='identified')
class core.workflow_models.WorkflowStep(id=<factory>, name='', description='', estimated_effort=None, complexity=ComplexityLevel.MEDIUM, persona=None, dependencies=<factory>, deliverables=<factory>, acceptance_criteria=<factory>, tools_required=<factory>, code_examples=<factory>, mcp_context=<factory>, order=0)[source]

Bases: object

工作流步骤

id: str
name: str = ''
description: str = ''
estimated_effort: int | None = None
complexity: ComplexityLevel = 'medium'
persona: PersonaType | None = None
dependencies: List[str]
deliverables: List[str]
acceptance_criteria: List[str]
tools_required: List[str]
code_examples: List[str]
mcp_context: Dict[str, str]
order: int = 0
__init__(id=<factory>, name='', description='', estimated_effort=None, complexity=ComplexityLevel.MEDIUM, persona=None, dependencies=<factory>, deliverables=<factory>, acceptance_criteria=<factory>, tools_required=<factory>, code_examples=<factory>, mcp_context=<factory>, order=0)
class core.workflow_models.WorkflowMilestone(id=<factory>, name='', description='', estimated_effort=None, priority=Priority.MEDIUM, steps=<factory>, success_criteria=<factory>, dependencies=<factory>, risks=<factory>, personas_involved=<factory>, order=0)[source]

Bases: object

工作流里程碑

id: str
name: str = ''
description: str = ''
estimated_effort: int | None = None
priority: Priority = 'medium'
steps: List[WorkflowStep]
success_criteria: List[str]
dependencies: List[str]
risks: List[str]
personas_involved: List[PersonaType]
order: int = 0
__init__(id=<factory>, name='', description='', estimated_effort=None, priority=Priority.MEDIUM, steps=<factory>, success_criteria=<factory>, dependencies=<factory>, risks=<factory>, personas_involved=<factory>, order=0)
class core.workflow_models.WorkflowPhase(id=<factory>, name='', description='', estimated_duration=None, estimated_effort=None, milestones=<factory>, dependencies=<factory>, risks=<factory>, personas_involved=<factory>, parallel_streams=<factory>, order=0)[source]

Bases: object

工作流阶段

id: str
name: str = ''
description: str = ''
estimated_duration: timedelta | None = None
estimated_effort: int | None = None
milestones: List[WorkflowMilestone]
dependencies: List[str]
risks: List[str]
personas_involved: List[PersonaType]
parallel_streams: List[str]
order: int = 0
__init__(id=<factory>, name='', description='', estimated_duration=None, estimated_effort=None, milestones=<factory>, dependencies=<factory>, risks=<factory>, personas_involved=<factory>, parallel_streams=<factory>, order=0)
class core.workflow_models.ParallelStream(id=<factory>, name='', description='', phases=<factory>, estimated_effort=None, required_team_size=1, coordination_requirements=<factory>)[source]

Bases: object

并行工作流

id: str
name: str = ''
description: str = ''
phases: List[str]
estimated_effort: int | None = None
required_team_size: int = 1
coordination_requirements: List[str]
__init__(id=<factory>, name='', description='', phases=<factory>, estimated_effort=None, required_team_size=1, coordination_requirements=<factory>)
class core.workflow_models.CriticalPath(id=<factory>, name='Critical Path', phases=<factory>, total_duration=None, total_effort=None, bottlenecks=<factory>, optimization_opportunities=<factory>)[source]

Bases: object

关键路径

id: str
name: str = 'Critical Path'
phases: List[str]
total_duration: timedelta | None = None
total_effort: int | None = None
bottlenecks: List[str]
optimization_opportunities: List[str]
__init__(id=<factory>, name='Critical Path', phases=<factory>, total_duration=None, total_effort=None, bottlenecks=<factory>, optimization_opportunities=<factory>)
class core.workflow_models.EffortEstimation(total_hours=0, breakdown_by_persona=<factory>, breakdown_by_phase=<factory>, confidence_level=0.8, estimation_method='expert_judgment', buffer_percentage=0.2, metadata=<factory>)[source]

Bases: object

工作量估算

total_hours: int = 0
breakdown_by_persona: Mapping[PersonaType, float]
breakdown_by_phase: Dict[str, int]
confidence_level: float = 0.8
estimation_method: str = 'expert_judgment'
buffer_percentage: float = 0.2
metadata: Dict[str, Any]
__init__(total_hours=0, breakdown_by_persona=<factory>, breakdown_by_phase=<factory>, confidence_level=0.8, estimation_method='expert_judgment', buffer_percentage=0.2, metadata=<factory>)
class core.workflow_models.ComplexityAnalysis(overall_complexity=ComplexityLevel.MEDIUM, technical_complexity=0.5, integration_complexity=0.5, ui_complexity=0.5, business_logic_complexity=0.5, data_complexity=0.5, complexity_factors=<factory>, simplification_opportunities=<factory>)[source]

Bases: object

复杂度分析

overall_complexity: ComplexityLevel = 'medium'
technical_complexity: float = 0.5
integration_complexity: float = 0.5
ui_complexity: float = 0.5
business_logic_complexity: float = 0.5
data_complexity: float = 0.5
complexity_factors: List[str]
simplification_opportunities: List[str]
__init__(overall_complexity=ComplexityLevel.MEDIUM, technical_complexity=0.5, integration_complexity=0.5, ui_complexity=0.5, business_logic_complexity=0.5, data_complexity=0.5, complexity_factors=<factory>, simplification_opportunities=<factory>)
class core.workflow_models.RequirementCategories(functional_requirements=<factory>, non_functional_requirements=<factory>, constraint_requirements=<factory>, ui_requirements=<factory>, api_requirements=<factory>, data_requirements=<factory>, security_requirements=<factory>, performance_requirements=<factory>)[source]

Bases: object

需求分类

functional_requirements: List[Requirement]
non_functional_requirements: List[Requirement]
constraint_requirements: List[Requirement]
ui_requirements: List[Requirement]
api_requirements: List[Requirement]
data_requirements: List[Requirement]
security_requirements: List[Requirement]
performance_requirements: List[Requirement]
__init__(functional_requirements=<factory>, non_functional_requirements=<factory>, constraint_requirements=<factory>, ui_requirements=<factory>, api_requirements=<factory>, data_requirements=<factory>, security_requirements=<factory>, performance_requirements=<factory>)
class core.workflow_models.ProjectConstraints(timeline=None, budget=None, team_size=1, technology_constraints=<factory>, compliance_requirements=<factory>, performance_requirements=<factory>, integration_requirements=<factory>, security_requirements=<factory>)[source]

Bases: object

项目约束条件

timeline: timedelta | None = None
budget: float | None = None
team_size: int = 1
technology_constraints: List[str]
compliance_requirements: List[str]
performance_requirements: Dict[str, Any]
integration_requirements: List[str]
security_requirements: List[str]
__init__(timeline=None, budget=None, team_size=1, technology_constraints=<factory>, compliance_requirements=<factory>, performance_requirements=<factory>, integration_requirements=<factory>, security_requirements=<factory>)
class core.workflow_models.MCPResults(context7_results=<factory>, sequential_results=<factory>, magic_results=<factory>, playwright_results=<factory>, integration_recommendations=<factory>)[source]

Bases: object

MCP服务器结果

context7_results: Dict[str, Any]
sequential_results: Dict[str, Any]
magic_results: Dict[str, Any]
playwright_results: Dict[str, Any]
integration_recommendations: List[str]
__init__(context7_results=<factory>, sequential_results=<factory>, magic_results=<factory>, playwright_results=<factory>, integration_recommendations=<factory>)
class core.workflow_models.Workflow(id=<factory>, name='', description='', strategy=WorkflowStrategy.SYSTEMATIC, version='1.0', created_at=<factory>, updated_at=<factory>, prd_structure=None, requirements=<factory>, phases=<factory>, parallel_streams=<factory>, critical_path=None, complexity_analysis=None, effort_estimation=None, requirement_categories=None, dependencies=<factory>, risks=<factory>, mcp_results=None, activated_personas=<factory>, persona_recommendations=<factory>, success_metrics=<factory>, quality_gates=<factory>, validation_criteria=<factory>, metadata=<factory>)[source]

Bases: object

完整工作流

id: str
name: str = ''
description: str = ''
strategy: WorkflowStrategy = 'systematic'
version: str = '1.0'
created_at: datetime
updated_at: datetime
prd_structure: PRDStructure | None = None
requirements: List[Requirement]
phases: List[WorkflowPhase]
parallel_streams: List[ParallelStream]
critical_path: CriticalPath | None = None
complexity_analysis: ComplexityAnalysis | None = None
effort_estimation: EffortEstimation | None = None
requirement_categories: RequirementCategories | None = None
dependencies: List[Dependency]
risks: List[Risk]
mcp_results: MCPResults | None = None
activated_personas: List[PersonaType]
persona_recommendations: Dict[PersonaType, str]
success_metrics: List[str]
quality_gates: List[str]
validation_criteria: List[str]
metadata: Dict[str, Any]
get_total_effort()[source]

获取总工作量

get_total_duration()[source]

获取总持续时间

get_complexity_score()[source]

获取复杂度分数

get_high_risk_items()[source]

获取高风险项

get_critical_dependencies()[source]

获取关键依赖

__init__(id=<factory>, name='', description='', strategy=WorkflowStrategy.SYSTEMATIC, version='1.0', created_at=<factory>, updated_at=<factory>, prd_structure=None, requirements=<factory>, phases=<factory>, parallel_streams=<factory>, critical_path=None, complexity_analysis=None, effort_estimation=None, requirement_categories=None, dependencies=<factory>, risks=<factory>, mcp_results=None, activated_personas=<factory>, persona_recommendations=<factory>, success_metrics=<factory>, quality_gates=<factory>, validation_criteria=<factory>, metadata=<factory>)
class core.workflow_models.WorkflowOptions(strategy=WorkflowStrategy.SYSTEMATIC, output_format=OutputFormat.ROADMAP, include_estimates=True, include_dependencies=True, include_risks=True, enable_parallel_analysis=True, enable_milestones=True, enable_mcp_integration=True, forced_persona=None, team_size=1, timeline_constraint=None, complexity_preference=None, enable_context7=False, enable_sequential=False, enable_magic=False, enable_playwright=False, enable_all_mcp=False, include_code_examples=False, include_templates=False, include_checklists=True, include_success_metrics=True, enable_optimization_suggestions=True, enable_quality_gates=True, enable_continuous_feedback=False)[source]

Bases: object

工作流生成选项

strategy: WorkflowStrategy = 'systematic'
output_format: OutputFormat = 'roadmap'
include_estimates: bool = True
include_dependencies: bool = True
include_risks: bool = True
enable_parallel_analysis: bool = True
enable_milestones: bool = True
enable_mcp_integration: bool = True
forced_persona: PersonaType | None = None
team_size: int = 1
timeline_constraint: timedelta | None = None
complexity_preference: ComplexityLevel | None = None
enable_context7: bool = False
enable_sequential: bool = False
enable_magic: bool = False
enable_playwright: bool = False
enable_all_mcp: bool = False
include_code_examples: bool = False
include_templates: bool = False
include_checklists: bool = True
include_success_metrics: bool = True
enable_optimization_suggestions: bool = True
enable_quality_gates: bool = True
enable_continuous_feedback: bool = False
__init__(strategy=WorkflowStrategy.SYSTEMATIC, output_format=OutputFormat.ROADMAP, include_estimates=True, include_dependencies=True, include_risks=True, enable_parallel_analysis=True, enable_milestones=True, enable_mcp_integration=True, forced_persona=None, team_size=1, timeline_constraint=None, complexity_preference=None, enable_context7=False, enable_sequential=False, enable_magic=False, enable_playwright=False, enable_all_mcp=False, include_code_examples=False, include_templates=False, include_checklists=True, include_success_metrics=True, enable_optimization_suggestions=True, enable_quality_gates=True, enable_continuous_feedback=False)