# Journal Une entrée datée par session : ce qui a été fait, décidé, et la suite. ## 2026-11-02 **Fait** - Dépôt initialisé (branche `main`) avec le kit de démarrage : `CLAUDE.md`, `docs/cadrage.md`, `docs/etape-0.md`, `PROMPTS.md`. - Nom de l'application reporté partout : Ustagammon (lien vers le brief créatif dans `CLAUDE.md` et `docs/cadrage.md`). - Squelette : `Makefile` (help, setup, build, test, lint, deploy, clean), `LICENSE` (GPLv3), `CREDITS.md`, `README.md`, `.gitignore`, ce journal, `docs/decisions.md`. - Premiers tests : contrat du Makefile (`tests/test_makefile.sh`) ; lint du dépôt (`tests/lint.sh`, avec ShellCheck dans Docker). - `main` poussé sur Gitea (`git@git.sans.pub:pierre/Ustagammon.git`), après fusion avec le commit initial créé par Gitea (LICENSE et README). Incident : le premier envoi contenait un `README.md` avec des marqueurs de conflit ; corrigé, et `make lint` les détecte désormais. - `PROMPTS.md` supprimé ; ajout de `docs/organisation.md`, `docs/feuille-de-route.md` et `docs/plans/`. - Étape 0a.1 lancée : étude des trois sources du moteur confiée à un sous-agent (`docs/plans/2026-11-02-choix-source-moteur.md`), puis clôturée avec vérification des points clés par la session principale. **Décidé** - Les outils de lint tournent dans Docker, comme les autres chaînes d'outils. - Claude Code pilote le projet par sous-agents ; tout le suivi est dans `docs/`. - Moteur : gnubg officiel, commit 14b6798 (validé par Pierre). - Toute modification passe par une merge request Gitea décrite en détail, fusionnée par Claude Code une fois `make lint` et `make test` au vert (demande de Pierre). - Les décisions passent dans des ADR (`docs/adr/`) ; `docs/decisions.md` est remplacé par les ADR 0001 à 0006. Plans et feuille de route deviennent temporaires : le plan du choix du moteur est supprimé, son contenu durable est dans l'ADR 0005 (demande de Pierre). - Les hash de commit s'écrivent sans backticks, pour les liens automatiques de Gitea (demande de Pierre). **Incident (clos)** - Les MR fusionnées restaient « open » dans Gitea : les hooks git du serveur ne s'exécutaient plus, sur toute l'instance (diagnostic par un sous-agent, en lecture seule ; brief transmis à Pierre). Pierre a réparé les hooks et marqué les MR !1 à !8 comme fusionnées. Les branches fusionnées ont été supprimées du serveur. **Suite de la session (après-midi)** - ADR 0007 (architecture et conventions de code) et ADR 0008 (glossaire et scénarios, source unique), puis amendements : scénarios en Gherkin standard validés par l'analyseur officiel, ADR amendables (0001). - Étape 0a terminée, par sous-agents : gnubg de référence et 32 positions (0a.2, MR !6) ; moteur embarqué, `engine.h` et `engine-cli` (0a.3, MR !7) ; comparaison automatique aux références, tolérance 0,002, deux défauts du moteur corrigés (0a.4, MR !8). - Outils de compilation et de test validés par Pierre (amendement de l'ADR 0004). - Étape 0b : moteur en WebAssembly, même suite de contrat (écart maximal 9,5e-4), 7,3 Mo compressés, page de test et de mesure, `make deploy-web`, guide de test `docs/guide-test-etape-0.md`. **Reste à faire** - Mesures sur le Fairphone 4 avec Pierre, puis décision du socle (ADR). - Étape 0d : plateau minimal jouable sur le socle retenu. - `adb` n'est pas installé sur le PC : `sudo apt install adb` avant les tests sur le téléphone.