Skip to content

v0.23.0

Latest

Choose a tag to compare

@github-actions github-actions released this 07 Jan 09:14
5424fb0

Added (0.23.0)

  • Import Command Performance Optimizations: Major performance improvements for large codebases
    • Pre-computed Caches: AST parsing and file hashes are pre-computed once before parallel processing (5-15x faster)
    • Function Mapping Cache: Function names are extracted once per file and cached for reuse
    • Optimized for Large Codebases: Handles 3000+ features efficiently (6-15 minutes vs 90+ minutes previously)
    • Progress Reporting: Real-time progress bars for feature analysis, source linking, and contract extraction
    • Early Save Checkpoint: Features are saved immediately after initial analysis to prevent data loss on interruption
    • Feature Validation: Automatic validation of existing features when resuming imports
      • Detects orphaned features (all source files missing)
      • Identifies invalid features (some files missing or structure issues)
      • Reports validation results with actionable tips
    • Re-validation Flag: --revalidate-features flag to force re-analysis even if files haven't changed
      • Useful when analysis logic improves or confidence threshold changes
      • Forces full codebase analysis regardless of incremental change detection

Changed (0.23.0)

  • Import Command Performance: Source file linking is now 5-15x faster for large codebases
    • Pre-computes all AST parsing before parallel processing
    • Caches file hashes to avoid repeated computation
    • Optimized matching logic with pre-computed feature title words
  • Import Command Progress: Enhanced progress reporting with detailed status messages
    • Shows feature count, themes, and stories during analysis
    • Real-time progress bars for source file linking
    • Clear checkpoint messages when features are saved
    • Enhanced Analysis Setup: Added spinner progress for file discovery (repo.rglob("*.py")), filtering, and hash collection phases
      • Eliminates 30-60 second silent wait periods during file discovery
      • Shows real-time status: "Preparing enhanced analysis..." → "Discovering Python files..." → "Filtering X files..." → "Ready to analyze X files"
    • Contract Loading: Added progress bar for parallel YAML contract loading
      • Shows "Loading X existing contract(s)..." with completion count
      • Provides visibility during potentially slow contract file I/O operations
    • Enrichment Context Operations: Added spinner progress for hash comparison, context building, and file writing
      • Shows progress during hash comparison (reading existing file, building temp context)
      • Shows progress during context building (iterating through features and contracts)
      • Shows progress during markdown conversion and file writing
    • Incremental Change Detection: Improved progress feedback with completion status message
    • Changed File Collection: Added status message during file path collection

Documentation (0.23.0)

  • Import Features Guide: New comprehensive guide docs/guides/import-features.md
    • Progress reporting details
    • Feature validation explanation
    • Early save checkpoint benefits
    • Performance optimization details
    • Re-validation flag usage
    • Best practices for large codebases
    • Troubleshooting tips
  • Command Reference: Updated docs/reference/commands.md with new --revalidate-features flag
  • Quick Examples: Updated docs/examples/quick-examples.md with new import features
  • README: Updated timing information and checkpoint details

Fixed (0.23.0)

  • Linting Errors: Fixed unused progress_columns variable warnings in enrichment context functions
    • Prefixed unused variables with underscore (_progress_columns) to indicate intentional non-usage
    • All linting checks now pass without errors