Spaces:
Sleeping
Sleeping
File size: 1,813 Bytes
cc38116 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | #!/bin/bash
# GSD Template Validation Script
# Validates all template files in .gsd/templates/
error_count=0
warning_count=0
templates_checked=0
echo "βββββββββββββββββββββββββββββββββββββββββββββββββββββ"
echo " GSD βΊ VALIDATING TEMPLATES"
echo "βββββββββββββββββββββββββββββββββββββββββββββββββββββ"
echo ""
for file in .gsd/templates/*.md; do
((templates_checked++))
filename=$(basename "$file")
has_errors=false
# Check for title (# heading)
if ! head -1 "$file" | grep -q "^# "; then
echo "β $filename: Missing title (# heading)"
((error_count++))
has_errors=true
fi
# Check for Last updated marker
if ! grep -q "Last updated" "$file"; then
echo "β οΈ $filename: Missing 'Last updated' marker"
((warning_count++))
fi
# Check minimum length
file_size=$(wc -c < "$file")
if [ "$file_size" -lt 200 ]; then
echo "β οΈ $filename: Very short template (<200 chars)"
((warning_count++))
fi
if [ "$has_errors" = false ]; then
echo "β
$filename"
fi
done
echo ""
echo "βββββββββββββββββββββββββββββββββββββββββββββββββββββββ"
echo ""
echo "Templates checked: $templates_checked"
echo "Errors: $error_count"
echo "Warnings: $warning_count"
echo ""
if [ $error_count -eq 0 ]; then
echo "β
All templates valid!"
exit 0
else
echo "β Validation failed"
exit 1
fi
|