markitect-main/markitect
tegwick fd66d67849 feat: Make ast-stats command work without file argument - show AST subsystem statistics
Enhanced ast-stats command to follow the established *-stats convention where subsystem
commands show system-level statistics when called without specific targets.

## Changes Made:

### 1. Made file_path Argument Optional
- Changed from required to optional: `@click.argument('file_path', required=False)`
- Updated help text to show `[FILE_PATH]` indicating optional parameter
- Enhanced docstring with clear examples for both usage patterns

### 2. Implemented AST Subsystem Statistics
- New function `_show_ast_subsystem_stats()` for system-level statistics
- Comprehensive statistics collection including:
  * **AST Cache**: Directory path, cached files count, cache size
  * **Processing Metrics**: Total files processed, recent activity (7 days)
  * **System Information**: Service availability, working directory, Python version

### 3. Dual Functionality Support
```bash
markitect ast-stats              # Shows AST subsystem statistics
markitect ast-stats document.md  # Shows file-specific analysis (preserved)
```

### 4. Consistent Output Formats
- Supports all formats: table, json, yaml, simple
- Table format: Organized with emoji icons and status indicators
- JSON/YAML: Structured data for programmatic use
- Simple: Key-value pairs for scripting

### 5. Robust Error Handling
- Graceful degradation when cache/database unavailable
- Clear status indicators ( Available,  Unavailable, ⚠️ Warning)
- Detailed error messages in verbose mode

## Implementation Details:

The command now detects when no file is provided and automatically switches to
subsystem mode, maintaining full backward compatibility with existing file
analysis functionality.

Benefits:
- **Consistent CLI Experience**: Matches cache-stats, db-stats, config-stats patterns
- **System Monitoring**: Easy way to check AST subsystem health
- **Backward Compatible**: Existing scripts continue to work unchanged
- **Professional Interface**: Clear separation between system and file-level stats

All functionality tested and working correctly with comprehensive error handling.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-30 22:25:30 +02:00
..
legacy feat: Complete Issue #39 - Database CLI Reorganization with Comprehensive Legacy Compatibility System 2025-09-30 17:28:39 +02:00
__init__.py chore: gitignore and repo cleanup 2025-09-16 03:04:18 +02:00
associated_files.py feat: Complete Issue #40 - Associated Files Management with Interactive vs Automation Mode System 2025-09-30 13:09:37 +02:00
ast_cache.py feat: Strategic pivot to CLI implementation with comprehensive foundation 2025-09-24 01:14:27 +02:00
ast_service.py fix: Improve AST display content visibility for Issue #15 2025-09-27 09:31:47 +02:00
cache_service.py feat: Complete logging standardization with context-aware system 2025-09-27 08:28:10 +02:00
cli.py feat: Make ast-stats command work without file argument - show AST subsystem statistics 2025-09-30 22:25:30 +02:00
database.py feat: Complete Issue #3 - Schema Management with Enhanced Format Control 2025-09-30 02:59:43 +02:00
document_manager.py feat: Strategic pivot to CLI implementation with comprehensive foundation 2025-09-24 01:14:27 +02:00
exceptions.py feat: Complete Issue #8 - Detailed Validation Error Reporting and CLI Enhancements 2025-09-29 21:21:21 +02:00
frontmatter.py feat: Implement Issue #1 - Database initialization and front matter parsing 2025-09-23 04:28:29 +02:00
legacy_compat.py feat: Complete Issue #39 - Database CLI Reorganization with Comprehensive Legacy Compatibility System 2025-09-30 17:28:39 +02:00
legacy_integration_example.py feat: Complete Issue #39 - Database CLI Reorganization with Comprehensive Legacy Compatibility System 2025-09-30 17:28:39 +02:00
parser.py feat: Complete Issue #8 - Detailed Validation Error Reporting and CLI Enhancements 2025-09-29 21:21:21 +02:00
schema_generator.py feat: Complete Issue #5 - Schema Generation Foundation for arc42 Architecture Documentation 2025-09-29 14:53:05 +02:00
schema_validator.py feat: Complete Issue #8 - Detailed Validation Error Reporting and CLI Enhancements 2025-09-29 21:21:21 +02:00
serializer.py feat: Complete Issue #2 - Fast Document Loading & CLI Manipulation MAJOR MILESTONE 2025-09-25 03:01:40 +02:00
stub_generator.py feat: Complete Issue #6 - Generate Markdown Stub from Schema 2025-09-30 03:31:48 +02:00
validation_error.py feat: Complete Issue #8 - Detailed Validation Error Reporting and CLI Enhancements 2025-09-29 21:21:21 +02:00