Tests navigateur : accueil, tutoriel, aide, installation, mise à jour ; plan : résultat
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
441bca1bd7
commit
5fdca812d9
@@ -73,4 +73,81 @@ Chaque écran (accueil, étapes du tutoriel, onglets et questions de l'aide) a s
|
||||
|
||||
## Résultat
|
||||
|
||||
À remplir à la clôture.
|
||||
Exécuté le 2026-11-09 sur la branche `accueil-tutoriel-aide`, construite sur
|
||||
`adresses-ecrans` (0e.4, en recette).
|
||||
|
||||
1. **Accueil** (`#/accueil`, `app/src/ui/home-view.ts`, `home-model.ts`).
|
||||
Lancée sans adresse d'écran (icône, adresse du site), l'application
|
||||
s'ouvre sur l'accueil ; `#/` reste la partie. Premier lancement (rien de
|
||||
fait : ni choix, ni partie terminée, ni étape du tutoriel) : logo,
|
||||
plateau de départ, « Bienvenue à la table », « Je découvre » (lien
|
||||
`#/tutoriel/1`) et « Je connais les règles » (lien `#/`), une seule fois.
|
||||
Ensuite : la partie en cours (miniature, comptes, « Reprendre la partie »
|
||||
en action principale, ou « Nouvelle partie » s'il n'y a rien à
|
||||
reprendre), l'invitation à installer, une carte « Les règles du jeu »
|
||||
(le tutoriel : seul contenu d'apprentissage qui existe), la progression
|
||||
(« N parties jouées · M gagnées », sans les leçons) et la phrase de
|
||||
l'Atelier du Huit. Le logo de la barre haute et le menu mènent à
|
||||
l'accueil.
|
||||
2. **Installation** (`install.ts`) : invite gardée de `beforeinstallprompt`,
|
||||
sinon marche à suivre en trois étapes (Firefox, iPhone) dans une feuille
|
||||
à son adresse, `#/installer`. Carte après la première partie terminée,
|
||||
« Plus tard » une fois, retour après trois parties de plus ; ligne du
|
||||
menu tant que l'application n'est pas installée ; plus rien en
|
||||
`display-mode: standalone` ni après `appinstalled` (retenu dans les
|
||||
réglages).
|
||||
3. **Tutoriel** : texte unique `docs/tutoriel/regles.md` (format :
|
||||
`docs/tutoriel/README.md`), copié par `make site`, CC BY-SA 4.0, texte de
|
||||
la charte. Huit étapes, écrans « à vous » aux étapes 3, 4, 6 et 8,
|
||||
adresses `#/tutoriel/<n>`, `#/tutoriel/<n>/a-vous`, `#/tutoriel/fin`.
|
||||
Positions par identifiants gnubg ; coup illustré joué seul après 1 s,
|
||||
pion par pion, avec « Revoir » ; sens du jeu en pointillés sur liseré
|
||||
ivoire (étape 2). Domaine : `app/src/domain/learning/tutorial.ts`
|
||||
(`MovePractice`, `illustratedMove`, `shouldTake`) ; le moteur dit les
|
||||
demi-coups permis, et un coup est juste s'il mène à la position d'un des
|
||||
coups attendus. Refus : le pion revient, une phrase dit pourquoi ; succès :
|
||||
coche, vibration « pion posé », « Continuer » principal. La barre de
|
||||
progression ne lie que les étapes déjà vues. `app/tests/tutorial.test.ts`
|
||||
joue chaque coup légal de chaque écran « à vous » sur le vrai moteur.
|
||||
Fiche du glossaire `camp.md` ajoutée.
|
||||
4. **Aide** : onglet « Jouer » en questions (titres des scénarios reformulés,
|
||||
descriptions ajoutées là où il n'y en avait pas, étapes cachées, lien
|
||||
« Voir sur le plateau » par l'étiquette `@position:`), carte du tutoriel en
|
||||
tête, « Les mots du jeu » en cartes triées avec nom anglais, renvois et
|
||||
recherche sans accents, « À propos » (licences, crédits, version publiée
|
||||
lue dans `version.json`). Le bouton « Aide » de la partie ouvre la
|
||||
question du moment (`help-context.ts`, titres vérifiés par un test).
|
||||
5. **Mise à jour** (`updates.ts`, `web/sw.js`) : le service worker installe
|
||||
la nouvelle version puis attend (plus de `skipWaiting()` à
|
||||
l'installation, sauf à la première où rien n'attend) ; bandeau
|
||||
« Nouvelle version disponible » en haut, jamais pendant un coup en cours ni
|
||||
sur « Reprendre l'ancienne » ; « Mettre à jour » envoie `skip-waiting`,
|
||||
rechargement au `controllerchange`, la partie reprend. Menu « Rechercher
|
||||
une mise à jour » (`registration.update()`), qui répond « Vous avez la
|
||||
dernière version. ».
|
||||
6. **Scénarios** : `decouvrir-l-application.feature`,
|
||||
`installer-l-application.feature`, `apprendre-les-regles.feature`, et
|
||||
« Comment mettre l'application à jour ? » dans
|
||||
`regler-l-application.feature`, exécutés par Cucumber.
|
||||
7. **`make test-browser`** : `tests/browser/accueil.mjs` (premier lancement,
|
||||
tutoriel complet avec un geste refusé puis juste sur chaque écran
|
||||
« à vous », installation avec `beforeinstallprompt` simulé dans Chromium,
|
||||
aide, mise à jour sur un second site dont le test publie une deuxième
|
||||
version) ; `play.mjs` adapté (accueil, tutoriel et installation ont leur
|
||||
adresse). Captures dans `build/browser-shots/accueil-tutoriel/`.
|
||||
|
||||
**Écarts et points à trancher**
|
||||
|
||||
- Les adresses `#/tutoriel/<n>/a-vous`, `#/tutoriel/fin` et `#/installer`
|
||||
s'ajoutent au tableau de l'ADR 0013 (amendement à consigner).
|
||||
- Étape 7 : avec la règle de Jacoby, active en partie libre, un gammon ne
|
||||
vaut 2 points qu'une fois le videau doublé (le moteur compte 1 point
|
||||
sinon). Le texte de la charte est gardé, avec une phrase ajoutée qui le
|
||||
dit ; à valider par Pierre.
|
||||
- Les boutons de l'écran « à vous » du videau s'appellent « Je prends » et
|
||||
« Je passe », pour ne pas se confondre avec « Passer » (le tutoriel).
|
||||
- « Toutes les leçons » et la prochaine leçon attendent 1g ; la carte
|
||||
« Les règles du jeu » tient leur place.
|
||||
- La partie commencée d'office au chargement compte dans « parties
|
||||
commencées » : le premier lancement reste affiché jusqu'à une partie
|
||||
commencée de plus.
|
||||
|
||||
Reference in New Issue
Block a user