0.1.1-alpha.3.fix.1
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/plans/007-V0_1_1_WEB_FRONTEND_FOUNDATION_PLAN.md -->
|
||||
<!-- version: 4 -->
|
||||
<!-- version: 5 -->
|
||||
|
||||
# Plan 0.1.1 — fondation frontend Web contrôlée
|
||||
|
||||
@@ -218,6 +218,18 @@ Aucun lockfile Node n'est versionné dans l'archive. Cette politique est un choi
|
||||
|
||||
L'absence actuelle de lockfiles dans Games devient donc une décision à réexaminer pendant l'adoption `0.1.5` : les packages applicatifs pourront `ADOPT` la recommandation en versionnant leur lockfile, ou documenter un `OVERRIDE` s'ils conservent volontairement une autre politique.
|
||||
|
||||
Le corpus Games exerce également déjà des dépendances de déclarations TypeScript :
|
||||
|
||||
```text
|
||||
Web/game-snake-poc @types/bootstrap + @types/node
|
||||
Web/game-realtime-webtransport-browser-smoke @types/node
|
||||
crates/apps/game-snake-poc-tauri @types/node
|
||||
```
|
||||
|
||||
KSP `0.3.17` corrobore la même pratique sur ses applications Tauri, qui utilisent `@types/bootstrap` et `@types/node` en `devDependencies`. Cette répétition justifie une règle générique de découverte des déclarations nécessaires, mais ne justifie pas d'imposer ces deux packages à tous les frontends.
|
||||
|
||||
La règle retenue est donc : vérifier d'abord les types embarqués par le package, puis rechercher un `@types/...` seulement lorsqu'il est réellement nécessaire. Pour une application privée, ces déclarations de développement appartiennent normalement à `devDependencies`; une bibliothèque publiée doit en revanche conserver disponibles aux consommateurs les types requis par ses déclarations publiques.
|
||||
|
||||
### Relation avec WASM et host
|
||||
|
||||
Deux packages Games chaînent actuellement des commandes WASM avant Vite. Cela prouve une intégration locale, mais ne justifie pas de faire du WASM une responsabilité du futur owner Vite ou TypeScript.
|
||||
@@ -355,11 +367,19 @@ Le correctif a conservé le `FAIL` historique de `alpha.2`, reconfirmé les quat
|
||||
|
||||
### alpha.3 — TypeScript et écosystème de package
|
||||
|
||||
Matérialiser les règles et artefacts réutilisables pour TypeScript, manifest, scripts de package et sélection du package manager.
|
||||
Statut opérateur : **PASS**.
|
||||
|
||||
La tranche retient un type-check indépendant sous le script canonique `typecheck`, un `tsconfig` strict sans émission comme baseline minimale, un `package.json` privé minimal pour les applications contrôlées et une politique de lockfile fondée sur le rôle de l'artefact et la reproductibilité, jamais sur une préférence npm.
|
||||
La tranche a matérialisé un type-check indépendant sous le script canonique `typecheck`, un `tsconfig` strict sans émission comme baseline minimale, un `package.json` privé minimal pour les applications contrôlées et une politique de lockfile fondée sur le rôle de l'artefact et la reproductibilité, jamais sur une préférence npm.
|
||||
|
||||
Les templates `package.json` et `tsconfig.json` restent volontairement minimaux et parsables. Ils n'imposent ni version TypeScript, ni package manager, ni target/module/runtime, ni Vite ; ces décisions sont ajoutées par le projet ou par les owners des tranches suivantes. Vite reste réservé à `alpha.4` et CSS/Sass à `alpha.5`.
|
||||
La gate spécifique atteint son message final, les `48/48` tests et les trois audits Markdown sont propres, et le scope Git correspond exactement au delta. Vite est resté réservé à `alpha.4` et CSS/Sass à `alpha.5`.
|
||||
|
||||
La revue opérateur après PASS relève toutefois une précision appartenant exactement au scope de la tranche : le manifest réel doit rechercher et déclarer les types externes nécessaires (`@types/node`, `@types/bootstrap` ou équivalent) lorsque les dépendances utilisées ne fournissent pas déjà leurs propres déclarations. Le delta livré reste immuable ; cette précision est portée par un fix local.
|
||||
|
||||
### alpha.3.fix.1 — déclarations de types externes
|
||||
|
||||
Préciser la découverte et la classification des packages de déclarations TypeScript sans modifier le template générique avec des dépendances fictives.
|
||||
|
||||
Le correctif doit imposer l'ordre de décision `types embarqués → @types si nécessaire`, recommander `devDependencies` pour les déclarations purement de développement d'une application privée, distinguer `@types/node` et `@types/bootstrap` selon leur applicabilité réelle, conserver la nuance des bibliothèques publiées et maintenir Vite/CSS/Sass hors scope.
|
||||
|
||||
### alpha.4 — Vite, dev server et outputs
|
||||
|
||||
|
||||
Reference in New Issue
Block a user