Thème
Documentation — index
Point d'entrée de la documentation du Superviseur. Tout est agrégé par le portail interne (VitePress + DocFX) publié sur Cloudflare Pages. Les sources vivent dans ce dépôt ; les pages du portail (site/guide/*.md) ne portent pas de contenu propre, elles incluent les sources listées ci-dessous. Toute modification se fait dans la source, jamais dans la page du portail.
Selon le besoin
| Objectif | Document de référence |
|---|---|
| Utilisation quotidienne (opérateur, administrateur) | notices/fr/notice_utilisation.md — anglais |
| Installation et configuration d'un site (installateur, rôle SuperAdmin) | notices/fr/notice_installateur.md — anglais |
| Rôles et droits d'accès | README — Sécurité et rôles |
| Activation d'un poste, émission des licences | ../dotnet/license-generator/README-licences.md |
| Exploitation du service (base de données, sauvegarde, journaux) | project/NOTICE_TECHNIQUE.md |
| Dimensionnement du poste (stockage, matériel, PostgreSQL) | project/DIMENSIONNEMENT.md |
| Architecture logicielle (composants, couches) | project/ARCHITECTURE.md |
| Registres Modbus et divergences firmware | project/MODBUS.md |
| États système, acquittement, groupement des incidents | project/PLAN-ETATS-EXPLOITATION.md |
| Emplacement des profils et objets métier dans le code | project/PROFILS-MODBUS.md |
| Construction de l'installateur | ../deployment/README.md |
| Signalement d'une vulnérabilité | SECURITY.md |
| Dossier de conformité CRA | cra/README.md |
| Référence des API (C#, TypeScript) | Portail — générée depuis le code |
Documents à diffusion restreinte
Ils figurent sur le portail interne mais ne doivent pas sortir de l'organisation.
| Document | Motif |
|---|---|
| cra/07-exigences-securite-fournisseur-firmware.md | Destiné au fabricant du firmware, dans le cadre de la relation fournisseur |
| project/COMPENSATIONS-MODBUS.md | Décrit des faiblesses de l'interface des centrales |
| project/REFLEXIONS.md | Support de décision : problématiques ouvertes, pistes non tranchées |
Le dossier CRA
cra/ est la source unique sur le sujet : ce que le règlement exige, ce qui est en place et où le vérifier dans le code, les risques acceptés, les pistes ouvertes, et le reste à faire avant la mise sur le marché (README du dossier). Seul le document 07, destiné au fabricant du firmware, ne sort pas de l'organisation.
Organisation des dossiers
notices/— manuels destinés aux utilisateurs (français et anglais) :notice_utilisation.md(opérateur, administrateur) etnotice_installateur.md(installateur, configurateur, agissant sous le rôle SuperAdmin).project/— référence technique et notes d'analyse : architecture, exploitation, dimensionnement, registres et profils Modbus, états d'exploitation, pistes ouvertes.cra/— dossier de conformité CRA, fichiers numérotés 00 à 07.site/— portail VitePress, qui agrège les guides et les références d'API.api-csharp/— configuration DocFX pour la référence de l'API C#.- Documentation par module : backend · frontend · client · gestionnaire de service · simulateur · shared · TsEnumGenerator · tests .NET · scripts · déploiement.
Construire le portail
powershell
cd docs && npm run docs:dev # aperçu à chaud des guides
.\docs\generate-docs.ps1 -Serve # pipeline complet (TypeDoc + VitePress + DocFX)
.\docs\generate-docs.ps1 -SkipBackend -Serve # sans DocFX, plus rapideLa sortie est produite dans dist-docs/, déployée sur Cloudflare Pages (projet superviseur-docs, branche de production main).
L'ordre des étapes est contraignant : DocFX passe après VitePress. Un npm run docs:build lancé seul vide dist-docs/backend/, où DocFX écrit la référence C# ; cleanOutDir: false ne protège pas ce dossier. Après toute modification des guides, régénérer par generate-docs.ps1 — au besoin -SkipFrontend -SkipPortal pour ne refaire que DocFX — et vérifier que dist-docs/backend/ contient près de 700 fichiers avant de déployer.
Les liens du portail portent l'extension .html. cleanUrls est désactivé : le routeur ne reconnaît que cette forme. Une cible sans extension est résolue au premier chargement par l'hébergeur, puis échoue en navigation interne, ce qui donne un portail qui répond une fois sur deux. La réécriture des liens des sources (config.ts) applique cette règle. La référence C#, produite par DocFX, échappe au routeur : son entrée de navigation s'ouvre dans un onglet distinct pour forcer une navigation complète.