clrsrc 1.3.0: sharper search, cleaner endgames
Version 1.3.0 of the clrsrc chess engine is out - and this time the neural net stays untouched. 1.3.0 is a pure search-and-endgame release: every improvement lives in the search itself and in finishing off won positions cleanly. No new net, no retraining - just an engine that thinks a notch more clearly.
The search
The most noticeable change concerns singular extensions - a search technique that deliberately looks deeper at especially promising moves. We switched it off. In self-play, at our time controls, that is a measurable gain: the engine would rather spend the saved time on a uniformly deeper search across all moves. If you like the backstory - this very insight was already the heart of "The load-bearing bug"; 1.3.0 follows that line to its logical end.
Endgames thought through to the finish
Two changes make sure clearly won positions actually get converted:
- Conversion time. In clearly won endgames the engine no longer moves in haste but takes the time to work the conversion out properly - the path to the goal is thought through rather than left to chance.
- Cleaner tablebase scoring. Wins from the endgame tablebases get their own scoring band. That keeps certain tablebase wins clearly separate from ordinary advantages, and the engine steers toward them more consistently.
Correct mates
Mate reporting gets more precise in 1.3.0 too:
- "Mate in N" for real mates only. The "mate in N" announcement now appears solely for actual forced mates - no longer for other high scores that merely looked like a mate.
- Correct boundary mate. A mate whose final move hits the 50-move counter exactly now counts as a mate - and no longer as a thrown-away draw. A rare but real edge case, now decided correctly.
Under the hood
On top of that, two robustness jobs with no grand entrance: a more resilient load of the NNUE net, and a bit of opening-book hygiene. Neither shows up in day-to-day play - which is exactly the point.
The full release is open on GitHub as always: clrsrc 1.3.0. You can watch the engine live on the Live page.