Plan 1c : 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
4357f7e3f2
commit
414dfa79f8
@@ -2,7 +2,7 @@
|
||||
|
||||
- **Date** : 2026-11-03
|
||||
- **Étape** : 1c (`docs/etape-1.md`)
|
||||
- **Statut** : prévu (après la révision UX et 1b)
|
||||
- **Statut** : fait (2026-11-09), en attente de vérification
|
||||
- **Exécutant** : sous-agent general-purpose, dans un worktree
|
||||
|
||||
## Objectif
|
||||
@@ -44,4 +44,59 @@ appliqué ; les trois commandes passent.
|
||||
|
||||
## Résultat
|
||||
|
||||
À remplir à la clôture.
|
||||
2026-11-09, branche `match-et-reglages` (sur `accueil-tutoriel-aide` puis
|
||||
`main` fusionnées).
|
||||
|
||||
**Fait**
|
||||
|
||||
1. **Moteur** (une seule recompilation, `engine.c` et `engine-cli/main.c`) :
|
||||
`engine_level_double_decision` et `engine_level_take_decision` reprennent
|
||||
`ComputerTurn` (gnubg, `play.c` l. 1312-1398 et 1139-1235) : accès au
|
||||
videau et videau < 4096, pré-filtre « fenêtre de marché » (évaluation sans
|
||||
videau à un pli de moins, `GetDoublePointDeadCube`), double facultatif
|
||||
seulement à 0 pli avec plus de 0,001 de gain, réponse au double selon la
|
||||
décision (castors joués comme une prise). `engine_match_after_game` :
|
||||
score, fin du match, partie Crawford suivante (`play.c` l. 1817-1820 ;
|
||||
partie Crawford déjà jouée lue comme gnubg, l. 303 et 4277). engine-cli :
|
||||
`double`, `take`, `aftergame`, `matchid` étendu aux matchs. Tests dans
|
||||
`tests/test_engine.sh`.
|
||||
2. **Domaine** : `Match`, `MatchAfterGame` (`match.ts`), niveaux montrés
|
||||
(`level.ts` : Débutant beginner, Amateur casual, Intermédiaire
|
||||
intermediate, Avancé advanced, Expert 0ply, Champion 2ply ; documenté
|
||||
dans `docs/glossaire/niveau-de-jeu.md`). `Game` : niveau et match portés
|
||||
par `GameStarted`, ordinateur par `levelMove`/`levelDouble`/`levelTake`,
|
||||
`GameEnded.match` donné par le moteur, `nextGame` pour la partie suivante.
|
||||
`EngineCube` étendu au match (vu du joueur au trait) ; le Match ID est
|
||||
écrit par le moteur, liens de position compris. Chaque partie d'un match
|
||||
est une partie enregistrée à part.
|
||||
3. **Format** : événements en version 2, migration testée des journaux de la
|
||||
version 1 (niveau 2 plis explicite) ; résumé avec `match` facultatif ;
|
||||
quatre réglages nouveaux avec valeur par défaut. Amendement de l'ADR 0007.
|
||||
4. **Écran `#/nouvelle-partie`** (charte 1c) : segments partie libre/match,
|
||||
longueurs 3/5/7/11, phrases et liens Crawford/Jacoby, six barres de
|
||||
niveau, conseil du maître, barre d'action collée en bas ; choix gardés.
|
||||
Ouvert par le menu (lien), l'accueil et la fin de partie ; « Partie
|
||||
suivante » dans un match qui continue. Adresse ajoutée à l'ADR 0013.
|
||||
5. **Score** : ligne « Match en N points · partie Crawford », pastilles dans
|
||||
les bandeaux, case « sur N » dans la colonne de commandes en paysage,
|
||||
texte pour le lecteur d'écran ; videau caché pendant la partie Crawford ;
|
||||
panneau de fin de partie et de fin de match.
|
||||
6. **Tests** : `jouer-un-match.feature` (niveau, match en 3 points jusqu'au
|
||||
bout avec dés imposés, Crawford, Jacoby), `match.test.ts`, tests du
|
||||
domaine (match, migration), `tests/browser/match.mjs` (écran, match en
|
||||
3 points joué par l'interface jusqu'au bout, rechargement en cours de
|
||||
match ; captures dans `build/browser-shots/match/`). `play.mjs` adapté au
|
||||
passage par l'écran « Nouvelle partie ».
|
||||
|
||||
**Écarts**
|
||||
|
||||
- Le moteur C a changé (fonctions ajoutées, rien de gnubg modifié).
|
||||
- Le « conseil du maître » n'est qu'un réglage gardé : il n'existe pas
|
||||
encore (1d).
|
||||
- « Mes parties » liste chaque partie d'un match séparément, sans afficher
|
||||
le match ; le résumé porte pourtant `match` pour le faire plus tard.
|
||||
- Le numéro de la partie dans le match n'est pas gardé (SGF : `game:0`).
|
||||
- Longueur par défaut d'un match : 5 points (la charte ne la fixe pas).
|
||||
|
||||
**Suites** : affichage du match dans « Mes parties » ; recette design des
|
||||
captures ; essai sur le Fairphone 4 (temps du niveau Champion).
|
||||
|
||||
Reference in New Issue
Block a user