Methodology

How the Astra chess benchmark was run

Every design choice was fixed before the games were played, and the record of each game contains enough to re-derive every claim on this site.

The four roles, kept apart

The model never saw engine output of any kind. Four components exist and only one of them talks to the model.

RoleTalks to the modelSees the engine
AI playeryesnever
Refereeonly through the protocol layerasks it for a move
Playing opponent (Stockfish)nois the engine
Post-game analysis (Stockfish)noruns after the game closed

The FEN protocol

Each turn the model received the instructions, the chronological move history in SAN, and the current position as a FEN string. It received no legal move list, no evaluation, no best move, no search depth and no principal variation. It had no chess engine, opening book, tablebase or tool of any kind, and it was asked to reply with exactly one move in standard algebraic notation and nothing else.

Move legality

One normalisation is applied to a reply: leading and trailing whitespace is stripped. The token must then match a strict SAN pattern and equal the SAN the referee itself generates for a legal move, ignoring only the check or checkmate suffix. Anything else ends the game immediately as a loss with termination illegal_move. There is no retry, no reinterpretation and no repair, and the raw reply is stored either way.

The opponent

Stockfish 18 · UCI_LimitStrength enabled · UCI_Elo 1320 / 1500 / 1700 · 200,000 nodes per move · 1 thread · 16 MB hash

A fixed node count rather than a movetime, so the opponent is reproducible on the same binary regardless of machine speed. The opponent is asked one question, what is your move, and returns a move. No score, depth or principal variation is ever parsed.

Two separate analyses

The benchmark analysis is frozen inside each game record: Stockfish 18 at depth 18, used for accuracy, average centipawn loss and the inaccuracy, mistake and blunder counts. A second, independent analysis at depth 20 with MultiPV 3 was run afterwards for the video commentary only, labelled separately, and has no influence on any benchmark result.

What this does not measure

Supplying the FEN removes board reconstruction from the task. This is a test of move selection given the position. It is not a memory test, six games are not an Elo rating, and nothing here generalises from chess legality to general model reliability.

← Back to the experiment