- engine_best_moves suit hint_move de gnubg : fAnalyse vrai, seuil
« douteux », puis RefreshMoveList (classement par niveau d'évaluation
et départage des égalités).
- Correction : en match, l'équité des coups était convertie deux fois par
mwc2eq (ScoreMove la convertit déjà).
- engine_cube : ajout de optimal et decision_text ; decision prend le nom
de l'énumération cubedecision de gnubg, comme les références.
- engine-cli : commande reference (un niveau au format de
tests/reference/) et nombres écrits avec 9 chiffres significatifs.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Image ustagammon/build-c (Debian trixie, gcc, GLib pour les seuls outils
de génération), construite par make setup. engine/engine.mk compile le
moteur et engine-cli, et génère gnubg.wd et les bases .bd avec makeweights
et makebearoff, comme le Makefile.am de gnubg. Dépendances suivies : un
second make engine ne recompile rien. make build appelle make engine.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
engine.h expose initialisation, coups légaux, classement des coups,
évaluation et décision de videau, avec Position ID et Match ID, sans type
gnubg ; erreurs par code de retour. engine-cli l'interroge et répond en
JSON (bestmove, moves, legal, cube, eval ; option --ply).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
engine/compat/ remplace ce que le cœur de gnubg attend du reste de gnubg
et de GLib : config.h écrit à la main (sans threads, C générique, NEON
prévu), shim GLib minimal (dont un analyseur XML pour les tables d'équité
et mmap pour les bases de fin de partie), en-têtes réduits et fonctions de
support.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Fichiers repris sans modification dans engine/gnubg/, poids et table
d'équité Kazaross-XG2 dans engine/data/, provenance détaillée dans
engine/gnubg/PROVENANCE.md. Le lint ne vérifie plus les espaces de ces
copies, pour qu'elles restent identiques à l'original.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>