v0.4.2-rc.2
Pre-release
Pre-release
·
288 commits
to master
since this release
Features
- (search) Record every reverse futility candidate, fired or not [bench 8182450]
- (search) Add principal variation search [bench 7184673]
- (search) Skip hopeless captures in quiescence [bench 6708286] [elo +50 ±24 (sprt [0, 10] passed, 530 games, 10+0.1, vs 24ef995)]
- (search) Add static exchange evaluation [bench 6708286]
- (search) Order captures by static exchange evaluation [bench 6146070] [elo +12 ±18 (sprt [-10, 0] inconclusive, 840 games, 10+0.1, vs master)]
- (search) Skip losing captures in quiescence [bench 5684750] [elo +24 ±19 (sprt [-10, 0] passed, 746 games, 10+0.1, vs 6e6fdec)]
- (search) Reduce late quiet moves by one ply [bench 4395471] [elo +44 ±22 (sprt [0, 10] passed, 648 games, 10+0.1, vs 899197c)]
- (board) Tell whether a move gives check without making it [bench 4395471]
Bug Fixes
- (board) Drop a castle right or en passant square without its pieces [bench 4395471]
- (uci) Take startpos, fen and moves as whole words
Performance
- (search) Score the quiet moves only when the search reaches them [bench 6146018] [speed +3.4%]
- (board) Mask the castling rights, step the repetition walk in twos [bench 4395471] [speed +3.5%]
- (search) Sort the keys and put the moves in order once [bench 4395471] [speed +2.1%]
- (search) Sort only the keys the move ordering scored [bench 4395471] [speed +6.4%]
- (search) Mask the squares the history table is read by [bench 4395471] [speed -0.9%]
Refactor
- (search) Leave the swap's gain array uninitialised [bench 5684750]
- (board) Make Board's active_color, line_ply and key pub(crate) [bench 4395471]
- (board) Add try_make and try_undo for callers outside the crate [bench 4395471]
- (magic) Move the mailbox and the MAGIC static into magic.rs [bench 4395471]
- (uci) Read a go line once into a Go value
- (uci) Answer the three research commands through one path
- (board) Write the castling rights out from a table [bench 4395471]
- (uci) Move the instruments out of the protocol module
Documentation
- (board) Say where the mailbox lives and how big it is
- (search) Say what Limits::starting_at is for
Development
- (bench) Let the residuals command set the reservoir cap
- (bench) Score the terminal positions the replay reaches
- (docs) Correct three verdicts in the experiments ledger
- (docs) Record that on-demand move picking measured slower
- (bench) Count the rows whose claim overstates the reference
- (docs) Record the tuning that measured slower
- (ci) Count how the games in a match ended
- (ci) Keep the games and a manifest from every strength run
- (bench) Record which move cuts a sampled node off [bench 4395471]
- (deps) Bump the actions group with 2 updates
- (docs) Record the check exemption verdict
- (ci) Pool the shards of a match into one estimate
- (ci) Give each shard of a match its own slice of the book
- (ci) Split the strength match across shards
- (bench) Label each sampled reduced scout's fail low [bench 4395471]
- (magic) Import the test module's names in one use
- (ci) Play the calibrate rungs at the same time
- (workspace) Drop or fix the checks that were already being made
- (workspace) Clean up the docs, the comments and the test scaffolding [bench 4395471]
- (docs) Record the tuning this round measured slower
- (workspace) Hold the unsafe to the two crates that need it
- (workspace) Look for the licence notice everywhere a source file is
- (ci) Read a match's pairs as a sequential test
- (ci) Play an sprt in batches across the shards
- (docs) Correct and tidy the documentation
Docker image: ghcr.io/aywrite/arche-lichess-bot:v0.4.2-rc.2 (sha256:e67c453bc987f9768ab02db820e66862fec23ff6b970d6b4e607da372c9cac5c)
Performance compared to v0.4.1 | +127 ±26 Elo (500 games)
Estimated rating | 2326 ±35 on the ccrl blitz scale (104 games)