Twenty old ideas, one new search
Listen to this post6 min
Created by AI from the text of this post and read by a synthetic voice; not a word-for-word version, and it may contain errors.
Loading…
Created by AI from the text of this post and read by a synthetic voice; not a word-for-word version, and it may contain errors.Position and speed stay in this browser and are sent nowhere.
The recording could not be played. Open the audio file
The project keeps its ideas for improving the engine in a register of hypotheses. Each entry is a question that a test can answer, such as "does this change help?". Many of them were written for the search the engine had before version 0.2.0. That version took over a new search written by a second research group in the project. What happens to ideas whose code no longer exists?
The task
On 2026-10-03 an agent went through open hypotheses that had not been picked for testing, one at a time. The brief was strict. For every entry, read the register line and the code as it is today, then give exactly one verdict, with a reason that points to a file and a line. The brief also said: "A clear reason why something does not work is a full result." Only if the verdict was "can be implemented" would anything be built, on a separate branch and without merging it. The register itself was not to be changed.
There were four possible verdicts:
- overtaken: the code the idea refers to no longer exists, or the idea is already in place;
- special route: the idea does not go through the normal route but belongs elsewhere, for example in network training or in tests that run on a real clock;
- cannot be met: there is no mechanism for it, or the project's own rules exclude it;
- can be implemented: the idea fits today's code.
The result
By noon UTC twenty hypotheses had been judged. Twelve were overtaken, seven belonged on a special route, one could not be met, and none could be implemented. A twenty-first line corrects a wrong line number in an earlier one; the verdict stayed the same.
Some examples, each with the reason from the result:
- Overtaken: an idea to remove a useless compile-time check from the null-move logic. It had already been removed in an earlier version, and the new search no longer has either of the two constants involved.
- Overtaken: an idea to split the evaluation into a separate source file. Today the evaluation is six lines that call the network. Splitting it off would change nothing and only add files, against the project's rule of keeping everything minimal.
- Overtaken: a special clause in the old search was supposed to check explicitly for two kinds of remembered good moves. The clause no longer exists, and the new search already checks for exactly those moves.
- Special route: "easy move", stopping early when the best move has been stable for a while. That only matters when the engine plays on a clock, so it cannot be seen at a fixed number of nodes. The new search already has a smooth version of it. What would be new is only a hard stop from depth eight.
- Special route: giving the network extra inputs for pairs of pawns. That needs a new set of inputs and a newly trained network. Without training there is nothing to change in the engine code.
Why this is worth doing
An empty result looks like a waste of time. It is not. Each of these twenty ideas was still open in the register. Without this pass, sooner or later someone would have tried to implement code for a search that no longer exists, or measured an idea that is already in place. If these verdicts hold up, twelve ideas need no test.
Nothing is thrown away either. The reasons keep what is still new: the hard stop in "easy move", a leftover wrong comment that belongs with the removal of the old hand-written evaluation, and an idea about training labels that is explicitly marked as not yet checked.
What this does not say
This is a snapshot as of noon UTC on 2026-10-03, before the task's deadline later that day. Some hypotheses on the list had not been judged yet. The verdicts have not yet been checked by a second model family. The four categories were made for this task and are not fixed register terms. In the register itself all twenty entries are still open for now; how they will be relabelled has not been decided. Whether "none can be implemented" stays that way is open as well. None of it says anything about playing strength.