Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (1)
WalkthroughTightens null-move gating to require a window cutoff against static_evaluation + MAX_POSITIONAL_WEIGHT, caches Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: b377f43c-5e6b-4ae5-9529-dae22c6508eb
📒 Files selected for processing (4)
src/position/piece.rssrc/search/mod.rssrc/search/picker.rssrc/search/see.rs
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #437 +/- ##
=====================================
+ Coverage 92% 92% +1%
=====================================
Files 33 33
Lines 3757 3760 +3
Branches 3757 3760 +3
=====================================
+ Hits 3419 3422 +3
Misses 319 319
Partials 19 19 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
src/search/mod.rs (1)
234-244:⚠️ Potential issue | 🟠 MajorVerify reduced fail-highs at full depth.
After Line 234 reduces late quiet moves, a reduced search that returns
>= betaskips the full-depth re-search because Line 243 excludes cutoffs. That lets Line 246 feed a shallow score into Line 252 and prune the node based on an unverified reduced-depth result.🐛 Proposed fix
- let reduction = if may_late_move_reduce && mov.is_quiet() && i > 5 { 1 } else { 0 }; + let full_depth = depth.saturating_sub(1); + let reduction = if may_late_move_reduce && mov.is_quiet() && i > 5 { 1 } else { 0 }; let null_score = -self.pvs( &next_position, - depth.saturating_sub(1).saturating_sub(reduction), + full_depth.saturating_sub(reduction), ply.saturating_add(1), window.reverse_null_around_alpha(), ); - if window.improves(null_score) && !window.cuts_off(null_score) { - -self.pvs(&next_position, depth.saturating_sub(1), ply.saturating_add(1), window.reverse()) + if window.improves(null_score) && (reduction > 0 || !window.cuts_off(null_score)) { + -self.pvs(&next_position, full_depth, ply.saturating_add(1), window.reverse()) } else { null_score }
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: e1a30aef-622b-4865-937b-bab57d602ab8
📒 Files selected for processing (1)
src/search/mod.rs
|
Against master [hash=64]: 🆗 Elo: 5.56 +/- 18.74, nElo: 6.40 +/- 21.53 |
|
Against v1.6.0 [hash=64]: ✅ Elo: 75.15 +/- 18.68, nElo: 89.46 +/- 21.53 |
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Summary by CodeRabbit