#!/bin/bash
# Script pour supprimer les liens cassés vers des fichiers inexistants

set -e

echo "🗑️ Suppression des liens cassés..."

# 1. Supprimer les liens vers ADR inexistants dans index.md
echo "  → Nettoyage de index.md..."
if [ -f "docs/index.md" ]; then
    sed -i \
        -e '/adr\/010-commandes-volant\.md/d' \
        -e '/adr\/011-conformite-stores-carplay-android-auto\.md/d' \
        docs/index.md
fi

# 2. Corriger les numéros ADR incorrects dans technical.md
echo "  → Correction des numéros ADR dans technical.md..."
if [ -f "docs/technical.md" ]; then
    sed -i \
        -e 's|adr/018-notifications-push\.md|adr/017-notifications-geolocalisees.md|g' \
        docs/technical.md
fi

# 3. Supprimer les liens vers fichiers d'analyse inexistants dans ADR
echo "  → Nettoyage des liens dans les ADR..."
find docs/adr -type f -name "*.md" -exec sed -i \
    -e 's|\[.*\](../architecture/database/schema\.md)||g' \
    -e 's|\[.*\](../INCONSISTENCIES-ANALYSIS\.md[^)]*)||g' \
    -e 's|\[.*\](\.\.\/ANALYSE_LIBRAIRIES_GO\.md)||g' \
    -e 's|\[.*\](../../README\.md)||g' \
    -e 's|\[.*\](../../TECHNICAL\.md)||g' \
    {} \;

# 4. Corriger les numéros ADR dans adr/014-organisation-monorepo.md
if [ -f "docs/adr/014-organisation-monorepo.md" ]; then
    sed -i 's|020-strategie-cicd-monorepo\.md|022-strategie-cicd-monorepo.md|g' docs/adr/014-organisation-monorepo.md
fi

# 5. Corriger les numéros ADR dans adr/020-librairies-flutter.md
if [ -f "docs/adr/020-librairies-flutter.md" ]; then
    sed -i \
        -e 's|018-librairies-flutter\.md|020-librairies-flutter.md|g' \
        -e 's|010-frontend-mobile\.md|012-frontend-mobile.md|g' \
        docs/adr/020-librairies-flutter.md
fi

# 6. Corriger le lien ADR dans domains/recommendation/rules/interactions-navigation.md
if [ -f "docs/domains/recommendation/rules/interactions-navigation.md" ]; then
    sed -i 's|../../../adr/010-frontend-mobile\.md|../../../adr/012-frontend-mobile.md|g' \
        docs/domains/recommendation/rules/interactions-navigation.md
fi

# 7. Corriger les liens dans domains/README.md
if [ -f "docs/domains/README.md" ]; then
    sed -i \
        -e 's|\[📖 Règles métier par numéro\](../regles-metier/)||g' \
        -e 's|\[🏛️ ADR (Architecture Decision Records)\](../../../adr/)|[🏛️ ADR (Architecture Decision Records)](../adr/)|g' \
        -e 's|\[⚖️ Documentation légale\](../legal/)|[⚖️ Documentation légale](../legal/README.md)|g' \
        -e 's|\[🖥️ Interfaces UI\](../interfaces/)|[🖥️ Interfaces UI](../interfaces/README.md)|g' \
        docs/domains/README.md
fi

# 8. Nettoyer les lignes vides créées par les suppressions
find docs -type f -name "*.md" -exec sed -i '/^$/N;/^\n$/d' {} \;

echo "✅ Liens cassés supprimés/corrigés!"
