145 lines
5.5 KiB
Bash
145 lines
5.5 KiB
Bash
|
|
#!/bin/bash
|
||
|
|
# ORIGIN Error Discovery Script
|
||
|
|
# Ce script découvre automatiquement toutes les erreurs existantes
|
||
|
|
|
||
|
|
set -e
|
||
|
|
|
||
|
|
echo "🔍 Découverte des erreurs existantes - Projet Veza"
|
||
|
|
echo "=================================================="
|
||
|
|
echo ""
|
||
|
|
|
||
|
|
# Créer les répertoires nécessaires
|
||
|
|
mkdir -p docs/ORIGIN/error-logs
|
||
|
|
mkdir -p logs
|
||
|
|
|
||
|
|
# Date pour les fichiers
|
||
|
|
DATE=$(date +%Y%m%d-%H%M%S)
|
||
|
|
|
||
|
|
echo "📅 Date d'analyse: $(date)"
|
||
|
|
echo ""
|
||
|
|
|
||
|
|
# ===========================================
|
||
|
|
# BACKEND GO
|
||
|
|
# ===========================================
|
||
|
|
echo "📡 1/4 - Analyse du Backend Go..."
|
||
|
|
echo " ├─ Build..."
|
||
|
|
cd veza-backend-api
|
||
|
|
go build ./... > ../docs/ORIGIN/error-logs/backend-build-${DATE}.log 2>&1 && echo " │ ✅ Build OK" || echo " │ ❌ Build FAILED"
|
||
|
|
|
||
|
|
echo " ├─ Tests..."
|
||
|
|
go test ./... -v -coverprofile=../docs/ORIGIN/error-logs/backend-coverage-${DATE}.out > ../docs/ORIGIN/error-logs/backend-tests-${DATE}.log 2>&1 && echo " │ ✅ Tests OK" || echo " │ ❌ Tests FAILED"
|
||
|
|
|
||
|
|
echo " ├─ Vet..."
|
||
|
|
go vet ./... > ../docs/ORIGIN/error-logs/backend-vet-${DATE}.log 2>&1 && echo " │ ✅ Vet OK" || echo " │ ❌ Vet found issues"
|
||
|
|
|
||
|
|
echo " └─ Lint (si golangci-lint disponible)..."
|
||
|
|
if command -v golangci-lint &> /dev/null; then
|
||
|
|
golangci-lint run --out-format=checkstyle > ../docs/ORIGIN/error-logs/backend-lint-${DATE}.xml 2>&1 && echo " ✅ Lint OK" || echo " ❌ Lint found issues"
|
||
|
|
else
|
||
|
|
echo " ⚠️ golangci-lint non installé (skip)"
|
||
|
|
fi
|
||
|
|
|
||
|
|
cd ..
|
||
|
|
echo ""
|
||
|
|
|
||
|
|
# ===========================================
|
||
|
|
# FRONTEND REACT
|
||
|
|
# ===========================================
|
||
|
|
echo "🌐 2/4 - Analyse du Frontend React..."
|
||
|
|
echo " ├─ Build..."
|
||
|
|
cd apps/web
|
||
|
|
npm run build > ../../docs/ORIGIN/error-logs/frontend-build-${DATE}.log 2>&1 && echo " │ ✅ Build OK" || echo " │ ❌ Build FAILED"
|
||
|
|
|
||
|
|
echo " ├─ Tests..."
|
||
|
|
npm test -- --run --reporter=verbose > ../../docs/ORIGIN/error-logs/frontend-tests-${DATE}.log 2>&1 && echo " │ ✅ Tests OK" || echo " │ ❌ Tests FAILED"
|
||
|
|
|
||
|
|
echo " ├─ Lint..."
|
||
|
|
npm run lint > ../../docs/ORIGIN/error-logs/frontend-lint-${DATE}.log 2>&1 && echo " │ ✅ Lint OK" || echo " │ ❌ Lint found issues"
|
||
|
|
|
||
|
|
echo " └─ TypeScript check..."
|
||
|
|
npx tsc --noEmit > ../../docs/ORIGIN/error-logs/frontend-tsc-${DATE}.log 2>&1 && echo " ✅ TypeScript OK" || echo " ❌ TypeScript errors found"
|
||
|
|
|
||
|
|
cd ../..
|
||
|
|
echo ""
|
||
|
|
|
||
|
|
# ===========================================
|
||
|
|
# CHAT SERVER RUST (si existe)
|
||
|
|
# ===========================================
|
||
|
|
if [ -d "veza-chat-server" ]; then
|
||
|
|
echo "💬 3/4 - Analyse du Chat Server Rust..."
|
||
|
|
echo " ├─ Build..."
|
||
|
|
cd veza-chat-server
|
||
|
|
cargo build --release > ../docs/ORIGIN/error-logs/chat-build-${DATE}.log 2>&1 && echo " │ ✅ Build OK" || echo " │ ❌ Build FAILED"
|
||
|
|
|
||
|
|
echo " ├─ Tests..."
|
||
|
|
cargo test > ../docs/ORIGIN/error-logs/chat-tests-${DATE}.log 2>&1 && echo " │ ✅ Tests OK" || echo " │ ❌ Tests FAILED"
|
||
|
|
|
||
|
|
echo " └─ Clippy..."
|
||
|
|
cargo clippy --all-targets --all-features -- -D warnings > ../docs/ORIGIN/error-logs/chat-clippy-${DATE}.log 2>&1 && echo " ✅ Clippy OK" || echo " ❌ Clippy found issues"
|
||
|
|
|
||
|
|
cd ..
|
||
|
|
else
|
||
|
|
echo "💬 3/4 - Chat Server Rust... ⏭️ (non trouvé)"
|
||
|
|
fi
|
||
|
|
echo ""
|
||
|
|
|
||
|
|
# ===========================================
|
||
|
|
# STREAM SERVER RUST (si existe)
|
||
|
|
# ===========================================
|
||
|
|
if [ -d "veza-stream-server" ]; then
|
||
|
|
echo "🎵 4/4 - Analyse du Stream Server Rust..."
|
||
|
|
echo " ├─ Build..."
|
||
|
|
cd veza-stream-server
|
||
|
|
cargo build --release > ../docs/ORIGIN/error-logs/stream-build-${DATE}.log 2>&1 && echo " │ ✅ Build OK" || echo " │ ❌ Build FAILED"
|
||
|
|
|
||
|
|
echo " ├─ Tests..."
|
||
|
|
cargo test > ../docs/ORIGIN/error-logs/stream-tests-${DATE}.log 2>&1 && echo " │ ✅ Tests OK" || echo " │ ❌ Tests FAILED"
|
||
|
|
|
||
|
|
echo " └─ Clippy..."
|
||
|
|
cargo clippy --all-targets --all-features -- -D warnings > ../docs/ORIGIN/error-logs/stream-clippy-${DATE}.log 2>&1 && echo " ✅ Clippy OK" || echo " ❌ Clippy found issues"
|
||
|
|
|
||
|
|
cd ..
|
||
|
|
else
|
||
|
|
echo "🎵 4/4 - Stream Server Rust... ⏭️ (non trouvé)"
|
||
|
|
fi
|
||
|
|
echo ""
|
||
|
|
|
||
|
|
# ===========================================
|
||
|
|
# DOCKER
|
||
|
|
# ===========================================
|
||
|
|
echo "🐳 Analyse Docker..."
|
||
|
|
echo " ├─ docker-compose.yml syntax..."
|
||
|
|
if command -v docker-compose &> /dev/null; then
|
||
|
|
docker-compose config > docs/ORIGIN/error-logs/docker-compose-${DATE}.log 2>&1 && echo " │ ✅ Syntax OK" || echo " │ ❌ Syntax FAILED"
|
||
|
|
else
|
||
|
|
echo " │ ⚠️ docker-compose non disponible (skip)"
|
||
|
|
fi
|
||
|
|
|
||
|
|
echo " └─ Docker daemon..."
|
||
|
|
if docker ps &> /dev/null; then
|
||
|
|
echo " ✅ Docker daemon running"
|
||
|
|
else
|
||
|
|
echo " ❌ Docker daemon NOT running"
|
||
|
|
fi
|
||
|
|
echo ""
|
||
|
|
|
||
|
|
# ===========================================
|
||
|
|
# GÉNÉRATION DU RÉSUMÉ
|
||
|
|
# ===========================================
|
||
|
|
echo "📊 Génération du résumé..."
|
||
|
|
./scripts/generate-error-summary.sh ${DATE}
|
||
|
|
|
||
|
|
echo ""
|
||
|
|
echo "✅ Découverte terminée!"
|
||
|
|
echo ""
|
||
|
|
echo "📁 Logs sauvegardés dans: docs/ORIGIN/error-logs/"
|
||
|
|
echo "📄 Résumé: docs/ORIGIN/error-logs/summary-${DATE}.md"
|
||
|
|
echo ""
|
||
|
|
echo "🔍 Prochaines étapes:"
|
||
|
|
echo " 1. Consulter le résumé: cat docs/ORIGIN/error-logs/summary-${DATE}.md"
|
||
|
|
echo " 2. Mettre à jour ORIGIN_ERROR_REGISTRY.md"
|
||
|
|
echo " 3. Créer les tâches TERR-XXX dans ORIGIN_IMPLEMENTATION_TASKS.md"
|
||
|
|
echo " 4. Commencer les corrections par ordre de priorité (P0 > P1 > P2)"
|
||
|
|
echo ""
|
||
|
|
|