ADR 0009 accepté : socle PWA, mesures du Fairphone 4
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
03b26ccba7
commit
ea304795b5
@@ -1,9 +1,9 @@
|
||||
# 0009. Socle : PWA en TypeScript, moteur en WebAssembly
|
||||
|
||||
- **Statut** : proposé
|
||||
- **Statut** : accepté
|
||||
- **Date** : 2026-11-02
|
||||
- **Décideurs** : Pierre (langage, outils), sur proposition de Claude Code ;
|
||||
le socle sera accepté après les mesures sur le Fairphone 4
|
||||
- **Décideurs** : Pierre, sur proposition de Claude Code, après les mesures
|
||||
sur le Fairphone 4
|
||||
|
||||
## Contexte
|
||||
|
||||
@@ -13,15 +13,29 @@ en WebAssembly (MR !9) : même suite de contrat qu'en natif (écart maximal
|
||||
9,5e-4 pour une tolérance de 0,002), 7,3 Mo compressés à télécharger (seuil
|
||||
40 Mo). Sur le PC de développement (i5-2450M, 2011), le meilleur coup à 2 plis
|
||||
prend au plus 0,3 s sous Chromium et 2,3 s sous Firefox (seuil sur le
|
||||
téléphone : 3 s). Les mesures sur le Fairphone 4 restent à faire.
|
||||
téléphone : 3 s).
|
||||
|
||||
Mesures sur le Fairphone 4 (Chrome 156, page `bench.html`, servie par
|
||||
`make deploy-web`), trois essais le 2026-11-02, maximum sur les positions de
|
||||
référence :
|
||||
|
||||
| Mesure | Fairphone 4 (pire des 3 essais) | Seuil | Marge |
|
||||
| --- | --- | --- | --- |
|
||||
| Meilleur coup, 0 pli | 21 ms | 300 ms | ×14 |
|
||||
| Meilleur coup, 2 plis (médiane 94 à 98 ms) | 348 ms (`race-2`) | 3 000 ms | ×8,6 |
|
||||
| Décision de videau, 2 plis | 148 ms | 3 000 ms | ×20 |
|
||||
| Chargement du moteur | 239 à 276 ms | – | – |
|
||||
| Téléchargement, gzip | 7,3 Mo | 40 Mo | ×5 |
|
||||
| Mémoire WebAssembly | 51,9 Mo | – | – |
|
||||
|
||||
Les trois essais diffèrent de moins de 10 %. Firefox n'a pas été mesuré sur le
|
||||
téléphone.
|
||||
|
||||
L'ADR 0007 renvoyait au choix du socle le langage de l'interface et l'outil de
|
||||
vérification des dépendances.
|
||||
|
||||
## Décision
|
||||
|
||||
Sous réserve des mesures sur le Fairphone 4 :
|
||||
|
||||
- **Socle : PWA**, installable et utilisable hors ligne, moteur en WebAssembly
|
||||
dans un Web Worker. L'étape 0c (Android natif) n'est pas faite.
|
||||
- **Langage : TypeScript**, compilé par `tsc` en modules JavaScript standard,
|
||||
@@ -49,5 +63,8 @@ Sous réserve des mesures sur le Fairphone 4 :
|
||||
|
||||
- La distribution sur F-Droid et le Play Store demandera plus tard une
|
||||
enveloppe Android minimale autour de la PWA (à décider à l'étape 1).
|
||||
- Si les mesures du Fairphone 4 dépassent les seuils, cet ADR passe au statut
|
||||
« obsolète » et l'étape 0c est lancée.
|
||||
- L'étape 0c (Android natif) est abandonnée.
|
||||
- Le critère de fin de l'étape 0 (« moins de 2 s par coup de l'IA en niveau
|
||||
standard ») est tenu même au niveau fort (2 plis) : c'est le niveau standard
|
||||
de l'ordinateur à l'étape 0d.
|
||||
- Firefox sur le téléphone reste à vérifier, sans bloquer.
|
||||
|
||||
+1
-1
@@ -15,4 +15,4 @@ l'ancien passe au statut « remplacé par NNNN ». Voir l'ADR 0001.
|
||||
| [0006](0006-merge-requests-systematiques.md) | Merge requests systématiques, fusionnées par Claude Code | accepté |
|
||||
| [0007](0007-architecture-et-conventions-de-code.md) | Architecture et conventions de code | accepté |
|
||||
| [0008](0008-glossaire-et-scenarios-source-unique.md) | Glossaire et scénarios : une source unique pour le code, l'aide et les tests | accepté |
|
||||
| [0009](0009-socle-pwa-typescript.md) | Socle : PWA en TypeScript, moteur en WebAssembly | proposé |
|
||||
| [0009](0009-socle-pwa-typescript.md) | Socle : PWA en TypeScript, moteur en WebAssembly | accepté |
|
||||
|
||||
Reference in New Issue
Block a user