Skip to content

Commit 2022552

Browse files
refactor(docs): code analysis engine
changes: - file: cli.py area: cli added: [_print_summary_header, _build_file_list, _print_validator_issues, _output_batch_json, _print_validator_details, _build_results_table, +28 more] modified: [_output_text, batch, _output_json, check, validate] - file: scoring.py area: core added: [_initialize_context, _initialize_settings, _initialize_validators, _run_validation_pipeline] modified: [validate] - file: imports.py area: core removed: [_java_module_exists, _validate_cpp, walk, _rust_module_exists, ImportValidator, _extract_java_imports, +18 more] - file: base.py area: core added: [BaseImportValidator, module_exists, create_validation_result, validate, extract_imports] - file: c_imports.py area: core added: [walk, validate, __init__, CImportValidator, module_exists, extract_imports] - file: factory.py area: core added: [register_validator, ImportValidatorFactory, create_validator, supported_languages] - file: go_imports.py area: core added: [GoImportValidator, walk, module_exists, validate, extract_imports] - file: java_imports.py area: core added: [walk, module_exists, JavaImportValidator, validate, extract_imports] - file: javascript_imports.py area: core added: [walk, JavaScriptImportValidator, validate, __init__, module_exists, extract_imports] - file: python_imports.py area: core added: [module_exists, validate, PythonImportValidator, extract_imports] - file: rust_imports.py area: core added: [walk, RustImportValidator, module_exists, validate, extract_imports] - file: wrapper.py area: core added: [ImportValidator, validate] - file: imports_original.py area: core added: [_java_module_exists, _validate_cpp, walk, _rust_module_exists, ImportValidator, _extract_java_imports, +18 more] - file: semantic.py area: core added: [_parse_scores, _extract_json_from_response, _create_json_error_result, _create_parse_error_result, _parse_line_number, _parse_severity, +1 more] modified: [_parse_response, SemanticValidator] - file: test_cli_e2e.py area: cli modified: [TestCLICommands, TestConfiguration, test_batch_text_output, test_validate_nonexistent_file, test_validate_with_config_file, test_check_nonexistent_file, +1 more] - file: test_imports.py area: test modified: [test_non_python_skipped] - file: test_installation.py area: test modified: [test_pipx_install_editable, test_pip_install_with_extras, test_language_detection, test_basic_functionality, test_pip_install_from_local, test_pipx_install_with_extras, +4 more] - file: test_semantic_validation.py area: test modified: [TestSemanticValidation, test_semantic_validation_with_reference, test_semantic_validator_init, test_semantic_validation_good_code, test_semantic_validation_disabled] stats: lines: "+22199/-2452 (net +19747)" files: 40 complexity: "Large structural change (normalized)"
1 parent e113c1e commit 2022552

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+22232
-2455
lines changed

CHANGELOG.md

Lines changed: 37 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,15 @@
22

33
### Summary
44

5-
docs: comprehensive documentation update with code health metrics and refactoring roadmap
5+
docs: comprehensive documentation update with code health metrics and CLI improvements
66

7-
### Docs
7+
### Added (CLI)
8+
- **Detailed batch output** — show reasons for failures with validator scores and issues
9+
- **New CLI options for batch**: `--verbose` (-v), `--show-issues` (-i) for detailed per-file results
10+
- **New output formats**: `json`, `yaml`, `toon` for batch results (was: rich, text only)
11+
- **Failed files summary** — list of failed files with scores, issues, and semantic validator summaries
812

13+
### Docs
914
- docs: add code health metrics section to README (CC̄=3.5, max-CC=42, god modules=2)
1015
- docs: document critical functions requiring refactoring (batch CC=42, validate CC=18)
1116
- docs: add god modules inventory (imports.py 653L, cli.py 401L)
@@ -14,7 +19,6 @@ docs: comprehensive documentation update with code health metrics and refactorin
1419
- docs: update example list in README (12 examples including MCP and Ollama demos)
1520

1621
### Analysis
17-
1822
- analysis: generate code2llm analysis files (analysis.toon, evolution.toon, context.md)
1923
- metrics: 91 functions, 19 classes, 56 modules, 8 critical functions (CC≥10)
2024

@@ -109,7 +113,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
109113
- TOML config loading, `[tool.vallm]` support
110114
- Pre-commit hook integration
111115
- GitHub Actions CI/CD pipeline
112-
- CONTRIBUTING.md
113116

114117
### Added (Multi-Language Support)
115118
- **Language enum** — 30+ programming languages with metadata (compiled/scripting/web)
@@ -121,6 +124,36 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
121124
- **Tree-sitter for all** — syntax validation for 165+ languages
122125
- **Example 07** — comprehensive multi-language demo with 8 languages
123126

127+
## [0.1.10] - 2026-03-23
128+
129+
### Docs
130+
- Update CHANGELOG.md
131+
- Update README.md
132+
- Update code2llm_output/README.md
133+
- Update code2llm_output/context.md
134+
- Update docs/README.md
135+
- Update project/README.md
136+
- Update project/context.md
137+
138+
### Test
139+
- Update tests/test_cli_e2e.py
140+
- Update tests/test_imports.py
141+
- Update tests/test_installation.py
142+
- Update tests/test_semantic_validation.py
143+
144+
### Other
145+
- Update code2llm_output/analysis.toon
146+
- Update examples/11_claude_code_autonomous/claude_autonomous_demo.py
147+
- Update project.sh
148+
- Update project/analysis.toon
149+
- Update project/calls.mmd
150+
- Update project/calls.png
151+
- Update project/compact_flow.mmd
152+
- Update project/compact_flow.png
153+
- Update project/dashboard.html
154+
- Update project/duplication.toon
155+
- ... and 10 more files
156+
124157
## [0.1.9] - 2026-03-22
125158

126159
### Docs

README.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,10 +115,18 @@ print(f"Score: {result.weighted_score:.2f}")
115115
vallm batch . --recursive --semantic --model qwen2.5-coder:7b
116116
vallm batch src/ --recursive --include "*.py,*.js" --exclude "*/test/*"
117117
vallm batch . --recursive --format json --fail-fast
118+
vallm batch . --recursive --verbose --show-issues # Detailed per-file results
119+
120+
# Output formats for batch results
121+
vallm batch . --recursive --format json # Machine-readable JSON
122+
vallm batch . --recursive --format yaml # YAML format
123+
vallm batch . --recursive --format toon # Compact TOON format
124+
vallm batch . --recursive --format text # Plain text
118125

119126
# Single file validation
120127
vallm validate --file mycode.py --semantic --model qwen2.5-coder:7b
121128
vallm validate --file app.js --security
129+
vallm validate --file mycode.py --format json # JSON output
122130

123131
# Quick syntax check only
124132
vallm check mycode.py
@@ -128,6 +136,22 @@ vallm check src/main.go
128136
vallm info
129137
```
130138

139+
### Batch Command Options
140+
141+
| Option | Short | Description |
142+
|--------|-------|-------------|
143+
| `--recursive` | `-r` | Recurse into subdirectories |
144+
| `--include` | | File patterns to include (e.g., "*.py,*.js") |
145+
| `--exclude` | | File patterns to exclude |
146+
| `--use-gitignore` | | Respect .gitignore patterns (default: true) |
147+
| `--format` | `-f` | Output format: `rich`, `json`, `yaml`, `toon`, `text` |
148+
| `--fail-fast` | `-x` | Stop on first failure |
149+
| `--semantic` | | Enable LLM-as-judge semantic review |
150+
| `--security` | | Enable security checks |
151+
| `--model` | `-m` | LLM model for semantic review |
152+
| `--verbose` | `-v` | Show detailed validation results for each file |
153+
| `--show-issues` | `-i` | Show issues for failed files |
154+
131155
### With Ollama (LLM-as-judge)
132156

133157
```bash

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0.1.9
1+
0.1.10

0 commit comments

Comments
 (0)