gitflow-analytics 3.10.6__tar.gz → 3.11.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/CLAUDE.md +13 -5
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/PKG-INFO +3 -3
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/README.md +2 -2
- gitflow_analytics-3.11.1/docs/_archive/README.md +97 -0
- gitflow_analytics-3.11.1/docs/_archive/temp-files/CHANGELOG_INTERACTIVE_LAUNCHER.md +223 -0
- gitflow_analytics-3.11.1/docs/_archive/temp-files/FEATURES_READY_FOR_TESTING.md +300 -0
- gitflow_analytics-3.11.1/docs/_archive/temp-files/README.md +138 -0
- gitflow_analytics-3.11.1/docs/_archive/temp-files/TIMEZONE_BUG_RESOLUTION.md +268 -0
- gitflow_analytics-3.11.1/docs/reference/PROJECT_ORGANIZATION.md +484 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/_version.py +1 -1
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/core/processor.py +30 -5
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics.egg-info/PKG-INFO +3 -3
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics.egg-info/SOURCES.txt +6 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/CHANGELOG.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/LICENSE +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/MANIFEST.in +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/README.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/REFACTOR.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/SECURITY.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/STRUCTURE.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/_archive/temp-files/PROGRESS_TRACKING_FIXES.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/_archive/temp-files/SYNTAX_ERROR_FIX.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/architecture/README.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/architecture/branch-analysis-optimization.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/architecture/caching-strategy.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/architecture/llm-classifier-refactoring.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/architecture/ml-pipeline.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/configuration/configuration.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/deployment/README.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/design/README.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/design/circuit-breaker-implementation.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/design/commit-classification-design.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/design/git_pm_correlation_design.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/design/platform-agnostic-pm-framework.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/design/qualitative_data_extraction.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/developer/README.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/developer/contributing.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/developer/development-setup.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/developer/training-guide.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/examples/README.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/getting-started/README.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/getting-started/first-analysis.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/getting-started/installation.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/getting-started/quickstart.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/guides/README.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/guides/chatgpt-setup.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/guides/identity-resolution-enhanced.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/guides/interactive-launcher.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/guides/managing-aliases.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/guides/ml-categorization.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/guides/pm-platform-setup.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/guides/troubleshooting.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/quick-reference/launcher-and-identity.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/reference/README.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/reference/cache-system.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/reference/cli-commands.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/reference/configuration-schema.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/docs/reference/json-export-schema.md +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/pyproject.toml +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/setup.cfg +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/classification/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/classification/batch_classifier.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/classification/classifier.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/classification/feature_extractor.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/classification/linguist_analyzer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/classification/model.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/cli.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/cli_wizards/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/cli_wizards/install_wizard.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/cli_wizards/run_launcher.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/config/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/config/aliases.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/config/errors.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/config/loader.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/config/profiles.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/config/repository.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/config/schema.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/config/validator.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/config.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/constants.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/core/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/core/analyzer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/core/branch_mapper.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/core/cache.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/core/data_fetcher.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/core/git_auth.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/core/git_timeout_wrapper.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/core/identity.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/core/metrics_storage.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/core/progress.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/core/schema_version.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/core/subprocess_git.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/extractors/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/extractors/base.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/extractors/ml_tickets.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/extractors/story_points.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/extractors/tickets.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/identity_llm/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/identity_llm/analysis_pass.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/identity_llm/analyzer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/identity_llm/models.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/integrations/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/integrations/github_integration.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/integrations/jira_integration.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/integrations/orchestrator.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/metrics/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/metrics/activity_scoring.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/metrics/branch_health.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/metrics/dora.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/models/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/models/database.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/pm_framework/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/pm_framework/adapters/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/pm_framework/adapters/jira_adapter.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/pm_framework/base.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/pm_framework/models.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/pm_framework/orchestrator.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/pm_framework/registry.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/chatgpt_analyzer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/change_type.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/domain_classifier.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/intent_analyzer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/llm/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/llm/base.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/llm/batch_processor.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/llm/cache.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/llm/cost_tracker.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/llm/openai_client.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/llm/prompts.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/llm/response_parser.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/llm_commit_classifier.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/classifiers/risk_analyzer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/core/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/core/llm_fallback.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/core/nlp_engine.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/core/pattern_cache.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/enhanced_analyzer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/example_enhanced_usage.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/models/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/models/schemas.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/utils/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/utils/batch_processor.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/utils/cost_tracker.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/utils/metrics.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/qualitative/utils/text_processing.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/analytics_writer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/base.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/branch_health_writer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/classification_writer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/cli_integration.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/csv_writer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/data_models.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/database_report_generator.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/example_usage.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/factory.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/formatters.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/html_generator.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/interfaces.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/json_exporter.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/narrative_writer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/story_point_correlation.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/reports/weekly_trends_writer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/security/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/security/config.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/security/extractors/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/security/extractors/dependency_checker.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/security/extractors/secret_detector.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/security/extractors/vulnerability_scanner.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/security/llm_analyzer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/security/security_analyzer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/training/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/training/model_loader.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/training/pipeline.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/ui/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/ui/progress_display.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics/verify_activity.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics.egg-info/dependency_links.txt +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics.egg-info/entry_points.txt +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics.egg-info/requires.txt +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/src/gitflow_analytics.egg-info/top_level.txt +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/conftest.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/core/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/core/test_analyzer.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/core/test_cache.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/core/test_data_fetcher.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/core/test_identity.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/core/test_progress.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/extractors/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/integrations/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/metrics/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/models/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/qualitative/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/qualitative/test_basic_integration.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/reports/__init__.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_atomic_caching.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_classification_system.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_cli.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_config.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_config_extends.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_config_profiles.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_config_story_points.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_jira_connection.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_llm_commit_classification.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_march_2025_comparison.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_metrics.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_ml_accuracy.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_ml_components.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_ml_comprehensive.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_ml_integration.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_pm_env_resolution.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_report_abstraction.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_reports.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_story_points_analysis.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_training_pipeline.py +0 -0
- {gitflow_analytics-3.10.6 → gitflow_analytics-3.11.1}/tests/test_two_step_process.py +0 -0
|
@@ -128,6 +128,7 @@ GitFlow Analytics uses a comprehensive documentation system organized for differ
|
|
|
128
128
|
|
|
129
129
|
- **[docs/STRUCTURE.md](docs/STRUCTURE.md)** - Complete documentation organization guide
|
|
130
130
|
- **[docs/README.md](docs/README.md)** - Main documentation index and navigation
|
|
131
|
+
- **[docs/reference/PROJECT_ORGANIZATION.md](docs/reference/PROJECT_ORGANIZATION.md)** - **Official project organization standard**
|
|
131
132
|
- **[docs/getting-started/](docs/getting-started/)** - New user onboarding and tutorials
|
|
132
133
|
- **[docs/guides/](docs/guides/)** - Task-oriented configuration and usage guides
|
|
133
134
|
- **[docs/examples/](docs/examples/)** - Real-world usage scenarios and templates
|
|
@@ -140,6 +141,7 @@ GitFlow Analytics uses a comprehensive documentation system organized for differ
|
|
|
140
141
|
### 🟢 Documentation Guidelines for Developers
|
|
141
142
|
|
|
142
143
|
When working on the project:
|
|
144
|
+
- **Follow PROJECT_ORGANIZATION.md** - See [docs/reference/PROJECT_ORGANIZATION.md](docs/reference/PROJECT_ORGANIZATION.md) for file placement rules
|
|
143
145
|
- **Update docs with code changes** - Documentation should stay current with implementation
|
|
144
146
|
- **Follow the structure** - Place new documentation in the appropriate section
|
|
145
147
|
- **Cross-reference related topics** - Use relative links to connect related information
|
|
@@ -589,6 +591,8 @@ When adding features:
|
|
|
589
591
|
|
|
590
592
|
## 🟡 Project Structure
|
|
591
593
|
|
|
594
|
+
**See [docs/reference/PROJECT_ORGANIZATION.md](docs/reference/PROJECT_ORGANIZATION.md) for complete organization standards.**
|
|
595
|
+
|
|
592
596
|
```
|
|
593
597
|
gitflow-analytics/
|
|
594
598
|
├── src/gitflow_analytics/
|
|
@@ -636,12 +640,16 @@ gitflow-analytics/
|
|
|
636
640
|
├── tests/ # Test suite
|
|
637
641
|
│ └── qualitative/ # ML system tests
|
|
638
642
|
├── docs/ # Documentation
|
|
643
|
+
│ ├── reference/ # Technical reference
|
|
644
|
+
│ │ └── PROJECT_ORGANIZATION.md # Official organization standard
|
|
639
645
|
│ ├── design/ # Design documents
|
|
640
|
-
│ └──
|
|
641
|
-
├──
|
|
642
|
-
├── config-sample
|
|
643
|
-
|
|
644
|
-
|
|
646
|
+
│ └── [other sections]/ # See docs/STRUCTURE.md
|
|
647
|
+
├── configs/ # Sample configuration files
|
|
648
|
+
│ ├── config-sample.yaml # Sample configuration
|
|
649
|
+
│ └── config-sample-ml.yaml # ML configuration sample
|
|
650
|
+
├── scripts/ # Utility scripts
|
|
651
|
+
├── pyproject.toml # Project metadata
|
|
652
|
+
└── README.md # User documentation
|
|
645
653
|
```
|
|
646
654
|
|
|
647
655
|
## 🟡 Atomic Versioning System
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gitflow-analytics
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.11.1
|
|
4
4
|
Summary: Analyze Git repositories for developer productivity insights
|
|
5
5
|
Author-email: Bob Matyas <bobmatnyc@gmail.com>
|
|
6
6
|
License: MIT
|
|
@@ -987,7 +987,7 @@ python -m spacy download en_core_web_sm
|
|
|
987
987
|
# Medium model (more accurate, larger)
|
|
988
988
|
python -m spacy download en_core_web_md
|
|
989
989
|
|
|
990
|
-
# Large model (most accurate, largest)
|
|
990
|
+
# Large model (most accurate, largest)
|
|
991
991
|
python -m spacy download en_core_web_lg
|
|
992
992
|
```
|
|
993
993
|
|
|
@@ -995,7 +995,7 @@ python -m spacy download en_core_web_lg
|
|
|
995
995
|
|
|
996
996
|
- **Accuracy**: 85-95% accuracy on typical commit messages
|
|
997
997
|
- **Speed**: ~50-100 commits/second with caching enabled
|
|
998
|
-
- **Fallback**:
|
|
998
|
+
- **Fallback**: Gracefully disables qualitative analysis if spaCy model unavailable (provides helpful error messages)
|
|
999
999
|
- **Memory**: ~200MB additional memory usage for spaCy models
|
|
1000
1000
|
|
|
1001
1001
|
### Enhanced Reports
|
|
@@ -929,7 +929,7 @@ python -m spacy download en_core_web_sm
|
|
|
929
929
|
# Medium model (more accurate, larger)
|
|
930
930
|
python -m spacy download en_core_web_md
|
|
931
931
|
|
|
932
|
-
# Large model (most accurate, largest)
|
|
932
|
+
# Large model (most accurate, largest)
|
|
933
933
|
python -m spacy download en_core_web_lg
|
|
934
934
|
```
|
|
935
935
|
|
|
@@ -937,7 +937,7 @@ python -m spacy download en_core_web_lg
|
|
|
937
937
|
|
|
938
938
|
- **Accuracy**: 85-95% accuracy on typical commit messages
|
|
939
939
|
- **Speed**: ~50-100 commits/second with caching enabled
|
|
940
|
-
- **Fallback**:
|
|
940
|
+
- **Fallback**: Gracefully disables qualitative analysis if spaCy model unavailable (provides helpful error messages)
|
|
941
941
|
- **Memory**: ~200MB additional memory usage for spaCy models
|
|
942
942
|
|
|
943
943
|
### Enhanced Reports
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# Documentation Archive
|
|
2
|
+
|
|
3
|
+
This directory contains archived documentation files that are no longer actively used but are preserved for historical reference and context.
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
The `_archive/` directory serves to:
|
|
8
|
+
- Preserve temporary documentation created during development
|
|
9
|
+
- Maintain historical context for major features and bug fixes
|
|
10
|
+
- Keep the root directory clean while preserving file history
|
|
11
|
+
- Provide reference material for understanding project evolution
|
|
12
|
+
|
|
13
|
+
## Organization Policy
|
|
14
|
+
|
|
15
|
+
### What Goes Here
|
|
16
|
+
|
|
17
|
+
Files that should be archived include:
|
|
18
|
+
- **Temporary implementation summaries** - Created during feature development
|
|
19
|
+
- **Bug resolution reports** - Detailed investigation and fix documentation
|
|
20
|
+
- **Feature test reports** - Testing documentation for completed features
|
|
21
|
+
- **Code analysis reports** - One-time code structure analyses
|
|
22
|
+
- **Migration guides** - Completed migration documentation
|
|
23
|
+
- **Deprecated guides** - Documentation for removed or replaced features
|
|
24
|
+
|
|
25
|
+
### What Stays Active
|
|
26
|
+
|
|
27
|
+
Files that should remain in active documentation:
|
|
28
|
+
- **User guides** - Ongoing usage documentation (docs/guides/)
|
|
29
|
+
- **API references** - Current API specifications (docs/reference/)
|
|
30
|
+
- **Architecture docs** - Current system design (docs/architecture/)
|
|
31
|
+
- **Getting started guides** - Onboarding documentation (docs/getting-started/)
|
|
32
|
+
|
|
33
|
+
## Retention Policy
|
|
34
|
+
|
|
35
|
+
- **Permanent retention**: All archived files are kept indefinitely in version control
|
|
36
|
+
- **No automatic deletion**: Files are never automatically removed from archive
|
|
37
|
+
- **Manual cleanup**: Archive review occurs during major version milestones
|
|
38
|
+
- **Git history preservation**: All files moved using `git mv` to maintain history
|
|
39
|
+
|
|
40
|
+
## Archive Structure
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
docs/_archive/
|
|
44
|
+
├── README.md # This file
|
|
45
|
+
├── temp-files/ # Temporary documentation files
|
|
46
|
+
│ ├── README.md # Index of temporary files
|
|
47
|
+
│ ├── code_analysis_report.md
|
|
48
|
+
│ ├── IMPLEMENTATION_SUMMARY.md
|
|
49
|
+
│ └── ...
|
|
50
|
+
├── features/ # Archived feature documentation
|
|
51
|
+
├── bugs/ # Archived bug reports
|
|
52
|
+
└── migrations/ # Archived migration guides
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Finding Archived Content
|
|
56
|
+
|
|
57
|
+
### By File Name
|
|
58
|
+
```bash
|
|
59
|
+
find docs/_archive -name "*.md" -type f
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### By Content
|
|
63
|
+
```bash
|
|
64
|
+
grep -r "search term" docs/_archive/
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### By Git History
|
|
68
|
+
```bash
|
|
69
|
+
git log --all --full-history -- "docs/_archive/filename.md"
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Archiving New Files
|
|
73
|
+
|
|
74
|
+
To archive a file while preserving git history:
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
# 1. Identify the appropriate archive subdirectory
|
|
78
|
+
# 2. Use git mv to preserve history
|
|
79
|
+
git mv path/to/file.md docs/_archive/subdirectory/
|
|
80
|
+
|
|
81
|
+
# 3. Update the archive index
|
|
82
|
+
# Edit docs/_archive/subdirectory/README.md
|
|
83
|
+
|
|
84
|
+
# 4. Commit the change
|
|
85
|
+
git commit -m "chore: archive filename.md"
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## Cross-References
|
|
89
|
+
|
|
90
|
+
For current documentation organization, see:
|
|
91
|
+
- [Documentation Structure](../STRUCTURE.md) - Overall documentation organization
|
|
92
|
+
- [Main Documentation Index](../README.md) - Active documentation navigation
|
|
93
|
+
- [Project Organization](../reference/PROJECT_ORGANIZATION.md) - File organization standards
|
|
94
|
+
|
|
95
|
+
## Version History
|
|
96
|
+
|
|
97
|
+
- **2025-10-20**: Initial archive structure created with temp-files subdirectory
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
# Changelog - Interactive Launcher & Enhanced Identity Detection
|
|
2
|
+
|
|
3
|
+
## Version: Next Release
|
|
4
|
+
|
|
5
|
+
### 🚀 New Features
|
|
6
|
+
|
|
7
|
+
#### Interactive Launcher (`gitflow-analytics run`)
|
|
8
|
+
- **Interactive repository selection**: Multi-select interface with visual indicators
|
|
9
|
+
- **Persistent preferences**: Automatically saves your selections for future runs
|
|
10
|
+
- **Smart defaults**: Remembers last selected repositories, analysis period, and cache settings
|
|
11
|
+
- **Auto-discovery**: Finds configuration files automatically in common locations
|
|
12
|
+
- **User-friendly workflow**: Guided prompts for all analysis options
|
|
13
|
+
|
|
14
|
+
**Example Usage**:
|
|
15
|
+
```bash
|
|
16
|
+
gitflow-analytics run # Interactive mode with auto-discovery
|
|
17
|
+
gitflow-analytics run -c config.yaml # With specific config
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
**Preferences Storage**:
|
|
21
|
+
```yaml
|
|
22
|
+
launcher:
|
|
23
|
+
last_selected_repos: [frontend-app, mobile-app]
|
|
24
|
+
default_weeks: 8
|
|
25
|
+
auto_clear_cache: false
|
|
26
|
+
skip_identity_analysis: false
|
|
27
|
+
last_run: "2025-10-06T19:00:00Z"
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
#### Enhanced Identity Detection (90% Confidence)
|
|
31
|
+
- **Increased confidence threshold**: 90% (up from 80%) for higher accuracy
|
|
32
|
+
- **Color-coded display**: Visual confidence indicators (🟢🟡🟠)
|
|
33
|
+
- **Reasoning display**: Shows LLM's reasoning for each identity match
|
|
34
|
+
- **Confidence metadata**: Stores confidence scores and reasoning in config
|
|
35
|
+
- **Better visibility**: See why identities were matched or rejected
|
|
36
|
+
|
|
37
|
+
**Example Output**:
|
|
38
|
+
```
|
|
39
|
+
🟢 Cluster 1 (Confidence: 95.3%):
|
|
40
|
+
Primary: john.doe@company.com
|
|
41
|
+
Alias: 150280367+johndoe@users.noreply.github.com
|
|
42
|
+
Reason: Same person based on name patterns and commit timing
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### 🔧 Improvements
|
|
46
|
+
|
|
47
|
+
#### Configuration
|
|
48
|
+
- Added `LauncherPreferences` dataclass for type safety
|
|
49
|
+
- Support for both `canonical_email` and `primary_email` (backward compatible)
|
|
50
|
+
- Confidence and reasoning fields in manual identity mappings
|
|
51
|
+
- Optional `launcher` section in config YAML
|
|
52
|
+
|
|
53
|
+
#### CLI
|
|
54
|
+
- New `run` command with comprehensive help text
|
|
55
|
+
- Enhanced `identities` command display with confidence scores
|
|
56
|
+
- Improved error messages and user feedback
|
|
57
|
+
- Better subprocess handling for analysis execution
|
|
58
|
+
|
|
59
|
+
#### Code Quality
|
|
60
|
+
- Comprehensive test suite (5/5 tests passing)
|
|
61
|
+
- Full ruff and black compliance
|
|
62
|
+
- Detailed docstrings and type hints
|
|
63
|
+
- Modular architecture for easy extension
|
|
64
|
+
|
|
65
|
+
### 📚 Documentation
|
|
66
|
+
|
|
67
|
+
#### New Guides
|
|
68
|
+
- **Interactive Launcher Guide** (`docs/guides/interactive-launcher.md`)
|
|
69
|
+
- Complete usage instructions
|
|
70
|
+
- Troubleshooting section
|
|
71
|
+
- Advanced usage patterns
|
|
72
|
+
|
|
73
|
+
- **Enhanced Identity Resolution Guide** (`docs/guides/identity-resolution-enhanced.md`)
|
|
74
|
+
- Confidence level explanations
|
|
75
|
+
- Best practices
|
|
76
|
+
- Configuration examples
|
|
77
|
+
|
|
78
|
+
- **Quick Reference** (`docs/quick-reference/launcher-and-identity.md`)
|
|
79
|
+
- Command cheat sheet
|
|
80
|
+
- Common workflows
|
|
81
|
+
- Configuration snippets
|
|
82
|
+
|
|
83
|
+
#### Updated Documentation
|
|
84
|
+
- Implementation summary with architecture details
|
|
85
|
+
- Test coverage documentation
|
|
86
|
+
- Migration guide for existing users
|
|
87
|
+
|
|
88
|
+
### 🔄 Backward Compatibility
|
|
89
|
+
|
|
90
|
+
**100% Backward Compatible** - All changes are additive:
|
|
91
|
+
- ✅ Existing configs work without modification
|
|
92
|
+
- ✅ All existing commands unchanged
|
|
93
|
+
- ✅ Manual identity mappings still work
|
|
94
|
+
- ✅ Heuristic fallback still available
|
|
95
|
+
- ✅ No breaking changes to any APIs
|
|
96
|
+
|
|
97
|
+
### 🧪 Testing
|
|
98
|
+
|
|
99
|
+
**Test Coverage**:
|
|
100
|
+
- ✅ Import validation
|
|
101
|
+
- ✅ Confidence threshold verification (90%)
|
|
102
|
+
- ✅ Launcher preferences functionality
|
|
103
|
+
- ✅ Manual mappings format
|
|
104
|
+
- ✅ CLI command registration
|
|
105
|
+
|
|
106
|
+
**Code Quality**:
|
|
107
|
+
- ✅ Ruff: All checks passed
|
|
108
|
+
- ✅ Black: All files formatted correctly
|
|
109
|
+
- ✅ MyPy: Type hints complete (where applicable)
|
|
110
|
+
|
|
111
|
+
### 📊 Impact Metrics
|
|
112
|
+
|
|
113
|
+
**Lines of Code**:
|
|
114
|
+
- New code: ~600 LOC
|
|
115
|
+
- Modified: ~100 LOC
|
|
116
|
+
- Documentation: ~800 LOC
|
|
117
|
+
- Tests: ~200 LOC
|
|
118
|
+
|
|
119
|
+
**Files Changed**:
|
|
120
|
+
- Created: 7 files
|
|
121
|
+
- Modified: 6 files
|
|
122
|
+
- Deleted: 0 files
|
|
123
|
+
|
|
124
|
+
**Consolidation**:
|
|
125
|
+
- ✅ Reused existing `ConfigLoader` infrastructure
|
|
126
|
+
- ✅ Leveraged existing `IdentityAnalysisPass` system
|
|
127
|
+
- ✅ Extended existing CLI framework
|
|
128
|
+
- ✅ No duplicate functionality added
|
|
129
|
+
|
|
130
|
+
### 🔐 Security
|
|
131
|
+
|
|
132
|
+
**Security Enhancements**:
|
|
133
|
+
- ✅ Subprocess execution uses `sys.executable` (no shell=True)
|
|
134
|
+
- ✅ Path validation for configuration files
|
|
135
|
+
- ✅ No credentials stored in preferences
|
|
136
|
+
- ✅ API keys still managed via .env
|
|
137
|
+
- ✅ Manual approval required for identity suggestions
|
|
138
|
+
|
|
139
|
+
### ⚡ Performance
|
|
140
|
+
|
|
141
|
+
**Performance Impact**:
|
|
142
|
+
- Interactive launcher: Instant config loading, minimal memory
|
|
143
|
+
- Identity detection: 90% threshold reduces false positives
|
|
144
|
+
- Subprocess isolation: Prevents memory leaks
|
|
145
|
+
- Preference caching: Fast startup for subsequent runs
|
|
146
|
+
|
|
147
|
+
### 🎯 User Experience
|
|
148
|
+
|
|
149
|
+
**Before**:
|
|
150
|
+
```bash
|
|
151
|
+
gitflow-analytics analyze -c config.yaml --weeks 8 --clear-cache
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
**After**:
|
|
155
|
+
```bash
|
|
156
|
+
gitflow-analytics run
|
|
157
|
+
# Interactive prompts guide you through all options
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
**Benefits**:
|
|
161
|
+
- ⚡ Faster workflow (fewer keystrokes)
|
|
162
|
+
- 🎯 Better accuracy (90% confidence)
|
|
163
|
+
- 👁️ Better visibility (reasoning displayed)
|
|
164
|
+
- 💾 Persistent preferences (remembers your choices)
|
|
165
|
+
- 🎨 Visual feedback (color-coded indicators)
|
|
166
|
+
|
|
167
|
+
### 🐛 Bug Fixes
|
|
168
|
+
|
|
169
|
+
None - This is a pure feature addition with enhancements.
|
|
170
|
+
|
|
171
|
+
### 📝 Notes for Developers
|
|
172
|
+
|
|
173
|
+
**Architecture Decisions**:
|
|
174
|
+
1. **Subprocess execution**: Chosen over Click context invocation to avoid context pollution
|
|
175
|
+
2. **90% confidence**: Based on testing, provides optimal balance of recall/precision
|
|
176
|
+
3. **Preference storage**: Stored in config YAML for easy version control
|
|
177
|
+
4. **Color indicators**: Universal green/yellow/orange for intuitive understanding
|
|
178
|
+
|
|
179
|
+
**Extension Points**:
|
|
180
|
+
- Repository filtering can be enhanced with tag-based selection
|
|
181
|
+
- Multiple preference profiles could be supported
|
|
182
|
+
- Batch operations for multiple analyses
|
|
183
|
+
- Active learning from user approvals/rejections
|
|
184
|
+
|
|
185
|
+
### 🚀 Migration Guide
|
|
186
|
+
|
|
187
|
+
**For Existing Users**:
|
|
188
|
+
No migration needed! Just start using:
|
|
189
|
+
```bash
|
|
190
|
+
gitflow-analytics run
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
**For Administrators**:
|
|
194
|
+
Optional config enhancement:
|
|
195
|
+
```yaml
|
|
196
|
+
launcher:
|
|
197
|
+
default_weeks: 8 # Set your preferred default
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
### 🔮 Future Enhancements
|
|
201
|
+
|
|
202
|
+
**Potential Improvements**:
|
|
203
|
+
1. Repository filtering by project tags
|
|
204
|
+
2. Multiple saved preference profiles
|
|
205
|
+
3. Batch analysis operations
|
|
206
|
+
4. Integration testing framework
|
|
207
|
+
5. Confidence threshold per repository
|
|
208
|
+
6. Active learning from user feedback
|
|
209
|
+
7. Pattern caching for common identities
|
|
210
|
+
8. Bulk identity operations
|
|
211
|
+
|
|
212
|
+
### 🙏 Credits
|
|
213
|
+
|
|
214
|
+
Implementation based on research findings:
|
|
215
|
+
- LLM identity analyzer architecture
|
|
216
|
+
- Click interactive prompting patterns
|
|
217
|
+
- GitFlow Analytics existing infrastructure
|
|
218
|
+
- User feedback on identity detection accuracy
|
|
219
|
+
|
|
220
|
+
---
|
|
221
|
+
|
|
222
|
+
**Release Date**: TBD
|
|
223
|
+
**Version**: TBD (Semantic versioning via conventional commits)
|