diff options
Diffstat (limited to 'src/search.c')
| -rwxr-xr-x | src/search.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/search.c b/src/search.c index 1b83891..25318ed 100755 --- a/src/search.c +++ b/src/search.c @@ -1249,7 +1249,22 @@ QSearchFromCheckNoStandPat(IN SEARCHER_THREAD_CONTEXT *ctx, if ((pf->uQsearchDepth < pf->uQsearchCheckDepth) && (pf->uQsearchDepth < g_uIterateDepth / 4) && (pf->fCouldStandPat[pos->uToMove] == FALSE) && - (CountKingSafetyDefects(pos, pos->uToMove) > 2)) + // + // Threshold doubled 2026-09-06 (board_representation/ + // EVAL.md section 9): was ">2", tuned against the old + // CHECK_VECTOR-based CountKingSafetyDefects. The bitboard + // rewrite (real blocker-aware slider attacks, queen 2x + // weighting) runs systematically hotter for the same + // underlying danger, so the un-rescaled old threshold was + // firing far more liberally than intended -- observed + // directly as a runaway check-extension cascade (85x+ + // branching for a single ply) on a real position. Not yet + // independently recalibrated against real data the way + // iKingSwingP90 was; doubling is a stopgap matching the + // rough inflation this counter picked up, pending a real + // measurement. + // + (CountKingSafetyDefects(pos, pos->uToMove) > 4)) { if ((uMoveCount == 1) || (NUM_KING_MOVES(ctx, ctx->uPly) == 0) || |
