Files
codexpi/docs/application-audit.md
CodexPi 995b17a6e2
Some checks are pending
Qualité / tests (push) Waiting to run
feat: publish CodexPi contest snapshot
2026-11-14 20:23:59 +01:00

13 KiB

Audit fonctionnel des 17 applications

Audit réalisé le 28 octobre 2026 à partir des sources, des dépôts Git, des tables SQLite et des routes réellement présentes. Un test enregistré dans project_test_runs n'est pas considéré comme un test métier lorsque le dépôt applicatif ne contient aucun code.

Projet Frontend Backend Base de données Fonctions réelles Tests Statut vérifié
PWA Factory Éditeur responsive intégré, aperçu API CRUD et export ZIP SQLite CodexPi Création, modèles dashboard/tâches/catalogue, couleurs, pages, composants, sauvegarde, réouverture, manifest, service worker, export autonome 4 tests métier passent, dont démarrage HTTP du ZIP TESTING jusqu'au déploiement de la route
Pi Doctor Module intégré et application React livrée sur codexpi/pi-doctor-v0 (a5dc22e) Ingestion, incidents, snapshots, plans protégés et collecteur hôte en lecture seule SQLite CodexPi + SQLite applicative/collecteur Collecte, anomalies, diagnostic expurgé, décisions persistantes et garde-fous réels ; service systemd non installé, Docker cible et liaison CodexPi réelle non validés 38 pytest + 3 frontend + 4 Playwright, build et HTTP loopback validés TESTING
LoutreOS Application React responsive livrée sur codexpi/loutre-os-v0 (2021e40) FastAPI et collecteur hôte non privilégié, instantanés validés, API protégée SQLite locale persistante CPU/RAM/température/disques réels du runtime, historique, alertes, inventaire et connecteurs dégradables ; NAS/Docker/Jellyfin réels non contactés 56 pytest + 7 Vitest + 2 Playwright, build, HTTP et redémarrage SQLite validés TESTING
Codex Commander Module intégré et application React/FastAPI non commitée dans son worktree Profils, missions, worker et file Codex SQLite CodexPi et SQLite applicative Lancement Codex intégré réel ; application isolée à consolider avec la session CodexPi et la validation navigateur Artefacts existants : 12 pytest et build réussi ; tests navigateur non concluants FUNCTIONAL_PARTIAL
Autonomous Dev Studio Formulaire/module intégré Planification et lancement Codex intégrés SQLite CodexPi Requête, plan, validation et session Codex réels ; aucune exécution utilisateur enregistrée, V0 complète non prouvée Tests d'acceptation dédiés absents FUNCTIONAL_PARTIAL
LoutreFinance Application React métier non commitée dans son worktree Django avec authentification, API et export SQLite locale persistante Comptes, opérations, catégories, budgets, récurrences, graphiques et CSV sont présents ; ouverture CodexPi et nouvelle revue restent à faire Artefacts existants : 17 tests Django, 2 parcours Chromium et build réussis TESTING
Smart Inventory React/Vite sur branche isolée, fiche générique dans CodexPi FastAPI sur branche codexpi/smart-inventory-v0 SQLite + pièces jointes CRUD, emplacements, documents, recherche, QR anonyme, CSV et sauvegarde existent dans le worktree ; aucune route CodexPi ne l'ouvre encore 23 tests backend passent, build frontend réussi FUNCTIONAL_PARTIAL
AutoCare React/Vite sur branche isolée, fiche générique dans CodexPi FastAPI sur branche codexpi/auto-care-v0 SQLite + documents Véhicule, kilométrage, entretiens, dépenses, carburant, contrats et rappels sont codés ; non intégré à l'URL applicative CodexPi 25 tests backend passent, build frontend réussi FUNCTIONAL_PARTIAL
NetworkGuardian React/Vite sur branche isolée, fiche générique dans CodexPi FastAPI sur branche codexpi/network-guardian-v0 SQLite Inventaire, sondes ICMP autorisées, historiques et alertes sont codés ; non intégré et connectivité réelle non revalidée ici 29 tests backend passent, build frontend réussi FUNCTIONAL_PARTIAL
Reverse Proxy Manager Application React métier non commitée dans son worktree FastAPI, parseur Apache et contrôles TLS SQLite locale Inventaire vhosts/domaines/ProxyPass, analyses et lecture seule existent ; accès QNAP réel et workflow d'application validée restent à configurer Artefacts existants : 25 pytest, 6 parcours Chromium et build réussis TESTING
LoutreBrain Application React métier non commitée dans son worktree FastAPI, extraction, SQLite FTS5 et recherche SQLite + index FTS5 Import, indexation, recherche textuelle, questions/réponses sourcées et historique existent ; recherche sémantique et ouverture CodexPi restent à consolider Artefacts existants : 18 pytest et build réussi ; navigateur à revalider TESTING
Knowledge Graph React/Vite et graphe SVG sur branche isolée, fiche générique dans CodexPi FastAPI sur branche codexpi/knowledge-graph-v0 SQLite Nœuds, relations, import JSON, recherche, filtres et impact sont codés ; profils uniquement fictifs et aucune ouverture CodexPi 13 tests backend passent, build frontend réussi FUNCTIONAL_PARTIAL
PrintPilot React/Vite sur branche isolée, fiche générique dans CodexPi FastAPI sur branche codexpi/print-pilot-v0 SQLite + fichiers Imprimantes, filaments, modèles 3MF/STL, travaux, coût, stocks et historique sont codés ; connecteur matériel absent et non intégré 37 tests backend passent, build frontend réussi FUNCTIONAL_PARTIAL
LoutreHome React/Vite sur branche isolée, fiche générique dans CodexPi FastAPI sur branche codexpi/loutre-home-v0 SQLite de démonstration Inventaire, historiques, scènes simulées et alertes locales en lecture seule ; aucun appareil/HA/MQTT réel et non intégré 14 tests backend passent, build frontend réussi FUNCTIONAL_PARTIAL
TripOrganizer React/Vite sur branche isolée, fiche générique dans CodexPi FastAPI sur branche codexpi/trip-organizer-v0 SQLite + copie hors ligne chiffrée Voyages, étapes, réservations, dépenses, checklist et cache hors ligne sont codés ; documents/carte absents et non intégré 17 tests backend passent, build frontend réussi FUNCTIONAL_PARTIAL
NASFLIX MediaHealth Écrans NASFLIX existants, pas d'application dédiée complète Audit Jellyfin/fichiers en lecture seule présent dans NASFLIX Stockages NASFLIX existants Détection partielle de manquants/doublons ; rapport dédié et historique d'analyses V0 non prouvés Tests NASFLIX connexes, pas d'acceptation MediaHealth complète FUNCTIONAL_PARTIAL
NASFLIX AI Media Curator Module Curator intégré à NASFLIX FastAPI, connecteur Jellyfin et moteur de recommandations SQLite par compte Catalogue, recherche, préférences et recommandations réels ; couverture métier et parcours complet non prouvés Aucun test Curator dédié trouvé FUNCTIONAL_PARTIAL

Constats structurants

  • Les 14 branches principales sous /home/config/LoutreProjects ne contenaient que .git et un commit d'initialisation. Huit worktrees Codex conservaient toutefois du code non fusionné : AutoCare, Knowledge Graph, LoutreHome, NetworkGuardian, PrintPilot, PWA Factory, Smart Inventory et TripOrganizer.
  • Une seconde inspection incluant les fichiers non suivis a retrouvé six livraisons supplémentaires dans les worktrees LoutreOS, LoutreFinance, LoutreBrain, Reverse Proxy Manager, Pi Doctor et Codex Commander. Leur absence de commit expliquait le faux diagnostic « dépôt vide ». Ces sources sont désormais préservées et placées dans la file de reprise, sans être déclarées READY_V0 avant revalidation et intégration.
  • Six badges READY_V0 étaient déclaratifs : PWA Factory, LoutreOS, Reverse Proxy Manager, LoutreHome, Knowledge Graph et TripOrganizer.
  • Les pages publiques générées par AppStoreService.application_page affichaient les fonctionnalités comme « planifiées » et les compteurs de tâches/tests ; elles ne constituaient pas les applications.
  • Les 102 exécutions enregistrées dans project_test_runs ne prouvent pas à elles seules une V0. Les huit suites backend des worktrees ont été relancées séparément : 174 tests réussis au total, ainsi que leurs huit builds frontend. Leur absence d'intégration et d'URL CodexPi empêche néanmoins READY_V0.
  • L'orchestrateur ne promeut plus un projet en READY_V0 sur la seule présence d'une commande réussie. Une commande réussie place au maximum le projet en TESTING.

Critère de promotion

READY_V0 reste réservé à une vérification d'acceptation séparée couvrant l'interface, les opérations métier principales, la persistance, le lien frontend/backend, les erreurs, le démarrage, l'URL de prévisualisation et l'absence de boutons essentiels fictifs.

Suivi d'exécution

Ce tableau ne contient aucun pourcentage. « File » désigne la tâche persistante CodexPi créée le 28 octobre 2026. LoutreOS (2021e40) et Pi Doctor (a5dc22e) ont terminé leur session ; Codex Commander est l'unique mission active, les suivantes restent sérialisées.

Projet Fonctionnalités prouvées Tests prouvés ou conservés Intégration Statut Prochaine action
LoutreOS Collecteur hôte, métriques, historique SQLite, alertes, inventaire et connecteurs dégradables 56 backend + 7 frontend + 2 navigateur ; build/HTTP/persistance validés Branche applicative et prévisualisation loopback validées ; ouverture CodexPi à raccorder avant déploiement TESTING Valider les connecteurs réels en recette privée puis intégrer la route de lancement
NetworkGuardian Inventaire, sondes autorisées, historique, alertes 29 backend + build relancés Fiche seulement FUNCTIONAL_PARTIAL Reprendre la tâche en pause et publier une prévisualisation interne
Reverse Proxy Manager Parseur Apache, vhosts, ProxyPass, TLS en lecture seule 25 backend + 6 navigateur conservés Fiche seulement TESTING Revalider puis configurer le connecteur QNAP avec validation utilisateur
Codex Commander Profils, missions, file et sessions Codex 12 backend + build conservés ; navigateur incomplet Module intégré partiel FUNCTIONAL_PARTIAL Unifier l'application isolée et le module CodexPi
Autonomous Dev Studio Spécification, plan, approbation, création de projet et tâche 10 tests intégrés relancés Module intégré FUNCTIONAL_PARTIAL Exécuter un parcours complet jusqu'à la prévisualisation
LoutreBrain Import, extraction, FTS5, recherche et réponses sourcées 18 backend + build conservés Fiche seulement TESTING Revalider, ajouter l'indexation CodexPi et intégrer l'ouverture
LoutreFinance Comptes, opérations, budgets, récurrences, graphiques, CSV 17 Django + 2 navigateur conservés Fiche seulement TESTING Revalider la persistance puis intégrer l'URL CodexPi
PrintPilot Imprimantes, filaments, modèles, travaux, coûts et stocks 37 backend + build relancés Fiche seulement FUNCTIONAL_PARTIAL Reprendre le worktree et intégrer une prévisualisation
LoutreHome Pièces, appareils, scènes simulées, événements 14 backend + build relancés Fiche seulement FUNCTIONAL_PARTIAL Compléter capteurs/automatisations et expliciter les connecteurs simulés
AutoCare Véhicules, kilométrage, entretiens, dépenses et rappels 25 backend + build relancés Fiche seulement FUNCTIONAL_PARTIAL Reprendre le worktree et intégrer une prévisualisation
Smart Inventory Objets, emplacements, documents, recherche, QR et CSV 23 backend + build relancés Fiche seulement FUNCTIONAL_PARTIAL Reprendre le worktree et intégrer une prévisualisation
Knowledge Graph Nœuds, relations, graphe, recherche, filtres, import 13 backend + build relancés Fiche seulement FUNCTIONAL_PARTIAL Ajouter le lien LoutreBrain et intégrer une prévisualisation
TripOrganizer Voyages, étapes, réservations, dépenses et checklist 17 backend + build relancés Fiche seulement FUNCTIONAL_PARTIAL Compléter documents/carte et intégrer une prévisualisation
PWA Factory Éditeur, modèles, persistance, aperçu, manifest, SW et ZIP autonome 4 métier + suite globale relancés Route CodexPi prête dans le commit TESTING Déployer en environnement de recette après autorisation, puis tester sur iPhone
NASFLIX MediaHealth Lecture/audit partiel Jellyfin et fichiers Tests connexes seulement NASFLIX partiel FUNCTIONAL_PARTIAL Reprendre la tâche en pause sans aucune suppression de média
NASFLIX AI Media Curator Catalogue, préférences et recommandations Aucune acceptation complète retrouvée NASFLIX partiel FUNCTIONAL_PARTIAL Reprendre la tâche en pause et ajouter l'historique testé
Pi Doctor Collecte, snapshots, incidents, plans immuables, diagnostic et décision persistante 38 backend + 3 frontend + 4 navigateur ; build/HTTP validés Commit et preview loopback disponibles ; service hôte/Docker et ingestion CodexPi réels non validés TESTING Recette hôte privée après autorisation, puis test du collecteur systemd et de l'ingestion réelle