Stéphan Peccini f812fac89e
feat: Amelioration structure - tests, documentation et qualite du code
Cette mise a jour complete ameliore significativement la qualite et la maintenabilite du projet.

1. Extension de la couverture de tests

Couverture globale passee de 8% a 16% (+100%)
- Ajout de 25 nouveaux tests (total: 67 tests, 100% passent)
- Nouveaux fichiers de tests:
  * tests/unit/test_gitea.py (17 tests)
  * tests/unit/test_fiches_tickets.py (8 tests)

Etat de la couverture par module:
- utils/gitea.py: 100%
- utils/widgets.py: 100%
- utils/logger.py: 94%
- app/fiches/utils/tickets/core.py: 77%
- utils/graph_utils.py: 59%

2. Documentation d'architecture complete

Creation de 3 nouveaux documents (30 Ko total):
- docs/ARCHITECTURE.md (15 Ko)
  * Architecture complete du projet
  * Flux de donnees detailles
  * Indices de vulnerabilite (IHH, ISG, ICS, IVC)
  * Structure du graphe NetworkX

- docs/MODULES.md (15 Ko)
  * Guide des 11 modules principaux
  * Exemples de code (15+ snippets)
  * Bonnes pratiques
  * Guide de depannage

- docs/README.md (4 Ko)
  * Index de toute la documentation

Contenu documente:
- 5 modules applicatifs
- 6 modules utilitaires
- 4 indices de vulnerabilite avec formules et seuils
- Conventions de code

3. Reorganisation de la documentation

Structure finale optimisee:
- Racine: README.md (mis a jour) + Instructions.md
- docs/: 11 documents organises par categorie

Fichiers deplaces vers docs/:
- README_connexion.md -> docs/CONNEXION.md
- GUIDE_LOGS.md -> docs/
- GUIDE_RUFF.md -> docs/
- RAPPORT_RUFF.md -> docs/
- RAPPORT_CORRECTIONS_AUTO.md -> docs/
- REFACTORING_REPORT.md -> docs/
- VERIFICATION_LOGS.md -> docs/
- TODO_IA_BATCH.md -> docs/

4. Ajout de docstrings

52 fonctions documentees en style Google (100%)
Documentation en francais avec Args, Returns, Raises

5. Corrections automatiques Ruff

Application de 347 corrections automatiques:
- Formatage du code (line-length: 120)
- Organisation des imports
- Simplifications syntaxiques
- Suppressions de code mort
- Ameliorations de performance

6. Configuration qualite du code

Nouveaux fichiers:
- pyproject.toml: configuration Ruff complete
- .vscode/settings.json: integration Ruff avec formatOnSave
- GUIDE_RUFF.md: documentation du linter
- GUIDE_LOGS.md: documentation du logging
- .gitignore: ajout htmlcov/ pour rapports de couverture

Etat final du projet:
- Linter: Ruff configure (15 regles actives)
- Tests: 67 tests (100% passent)
- Couverture de code: 16%
- Docstrings: 52/52 (100%)
- Documentation: 11 fichiers organises

Impact:
- Tests plus robustes et maintenables
- Documentation technique complete
- Meilleure organisation des fichiers
- Workflow optimise avec Ruff
- Code pret pour integration continue

References:
- Architecture: docs/ARCHITECTURE.md
- Guide modules: docs/MODULES.md
- Tests: tests/unit/
- Configuration: pyproject.toml

Co-Authored-By: Claude <noreply@anthropic.com>
2026-02-07 19:00:49 +01:00
..
2025-05-11 15:47:54 +02:00

Module Fiches

Ce module gère la consultation, l'affichage et la manipulation des fiches techniques dans l'application FabNum. Il permet aux utilisateurs de naviguer dans la documentation structurée des différents éléments de la chaîne de fabrication du numérique.

Structure du module

Le module fiches est organisé comme suit :

  • interface.py : Point d'entrée principal qui gère l'interface utilisateur des fiches
  • generer.py : Responsable de la génération et du rendu des fiches
  • utils/ : Contient des utilitaires spécifiques aux fiches
    • dynamic/ : Composants dynamiques pour le rendu des fiches
      • assemblage_fabrication/ : Traitement des opérations d'assemblage et de fabrication
      • indice/ : Calcul et affichage des différents indices (IHH, IVC, etc.)
      • minerai/ : Traitement spécifique aux fiches de minerais
      • utils/ : Utilitaires partagés pour le rendu dynamique
    • tickets/ : Gestion des tickets liés aux fiches

Fonctionnalités

Navigation et consultation

  • Affichage hiérarchique des catégories de fiches
  • Recherche de fiches par mots-clés
  • Visualisation des fiches au format Markdown avec rendu dynamique
  • Navigation entre fiches connexes

Traitement dynamique

  • Génération de tableaux de synthèse pour les indices de criticité
  • Rendu des graphiques et visualisations intégrées aux fiches
  • Traitement des blocs YAML pour les opérations spécifiques

Gestion des tickets

  • Création de tickets pour signaler des corrections ou des améliorations
  • Visualisation des tickets existants liés à une fiche
  • Interface structurée pour soumettre des contributions

Utilisation

  1. Accédez à l'onglet "Fiches" dans l'interface principale
  2. Explorez les catégories ou utilisez la recherche pour trouver une fiche
  3. Consultez le contenu de la fiche avec ses visualisations dynamiques
  4. Si nécessaire, utilisez l'option "Créer un ticket" pour proposer des modifications

Ce module est au cœur de la consultation documentaire de l'application, permettant de naviguer efficacement dans la base de connaissances sur la chaîne de fabrication du numérique.