# phase_definitions.template.yml - PROJECT PHASE DEFINITIONS
# Defines implications and approach for each project phase
# Reference this file: {{import: phase_definitions.template.yml}}

phases:
  mvp:
    id: "mvp"
    name: "Minimum Viable Product"
    status: "{{PHASE_STATUS}}"
    
    description: "Initial release focused on core features"
    
    focus: "Core features only, minimal nice-to-haves"
    constraint: "Strict scope discipline - defer nice-to-haves"
    
    business_goals:
      - "Get product to market quickly"
      - "Validate core functionality"
      - "Gather initial customer feedback"
    
    ai_approach: "Classify ruthlessly, move non-essential to future"
    
    development_approach:
      - "Feature branches for MVP items only"
      - "Aggressive scoping and cut decisions"
      - "Core functionality fully tested"
      - "Edge cases deferred"
      - "Documentation focused on essentials"
    
    resource_allocation:
      - "Focus all expert capacity on core features"
      - "Junior engineers on foundational tasks"
      - "Minimal feature flags or configuration"
    
    testing_strategy:
      - "Happy path fully tested"
      - "Edge cases tested minimally"
      - "Integration tests for core flows"
      - "Performance testing deferred"
    
    documentation_level: "Minimal - essentials only"
    
    ai_classification_zones:
      ai_solo: "File operations, setup, simple automation"
      ai_led: "Bug fixes for core features"
      ai_assisted: "Feature implementation support"
      ai_limited: "Core architecture decisions"

  beta:
    id: "beta"
    name: "Beta Phase"
    status: "{{PHASE_STATUS}}"
    
    description: "Expanding features with emphasis on stability"
    
    focus: "Expand features, prioritize stability and performance"
    constraint: "Balance new features with quality"
    
    business_goals:
      - "Expand feature set based on feedback"
      - "Stabilize core functionality"
      - "Improve performance under load"
      - "Gather broader user feedback"
    
    ai_approach: "Thorough testing required, performance profiling"
    
    development_approach:
      - "Feature expansion with quality gates"
      - "Performance benchmarking and optimization"
      - "Broader testing coverage (edge cases)"
      - "Configuration and customization added"
      - "API stability focus"
    
    resource_allocation:
      - "Expert capacity on complex features and optimization"
      - "Junior engineers on new features with expert review"
      - "QA focus on performance and edge cases"
    
    testing_strategy:
      - "Full path testing including edge cases"
      - "Performance testing and optimization"
      - "Load testing and stress testing"
      - "Regression testing automation"
    
    documentation_level: "Comprehensive - features, APIs, troubleshooting"
    
    ai_classification_zones:
      ai_solo: "Docs, examples, automation"
      ai_led: "Feature development with review"
      ai_assisted: "Complex features with guidance"
      ai_limited: "Architecture and performance decisions"

  ga:
    id: "ga"
    name: "General Availability"
    status: "{{PHASE_STATUS}}"
    
    description: "Production-ready with enterprise support"
    
    focus: "Production-ready, reliability and customer success"
    constraint: "Zero-defect mindset, backward compatibility"
    
    business_goals:
      - "Enterprise-ready reliability"
      - "Customer success and support"
      - "Backward compatibility guarantee"
      - "Revenue and growth focus"
    
    ai_approach: "Extensive tests, deprecation paths, documentation"
    
    development_approach:
      - "Strict change control process"
      - "Backward compatibility guaranteed"
      - "Deprecation paths for API changes"
      - "Enhanced monitoring and observability"
      - "Enterprise-grade security"
    
    resource_allocation:
      - "Expert capacity on critical fixes and architecture"
      - "Dedicated support and customer success team"
      - "Minimal breaking changes"
      - "Long-term maintenance focus"
    
    testing_strategy:
      - "Comprehensive test coverage (>90%)"
      - "Continuous monitoring and alerting"
      - "Disaster recovery testing"
      - "Security testing and audits"
      - "Customer scenario testing"
    
    documentation_level: "Extensive - complete reference, migration guides, tutorials"
    
    ai_classification_zones:
      ai_solo: "Docs, community examples, automation"
      ai_led: "Bug fixes and minor improvements"
      ai_assisted: "New features with strict review"
      ai_limited: "Critical changes, security, architecture"

  maintenance:
    id: "maintenance"
    name: "Maintenance Mode"
    status: "{{PHASE_STATUS}}"
    
    description: "Long-term support with minimal new features"
    
    focus: "Reliability, security, customer support"
    constraint: "No breaking changes, critical fixes only"
    
    business_goals:
      - "Maintain existing customer base"
      - "Security and compliance updates"
      - "Critical bug fixes"
      - "Minimal new development"
    
    ai_approach: "Security focus, extensive validation, no speculation"
    
    development_approach:
      - "Security patches and updates only"
      - "Critical bug fixes only"
      - "No new features"
      - "No API changes"
      - "Long-term support commitment"
    
    resource_allocation:
      - "Minimal team for bug fixes"
      - "Security expert on all changes"
      - "Customer support primary"
    
    testing_strategy:
      - "Regression testing all changes"
      - "Security scanning on every update"
      - "Customer impact validation"
    
    documentation_level: "Reference only - no new content"
    
    ai_classification_zones:
      ai_solo: "Documentation updates"
      ai_led: "Minor bug fixes with testing"
      ai_assisted: "Complex bug fixes"
      ai_limited: "Security patches, breaking decisions"
