0.1.1-alpha.4

This commit is contained in:
2026-09-27 11:33:12 +02:00
parent 56e3d37879
commit 89b8ea88c1
7 changed files with 587 additions and 12 deletions

View File

@@ -1,5 +1,5 @@
<!-- file: docs/plans/007-V0_1_1_WEB_FRONTEND_FOUNDATION_PLAN.md -->
<!-- version: 6 -->
<!-- version: 7 -->
# Plan 0.1.1 — fondation frontend Web contrôlée
@@ -385,15 +385,29 @@ La gate spécifique n'a toutefois pas atteint son message final : le littéral P
### alpha.3.fix.2 — correction de la gate des déclarations de types
Corriger uniquement la syntaxe de validation de `alpha.3.fix.1`, sans modifier les règles TypeScript/package, le guide `008-WEB_TYPESCRIPT_PACKAGE.md` ni les templates JSON.
Statut opérateur : **PASS**.
La gate corrigée doit reconfirmer le `FAIL` historique de `alpha.3.fix.1`, les règles de découverte des types externes et la séparation application/bibliothèque, puis rejouer les tests et audits documentaires. Toutes les assertions contenant des apostrophes doivent utiliser des littéraux Python syntaxiquement sûrs.
La gate corrigée atteint son message final, reconfirme le `FAIL` historique de `alpha.3.fix.1`, les règles de découverte des types externes et la séparation application/bibliothèque. Les `48/48` tests et les trois audits Markdown passent, et le scope Git reste limité à `VERSION`, au plan et au delta de correction.
Aucune règle TypeScript/package ni aucun template n'a été modifié par le fix. La trajectoire reprend donc normalement avec Vite.
### alpha.4 — Vite, dev server et outputs
Matérialiser l'owner Vite et le contrat de séparation entre sources, cache, outputs de production et assets copiés. Les sorties de build doivent avoir un statut explicite de versionnement/ignorance et éviter de polluer l'arborescence source lorsque le projet peut raisonnablement les externaliser.
Matérialiser le contrat Vite sans créer un `vite.config.ts` universel artificiel : les chemins `root`, `cacheDir`, `build.outDir`, la valeur `base`, les ports, aliases, plugins et intégrations de host dépendent du layout réel du projet.
Les paramètres de port, host, aliases et intégrations particulières restent locaux sauf preuve générique contraire.
Le profil doit en revanche fixer les responsabilités génériques suivantes :
- distinguer sources versionnées, cache reproductible et outputs de build générés ;
- garder cache et outputs hors Git, en les externalisant hors de l'arborescence source lorsque cela reste raisonnable ;
- considérer `publicDir` comme une source statique optionnelle et les copies présentes dans `outDir` comme générées ;
- n'utiliser `build.emptyOutDir = true` que lorsque `outDir` est un répertoire dédié et possédé sans ambiguïté par le build ;
- garder le dev server local/loopback par défaut et n'élargir l'écoute réseau que pour un besoin explicite ;
- rendre port + `strictPort` déterministes lorsqu'un host ou un smoke dépend d'une URL fixe ;
- éviter les ouvertures globales de `allowedHosts` ou CORS sans justification ;
- réserver `vite preview` à la prévisualisation locale d'un build et non à un serveur de production ;
- ajouter Vite au manifest réel comme outil de développement et exposer `dev` / `build` / `preview` seulement lorsqu'ils correspondent au workflow réel.
Les paramètres de port, host, `base`, aliases, plugins, découpage d'assets et intégrations particulières restent locaux sauf preuve générique contraire. TypeScript reste validé séparément ; CSS/Sass reste réservé à `alpha.5`.
### alpha.5 — CSS/Sass et validation frontend