chore: Major codebase cleanup - remove deprecated files and organize structure
- Docker: Delete 23 deprecated Dockerfiles, fix CI/CD to use Dockerfile.foxhunt-build - Config: Remove 36 .env files, keep 4 essential, delete config/environments/ - Docs: Archive 614 Wave D files to docs/archive/wave_d/, 95% reduction in root - Scripts: Delete 56 deprecated scripts, keep 58 production-critical (49% reduction) - Python: Organize 37 scripts into scripts/python/ subdirectories, delete ml/python/ - Build: Remove 1GB artifacts, delete old venvs, clean Python cache from git - Migrations: Delete deprecated directory (4,432 lines), remove duplicate database/migrations/ - Infrastructure: Delete deployment/ (61 files), docs/scripts/ (8 files) Total impact: ~2,500 files cleaned, 750MB+ space freed, zero production impact All deleted scripts backed up to archives. runpod/ and tests/runpod/ preserved. data_acquisition_service retained per user request.
This commit is contained in:
32
scripts/python/analysis/analyze_failures.py
Normal file
32
scripts/python/analysis/analyze_failures.py
Normal file
@@ -0,0 +1,32 @@
|
||||
import re
|
||||
|
||||
with open('test_output.log', 'r') as f:
|
||||
lines = f.readlines()
|
||||
|
||||
current_package = None
|
||||
failures = {}
|
||||
|
||||
for i, line in enumerate(lines):
|
||||
# Match package name
|
||||
if 'Running' in line and ('tests/' in line or 'src/lib.rs' in line or 'src/main.rs' in line):
|
||||
match = re.search(r'Running.*\(target/debug/deps/([^-]+)', line)
|
||||
if match:
|
||||
current_package = match.group(1)
|
||||
|
||||
# Match test failures
|
||||
if 'test result: FAILED' in line:
|
||||
match = re.search(r'(\d+) passed; (\d+) failed', line)
|
||||
if match and current_package:
|
||||
passed = int(match.group(1))
|
||||
failed = int(match.group(2))
|
||||
if current_package not in failures:
|
||||
failures[current_package] = {'passed': 0, 'failed': 0}
|
||||
failures[current_package]['passed'] += passed
|
||||
failures[current_package]['failed'] += failed
|
||||
|
||||
print("PACKAGES WITH TEST FAILURES:")
|
||||
print("=" * 80)
|
||||
for pkg, stats in sorted(failures.items()):
|
||||
total = stats['passed'] + stats['failed']
|
||||
rate = stats['passed'] / total * 100 if total > 0 else 0
|
||||
print(f"{pkg:40s} {stats['passed']:3d}/{total:3d} passed ({rate:5.1f}%)")
|
||||
Reference in New Issue
Block a user