src.learning.project_pattern_learner module#
Project Pattern Learner.
This module extracts patterns from completed projects to improve future recommendations. It analyzes project outcomes, team performance, and quality metrics to identify successful patterns and common pitfalls.
- class src.learning.project_pattern_learner.ProjectPattern[source]#
Bases:
objectComprehensive pattern extracted from a project.
- outcome: ProjectOutcome#
- __init__(project_id, project_name, outcome, quality_metrics, team_composition, velocity_pattern, task_patterns, blocker_patterns, technology_stack, implementation_patterns, success_factors, risk_factors, extracted_at, confidence_score)#
- class src.learning.project_pattern_learner.TeamPerformanceMetrics[source]#
Bases:
objectMetrics for team performance analysis.
- __init__(average_velocity, task_completion_rate, blocker_resolution_time, collaboration_score, skill_utilization, agent_performance)#
- class src.learning.project_pattern_learner.ProjectPatternLearner[source]#
Bases:
objectExtracts and learns patterns from completed projects.
This class analyzes completed projects to identify patterns that lead to success or failure, helping Marcus make better decisions for future projects.
- __init__(pattern_db=None, ai_engine=None, code_analyzer=None)[source]#
Initialize the pattern learner.
- Parameters:
pattern_db (
Optional[Any]) – Database for storing patterns (deprecated, no longer used).ai_engine (
Optional[AIAnalysisEngine]) – AI engine for analysis. Creates new if not provided.code_analyzer (
Optional[CodeAnalyzer]) – Code analyzer for GitHub integration.
- Return type:
None
- learned_patterns: List[ProjectPattern]#
- async learn_from_project(project_state, tasks, team_members, outcome, github_owner=None, github_repo=None)[source]#
Extract patterns from a completed project.
- Parameters:
project_state (
ProjectState) – Final state of the completed projectteam_members (
List[WorkerStatus]) – Team members who worked on the projectoutcome (
ProjectOutcome) – Actual project outcome metricsgithub_owner (
Optional[str]) – GitHub repository owner for code analysisgithub_repo (
Optional[str]) – GitHub repository name for code analysis
- Returns:
Extracted pattern from the project
- Return type:
- find_similar_projects(target_pattern, min_similarity=0.7)[source]#
Find similar projects based on patterns.
- Parameters:
target_pattern (
ProjectPattern) – Pattern to match againstmin_similarity (
float) – Minimum similarity score (0-1)
- Returns:
List of (pattern, similarity_score) tuples
- Return type: