Files
logisticsAPI/memory-bank/activeContext.md
Marvin 657c5ad5e3 Update project dependencies and enhance documentation
- Added `barryvdh/laravel-dompdf` to `composer.json` for PDF generation capabilities.
- Updated `boost.json` to include `tailwindcss-development` in skills.
- Modified `package.json` and `package-lock.json` to upgrade Tailwind CSS and related packages.
- Improved README.md for clarity and corrected French language errors.
- Created design system documentation for Filament components.
- Added new Filament pages for Dashboard and Documentation with dynamic content loading.
- Enhanced TablesExplorer functionality with improved table and column management.
2026-02-20 14:16:24 +01:00

6.0 KiB

Active Context

Dernière mise à jour : 2026-02-20

Travail en cours

Aucun travail en cours.

Décisions récentes

  • Convention d'écriture avec accents (2026-02-20) : Tous les contenus rédigés en français (documentation, memory bank, règles Cursor) doivent utiliser les accents appropriés. La documentation API et le memory bank ont été entièrement réécrits avec les accents.
  • Page Documentation ajoutée (2026-02-20) : Nouvelle page Filament Documentation qui affiche le fichier markdown documentation/documentation_api_logistics.md converti en HTML via Str::markdown(). Actions d'en-tête : télécharger en PDF et ouvrir dans un nouvel onglet.
  • Styles prose personnalisés (2026-02-20) : Le thème CSS Filament (theme.css) a été enrichi avec des styles .documentation-prose dédiés au rendu du markdown en dark mode : hiérarchie de titres avec bordures, tableaux avec bordures et en-têtes stylisés, blocs de code avec fond sombre, code inline coloré, liens bleus, listes à marqueurs, séparateurs visibles.
  • Plugin @tailwindcss/typography (2026-02-20) : Ajout du plugin via @plugin "@tailwindcss/typography" dans le thème Filament pour activer les classes prose.
  • Export PDF de la documentation (2026-02-20) : Route documentation.download-pdf dans routes/web.php utilisant barryvdh/laravel-dompdf pour générer un PDF téléchargeable de la documentation.
  • Règle update-documentation (2026-02-20) : Nouvelle règle Cursor .cursor/rules/update-documentation.mdc définissant la procédure de mise à jour de la documentation quand l'utilisateur dit "update documentation".
  • Filament v5 sans authentification : Le AdminPanelProvider a été configuré sans ->login() et sans authMiddleware pour permettre un accès libre au dashboard.
  • Pages personnalisées plutôt que Resources : L'application interroge une API externe, il n'y a pas de modèles Eloquent à gérer en CRUD.
  • MySQL au lieu de SQLite : Choix de l'utilisateur pour la base de données.
  • LogisticsService : Toutes les interactions avec l'API sont centralisées dans un seul service.
  • Heroicon enum : Filament v5 impose l'utilisation de BackedEnum pour $navigationIcon au lieu de strings.
  • $view non-static : Filament v5 a changé $view de static à instance property.
  • Timeout et retry configurables : Les paramètres sont dans config/logistics.php et pilotés par .env.
  • LogisticsApiException : Exception dédiée créée pour distinguer les erreurs de connexion des erreurs de requête génériques.
  • Logging des échecs : Les requêtes échouées sont aussi enregistrées dans api_request_logs avec response_status = 0.
  • Système de design unifié (2026-02-20) : Création de 10 composants Blade réutilisables dans resources/views/components/logistics/ et d'une convention documentée dans .cursor/rules/design-system.mdc.
  • Thème Filament personnalisé (2026-02-20) : Création de resources/css/filament/admin/theme.css enregistré dans AdminPanelProvider via ->viteTheme().
  • TablesExplorer amélioré (2026-02-20) : Remplacement de wire:then (invalide) par une méthode selectTable(). Ajout de la déduplication des colonnes, d'un filtre de tables, de la propriété computed filteredTables, des labels de type (getDataTypeLabel), et du stockage des métadonnées.
  • Connectivité API résolue (2026-02-20) : Le serveur API est accessible via http://tse-10-test.esi.local (réseau interne). Le timeout a été augmenté à 300s dans .env.

Changements récents (2026-02-20, session documentation)

  • Page Filament Documentation créée (app/Filament/Pages/Documentation.php).
  • Vue Blade resources/views/filament/pages/documentation.blade.php créée.
  • Documentation markdown réécrite intégralement avec accents français.
  • Styles CSS .documentation-prose ajoutés dans theme.css (titres, tableaux, code, liens, listes).
  • Plugin @tailwindcss/typography activé dans le thème Filament.
  • Route PDF (documentation.download-pdf) ajoutée dans routes/web.php.
  • Template PDF (resources/views/pdf/documentation.blade.php) créé.
  • 5 tests Pest créés pour la page Documentation (tests/Feature/DocumentationTest.php).
  • Règle Cursor update-documentation.mdc créée.
  • Memory bank entièrement réécrit avec accents français.
  • Total : 61 tests passent (165 assertions).

Historique

2026-02-20 (session design)

  • 10 composants Blade créés dans resources/views/components/logistics/.
  • Convention de design documentée dans .cursor/rules/design-system.mdc.
  • 5 pages Filament refactorisées pour utiliser les composants du système de design.
  • TablesExplorer.php amélioré : selectTable(), déduplication, filtre, computed property, métadonnées, labels de types.
  • Thème Filament personnalisé créé (resources/css/filament/admin/theme.css).
  • AdminPanelProvider.php mis à jour avec ->viteTheme().
  • 6 tests Pest créés pour TablesExplorer (Livewire).

2026-02-20 (session robustesse)

  • LogisticsService mis à jour : timeout, connectTimeout, retry, gestion d'erreur avec LogisticsApiException.
  • LogisticsApiException créée dans app/Exceptions/.
  • config/logistics.php étendu avec timeout et retry.
  • .env et .env.example complétés avec les nouvelles variables.
  • Les 5 pages Filament mises à jour pour attraper LogisticsApiException.
  • Tests passés de 8 à 12.

2026-02-19

  • Installation de Filament v5.0.0 (31 packages ajoutés).
  • 5 pages Filament créées : TablesExplorer, Articles, Documents, Journaux, Tiers.
  • LogisticsService créé avec 17 endpoints.
  • Migration api_request_logs créée.
  • 8 tests Pest écrits et validés.

Prochaines étapes

  • Tester toutes les pages avec de vraies données API et vérifier le rendu visuel.
  • Éventuellement : ajouter des pages pour les endpoints d'écriture (document_add, document_mod).
  • Éventuellement : ajouter de la pagination ou du tri côté client pour les grands tableaux.
  • Éventuellement : ajouter une page de consultation des logs API.