76 lines
2.4 KiB
Bash
76 lines
2.4 KiB
Bash
#!/usr/bin/env bash
|
|
# Quick Quality Check Script for Phase 31.3
|
|
# Usage: bash docs/private/roadmap/phases/phase-31.3/quick_quality_check.sh
|
|
|
|
set -e
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../../../../.." && pwd)"
|
|
|
|
echo "🔍 Phase 31.3 Quick Quality Check"
|
|
echo "=================================="
|
|
echo ""
|
|
|
|
cd "$PROJECT_ROOT"
|
|
|
|
# Compiler analysis
|
|
echo "📊 Compiler Analysis (selfhost/compiler/pipeline_v2/)"
|
|
echo "-----------------------------------------------------"
|
|
bash -c 'for file in selfhost/compiler/pipeline_v2/*.hako; do
|
|
if [ -f "$file" ]; then
|
|
lines=$(wc -l < "$file")
|
|
name=$(basename "$file")
|
|
echo "$lines $name"
|
|
fi
|
|
done | sort -rn' > "$SCRIPT_DIR/QUALITY_ANALYSIS_COMPILER.txt"
|
|
|
|
echo "Total files: $(ls -1 selfhost/compiler/pipeline_v2/*.hako 2>/dev/null | wc -l)"
|
|
echo "Total lines: $(cat selfhost/compiler/pipeline_v2/*.hako 2>/dev/null | wc -l)"
|
|
echo ""
|
|
echo "Top 10 largest files:"
|
|
head -10 "$SCRIPT_DIR/QUALITY_ANALYSIS_COMPILER.txt"
|
|
echo ""
|
|
|
|
# VM analysis
|
|
echo "📊 VM Analysis (selfhost/hakorune-vm/)"
|
|
echo "---------------------------------------"
|
|
bash -c 'for file in selfhost/hakorune-vm/*.hako; do
|
|
if [ -f "$file" ]; then
|
|
lines=$(wc -l < "$file")
|
|
name=$(basename "$file")
|
|
echo "$lines $name"
|
|
fi
|
|
done | sort -rn' > "$SCRIPT_DIR/QUALITY_ANALYSIS_VM.txt"
|
|
|
|
echo "Total files: $(ls -1 selfhost/hakorune-vm/*.hako 2>/dev/null | wc -l)"
|
|
echo "Total lines: $(cat selfhost/hakorune-vm/*.hako 2>/dev/null | wc -l)"
|
|
echo ""
|
|
echo "Top 10 largest files:"
|
|
head -10 "$SCRIPT_DIR/QUALITY_ANALYSIS_VM.txt"
|
|
echo ""
|
|
|
|
# Instruction handlers
|
|
echo "📦 VM Instruction Handlers"
|
|
echo "--------------------------"
|
|
echo "Total handlers: $(ls -1 selfhost/hakorune-vm/*_handler.hako 2>/dev/null | wc -l)"
|
|
echo ""
|
|
ls -1 selfhost/hakorune-vm/*_handler.hako 2>/dev/null | while read file; do
|
|
name=$(basename "$file" .hako)
|
|
lines=$(wc -l < "$file")
|
|
printf " %-30s %4d lines\n" "$name" "$lines"
|
|
done | sort -k2 -rn | head -10
|
|
echo ""
|
|
|
|
# Summary
|
|
echo "📝 Summary"
|
|
echo "----------"
|
|
echo "✅ QUALITY_ANALYSIS_COMPILER.txt created"
|
|
echo "✅ QUALITY_ANALYSIS_VM.txt created"
|
|
echo ""
|
|
echo "📋 Next Steps:"
|
|
echo " 1. Review QUALITY_ANALYSIS_*.txt files"
|
|
echo " 2. Read docs/private/roadmap/phases/phase-31.3/QUICK_START.md"
|
|
echo " 3. Start Week 1: TraceBox implementation"
|
|
echo ""
|
|
echo "🚀 Phase 31.3 ready to start!"
|