Audit de la documentation

Informations obsolètes et héritées

En bref : L'abandon du plan de POC et l'observation de l'instance CRISalid sont propagés dans les pages publiées, et chaque lien interne, ancre comprise, mène à une page qui existe. Le registre des chiffres clés empêche le retour des formulations retirées. Le point le plus grave est hors des pages : deux anciens index de recherche, versionnés dans public/pagefind/ et docs/public/pagefind/, contiennent des formulations que le registre interdit pour les failles de LPI. Le premier est copié dans chaque construction du site. Restent des dates d'état sur l'accueil et dans les pages LPI, trois libellés de liens qui nomment des pages disparues, deux autres imprécis, des faits à échéance qui se périment tout au long de novembre, et des fichiers de pilotage (CONTEXT.md surtout) qui décrivent encore d'anciennes pages et quatre décisions au lieu de cinq.

Chronologie

Les dates ci-dessous sont des faits. Les lignes à partir de la semaine du 2 novembre sont des échéances : chaque phrase du site qui les annonce au futur se périme dès que la date est passée.

Les faits datés du dossier et les échéances à venir
Chargement du schéma pédagogique...
Sources : inventaire (sources-et-preuves.md:51), plan archivé (archives/plan-du-poc-abandonne.mdx:6), instance (01-donnees-observees.mdx:4), revérification LPI (grille-evaluation.mdx:16), restructuration des scénarios (CONTEXT.md:41), réunion des directions d'unité (D8 deck.md:16), calendrier (00-feuille-de-route.mdx:21-36).

Priorité 1 : un ancien index de recherche publié avec le site

ConstatPreuve
Le dossier public/pagefind/ est versionné (71 fichiers). Il contient un index de recherche de 34 pages, toutes sous l'ancienne arborescence (/03-audit-technique/…, /04-questions-lpi/…, anciens scénarios lettrés)git ls-files public/pagefind ; public/pagefind/pagefind-entry.json (page_count: 34) ; dernier commit aef8cac6
La construction copie ce dossier dans dist/pagefind/, à côté du nouvel index. Les 37 anciens fragments sont donc servis avec le site, à une adresse qui se devinedist/pagefind/fragment/ : 126 fragments, dont les 37 de public/, identiques octet pour octet ; l'index actif est le neuf (dist/pagefind/pagefind-entry.json, page_count: 91)
16 des 37 anciens fragments contiennent des motifs que le registre interdit. 21 occurrences, dans 7 fragments, relèvent de la règle « pas de détail exploitable » sur les failles de LPI, dont le détail est réservé au RSSI et à la DPOMotifs de scripts/chiffres-cles.json, appliqués aux fragments décompressés ; aucun détail n'est reproduit ici
Un second index périmé, plus ancien, est versionné dans docs/public/pagefind/ (23 fichiers, 8 fragments). Un de ses fragments porte 15 occurrences relevant de la même règlegit ls-files docs/public ; ce dossier n'est pas dans les fichiers publiés par recit.config.ts:60, mais il est dans le dépôt
Aucun contrôle ne regarde ces fichiers : check-dossier saute les dossiers public (check-dossier.mjs:16), check-routes saute pagefind (check-routes.mjs:46)node scripts/check-dossier.mjs passe sans écart

La recherche du site n'utilise pas ces fichiers, mais ils restent publics par leur adresse et dans l'historique Git. Il faut retirer public/pagefind/ et docs/public/pagefind/ du dépôt, puis vérifier que la construction suivante ne publie plus que l'index qu'elle régénère.

Priorité 2 : dates d'état dans les pages publiées

Pour les failles, la grille des questions emploie une date de vérification : « Revérifiées le 30 octobre 2026 : toujours ouvertes sur le code le plus récent » (grille-evaluation.mdx:16). Les autres pages tournent la même date en date d'état. Ces phrases se lisent comme un état présent et vieillissent sans que le texte change.

OùFormule périméeCe qu'il faut écrire
Accueil, l.28« Aucun prérequis n'est levé au 30 octobre. »Supprimer la phrase, comme dans la feuille de route : sa liste à cocher porte l'information (00-feuille-de-route.mdx:44-50)
Accueil, l.7« Audit au 30 octobre 2026 » en tête de pageRetirer la date d'état ; la date de dernière modification est déjà affichée sous chaque page (recit.config.ts:63, showLastModified: true)
Accueil l.12, avis l.8 et l.33, risques l.7, 16 et 17, sécurité l.7, 21 et 22« toujours ouverte(s) au 30 octobre 2026 »« revérifiée(s) le 30 octobre 2026 : toujours ouverte(s) », sur le modèle de Q1
Grille d'arbitrage, description (l.4)« l'état des preuves au 30 octobre 2026 »« les preuves disponibles », ou la date des preuves comme fait
Grille d'arbitrage, En bref (l.9)« Au 30 octobre 2026, les options LPI ont toujours 0 en sécurité »« Failles revérifiées le 30 octobre 2026 : toujours ouvertes », puis la note de 0 en sécurité tant qu'elles le restent
Partie 2, l.47Colonne « État au 30 octobre 2026 »Colonne « État » ; la ligne SoVisu+ (l.50) dépend en plus du webinaire du 17 novembre (voir plus bas)
Ce que montre l'instance, l.14« Jusqu'au 29 octobre, la section reposait sur… »Phrase d'historique du dossier : la remplacer par la date d'observation, déjà donnée l.20

Aucune règle du registre ne détecte ces formules : scripts/chiffres-cles.json ne cite le mois d'octobre que dans ses valeurs (l.26, 45, 96), jamais dans ses motifs interdits. Un motif au 3[0-1] octobre|au 29 octobre empêcherait leur retour dans les pages publiées.

Priorité 3 : libellés de liens périmés ou imprécis

Les liens fonctionnent. Trois libellés annoncent une page qui n'existe plus (plateformes nationales, volumétrie, besoin initial). Deux autres sont seulement imprécis : la page visée existe, mais le libellé ne la nomme pas exactement (glossaire, accueil).

OùLibelléCible réelle
Plateformes nationales, l.80« scénario d'export statique »Extrait CRISalid et comparatif du POC ; l'ancienne page est redirigée (generate-navigation.mjs:665)
Volumétrie, l.18« Complétude et fraîcheur »Les données observées ; redirection generate-navigation.mjs:662
Besoin initial, l.45« le graphe réel »Même page ; redirection generate-navigation.mjs:661
Glossaire, l.11« fiches de sous-projets »Carte des sous-projets. Imprécis : les cinq fiches existent (02-sous-projets/coeur/), mais le lien mène à la carte
Accueil, l.46« Questions à LPI »Imprécis : la page existe, sous le titre « Questions à LPI et à CRISalid » (grille-evaluation.mdx:3) ; même libellé dans generate-navigation.mjs:157 et dans le deck D2 (deck.md:561)

Le schéma d'architecture recommandée (l.69) écrit encore « Frontend public statique ou ISR ». Le deck D3 demande de dire « vitrine synchronisée », pas « site statique » (03-architecture-crisalid/deck.md:592).

Faits à échéance

Ces phrases sont justes tant que la date n'est pas passée, mais elles en parlent au futur. Il faudra les reprendre dès que la date sera passée ou le prérequis levé.

ÉchéanceOù elle est écrite au futur
Prérequis à lever la semaine du 2 novembreAccueil l.33 ; feuille de route l.44-50 ; D6 deck.md:37 et :460 (« cette semaine »), :505, :564
Démarrage du POC le 9 novembreExtrait et comparatif l.10 ; D6 deck.md:177, :594, :605
Réunion des directions d'unité du 12 novembreD8 deck.md:16 ; la note :311 situe le webinaire SoVisu+ « après cette réunion »
Webinaire SoVisu+ du 17 novembrePartie 2 l.18 et 50 ; SoVisu+ l.12 et 55 ; Ce qui n'est pas prouvé l.33 ; Comprendre CRISalid l.62 ; plateformes nationales l.78 ; D6 deck.md:472, D7 deck.md:295, D8 deck.md:311

Après le webinaire, le statut « Déclaré » des fonctions de correction et de fusion de SoVisu+ doit être revu, ainsi que le prérequis correspondant de la Partie 2.

Decks : des dates d'état revendiquées, et aucun garde-fou

Les decks se donnent pour convention de dater les faits qui dépendent d'une vérification (D2 deck.md:25, D8 deck.md:25). Plusieurs passages emploient pourtant ces dates comme des dates d'état :

  • D6 : deck.md:21 et :564 (prérequis non levés) ;
  • D8 : deck.md:25 (prérequis) et :423 (responsable métier « pas encore nommé ») ;
  • D2 : deck.md:253 et :378 (failles « toujours ouvertes au… »), :295 (note provisoire) ;
  • D3 : deck.md:557 (failles) et :797 (« aucune n'est levée aujourd'hui ») ;
  • D7 : deck.md:196 (failles « restaient ouvertes » au 30 octobre).

Garder ou retirer ces dates relève de l'auteur. En revanche, docs/05-deck/ est exempté du registre (chiffres-cles.json, clé exemptions) : seules les deux règles de sécurité marquées partout s'y appliquent, et rien n'empêche une autre formulation retirée d'y revenir. Une application manuelle de tous les motifs du registre aux cinq sources deck.md et au catalogue ne trouve aucun motif interdit.

Fichiers de pilotage, hors site

Ces fichiers ne sont pas publiés, mais ils servent de point de reprise. Ils décrivent encore des pages supprimées et des décisions remplacées.

FichierCe qui est fauxPreuve
CONTEXT.md:50 et :145« Les quatre décisions immédiates », dont « Fermer (ou non) la porte au collaboratif en phase 1 »L'accueil en demande cinq, dont le report de la contribution des chercheurs et la présentation au consortium (index.mdx:30-35)
CONTEXT.md:149Section LPI décrite avec « fiche d'identité, produit et usages, […] chronologie des contributions, forces et limites » et « l'analyse préliminaire »Ces pages sont redirigées (generate-navigation.mjs:724-728) ; docs/02-analyse-lpi/ ne compte plus que deux pages à sa racine
CONTEXT.md:153Prochaines étapes : « démarche, actions réalisables sans LPI »La section compte la feuille de route, la grille des questions et quatre plans de tests (docs/04-prochaines-etapes/)
CONTEXT.md:65-66« toujours ouverte au 30 octobre 2026 »Même date d'état que dans les pages LPI (priorité 2)
CONTEXT.md:78« une fiche par dépôt », « les flux de bout en bout et une trajectoire de POC »Cinq fiches restent (02-sous-projets/coeur/) ; flux redirigés (generate-navigation.mjs:670) ; trajectoire archivée (archives/plan-du-poc-abandonne.mdx)
CONTEXT.md:206« Chaque fiche de sous-projet est adossée à son script »5 fiches pour 29 scripts check-crisalid-*
CONTEXT.md:214PLAN_CRISALID.mdx « supprimé »Il a été déplacé à la racine sous le nom PLAN_CRISALID.md (git log : renommage 996a75b6), comme l'indique README.md:52
CONTEXT.md:137 et :216Le même plan est « chantier ouvert » (l.137) et « appliqué sans casser d'URL », avec une page « hors périmètre de décision » et des préfixes « Preuve · » (l.216)La page est supprimée et redirigée (generate-navigation.mjs:678) ; il en reste une section (carte-des-sous-projets.mdx:137) ; aucun préfixe « Preuve · » ne subsiste
PLAN_COMPREHENSION_CRISALID.md:3-4Statut à la fois « appliqué » et « attend un arbitrage explicite avant d'être lancé »Les deux lignes se contredisent
PLAN_COMPREHENSION_CRISALID.md:15-3459 pages, 53 025 mots, sous-dossier 05-trajectoire-poc-saclay/La section compte 35 fichiers ; le sous-dossier n'existe plus
PLAN_COMPREHENSION_CRISALID.md:23« la liste des composants déployés reste à confirmer », « on ne sait pas s'il tourne »Démenti par l'instance : les composants tournent ensemble (00-ce-que-linstance-demontre.mdx:46)
context-audit.mdIndex « généré le 2026-10-28 » : 109 pages ; 45 des 103 chemins distincts qu'il cite n'existent plus (anciens scénarios lettrés, anciennes pages LPI et CRISalid)Aucun script de scripts/ ne le produit, alors que CONTEXT.md:140 le dit « généré »
README.md:28Page de référence 05-trajectoire-poc-saclay/scenario-export-statiqueRedirigée (generate-navigation.mjs:665)
README.md:38« Les lettres A/B/C désignent uniquement les scénarios de besoin »Les scénarios lettrés sont supprimés et interdits par le registre (chiffres-cles.json, entrée « Scénarios : deux parties »)
plan-context-prochain-etape.md:19-23Decks « D1 à D8 » et commandes npm runCinq decks publiés (05-deck/catalogue.mdx:17-24) ; le dépôt utilise pnpm (README.md:17)

Les volumes de CONTEXT.md (pages, mots) restent saisis à la main : aucun script ne les produit.

Quatre dossiers vides subsistent dans docs/05-deck/ (01-direction-restitution-audit, 04-securite-rgpd, 05-valeur-impact, 06-lancement-maquette). Git ne les suit pas et le site ne les publie pas, mais le dernier porte un vocabulaire retiré (« maquette », chiffres-cles.json, entrée « Vocabulaire de la décision »). Les supprimer en local suffit.

Ce qui tient

Ces points ne sont plus des constats, mais le relecteur doit les connaître.

  • Instance et abandon du POC : le registre interdit les anciennes formulations sur l'instance (chiffres-cles.json, entrée « État de l'instance CRISalid de Paris-Saclay ») et node scripts/check-dossier.mjs passe sans écart.
  • Plan du POC abandonné : archivé dans archives/, hors des fichiers publiés (recit.config.ts:60), avec une redirection de l'ancienne adresse vers la feuille de route (generate-navigation.mjs:723).
  • Liens internes : dans les pages et dans les sources des decks, chaque lien interne pointe vers une page existante, et chaque ancre vers un titre existant. Aucun ne passe par une redirection.
  • Date des pages : chaque page affiche sa date de dernière modification, tirée de Git (recit.config.ts:63).

Recommandations

  1. Retirer public/pagefind/ et docs/public/pagefind/ du dépôt, puis contrôler les fragments servis par la construction suivante. Étendre le contrôle des motifs interdits aux fichiers publiés, pas seulement aux sources.
  2. Remplacer les dates d'état des pages publiées (priorité 2), en commençant par l'accueil. Ajouter au registre un motif qui les détecte.
  3. Corriger les trois libellés qui nomment des pages disparues et préciser les deux autres (priorité 3) et le libellé « statique » du schéma d'architecture.
  4. Reprendre les faits à échéance au fil des dates : fin de la semaine du 2 novembre, 9, 12 et 17 novembre.
  5. Remettre à jour les fichiers de pilotage, en commençant par les décisions et la description des sections dans CONTEXT.md, puis supprimer context-audit.md ou écrire le script qui le génère, avec les volumes de CONTEXT.md.
Last modified on