ReasonTree · raw stream vs bounded tree · verbatim capture 2026-07-14

One puzzle, two minds: a lost monologue vs a bounded tree

Lichess puzzle 03kkE (rated 1809), White to move. Left: raw Haiku's actual generation stream, captured verbatim with no time or budget caps — it wanders, re-parses the board, loops back, and after 127 seconds commits to an illegal move. Right: the same model wrapped in ReasonTree — the controller enumerates legal branches on a real board, scores each against the opponent's strongest reply, and selects Qxd5 in under five seconds. Every branch below is expandable.

raw Haiku — same prompt, no tree, no capscommitted to the wrong move at 127.44s
wall 127.44s17594 chars streamed12974 output tokens$0.0692
t = 1.9s

Let me analyze this chess position. I need to find the single best move for White. FEN: 2r2rk1/4q1p1/p3p2p/1p1b4/P7/1QN1RP2/1P3P1P/2R3K1 w - - 0 23 Let me understand the board: ``` 8: . . r . . r k . (rank 8) 7: . . . . q . p . (rank 7) 6: p . . . p . . p (rank 6) 5: . p . b . . . . (rank 5) 4: P . . . . . . . (


t = 30s — the benchmark's 30s operational cap — nothing usable committed yet
t = 58.1s

Hmm, so Ne4 doesn't seem to trap the queen or win material immediately. Let me think about whether Ne4 improves White's position in some other way. After 1. Ne4, the knight is centralized and attacks the queen. The queen moves, and then what? I'm not sure this leads anywhere concrete. Let me go ba

t = 59.0s

Let me go back to considering Rxc8+. That seems like the most forcing move. After 1. Rxc8+ Qxc8, White has traded rooks. The position is roughly equal in material. But I should evaluate the resulting position more carefully. Is White better, worse, or equal?

t = 90.4s

But wait—the king can't be on g7 if there's a pawn there. Let me recheck the pawn structure from the position. Looking at rank 7: e7 has the queen, g7 has a pawn. So the king must move elsewhere after the rook check. The available squares are Kf7, Kh7, or Kh8. In each case, White follows with Rc7,

t = 93.2s

Let me examine whether there's a stronger initial move I've overlooked. The position warrants a closer look at other candidate moves before committing to the rook capture. What about Qxd5+? The queen takes the bishop with check, which forces the king to respond and wins material

t = 123.7s

So the move is c1c8 in UCI notation. Let me verify the board position once more to make sure I have the right setup before finalizing this answer. Looking at the full board: the black rook sits on c8 and black king on g8. The white rook is actually on e3, not c1 as I initially thought. Checking rank 1, there's a rook on c1 and the white


t = 127.44s — finally commits to c1c8 (Rxc8+) — wrong (expected b3d5 (Qxd5!)) — c1c8 is not even legal: White's own knight on c3 blocks the c-file
ReasonTree bounded searchevery branch inspectable
FEN: 2r2rk1/4q1p1/p3p2p/1p1b4/P7/1QN1RP2/1P3P1P/2R3K1 w - - 0 23
depth: 4max nodes: 300000timeout s: 12.0nodes used: 137444wall seconds: 4.2937completed full root: True
White to movestate
  • Qxd5candidateselected+1.6
    Qxd5 comes out ahead by 2.3 pawns once the line settles
    line: Qxd5 exd5 Rxe7 bxa4
    • exd5replysurvives+1.6
      opponent's candidate resistance, scored from our side
      line: exd5 Rxe7 bxa4
      • Rxe7 bxa4continuation
        our follow-up on this reply's principal variation
    • Rce8replysurvives+3.0
      opponent's candidate resistance, scored from our side
      line: Rce8 Qh5 bxa4
      • Qh5 bxa4continuation
        our follow-up on this reply's principal variation
    • Rfe8replysurvives+3.0
      opponent's candidate resistance, scored from our side
      line: Rfe8 Qe4 bxa4
      • Qe4 bxa4continuation
        our follow-up on this reply's principal variation
    • Ba8replysurvives+0.9
      opponent's candidate resistance, scored from our side
      line: Ba8 axb5 axb5
      • axb5 axb5continuation
        our follow-up on this reply's principal variation
    • Bb7replysurvives+0.9
      opponent's candidate resistance, scored from our side
      line: Bb7 axb5 axb5
      • axb5 axb5continuation
        our follow-up on this reply's principal variation
    • Bc4replysurvives+0.9
      opponent's candidate resistance, scored from our side
      line: Bc4 axb5 axb5
      • axb5 axb5continuation
        our follow-up on this reply's principal variation
    • Bxf3replyrefuted-1.3
      opponent's candidate resistance, scored from our side
      line: Bxf3 b4 bxa4
      • b4 bxa4continuation
        our follow-up on this reply's principal variation
    • Qg5+replysurvives-0.3
      opponent's candidate resistance, scored from our side
      line: Qg5+ Kf1 b4
      • Kf1 b4continuation
        our follow-up on this reply's principal variation
    • Ba8replysurvives-0.2
      opponent's candidate resistance, scored from our side
      line: Ba8 h4 Qxh4
      • h4 Qxh4continuation
        our follow-up on this reply's principal variation
  • Nxd5candidaterefuted-2.0
    the opponent's best reply keeps this branch 1.7 pawns worse
    line: Nxd5 Rxc1+ Kg2 Qg5+
  • Qa3candidaterefuted-2.0
    the opponent's best reply keeps this branch 1.7 pawns worse
    line: Qa3 b4 Nxd5 Rxc1+
selected pathsurviving branchrefuted branchclick a node to open its counter-branches
Controller selection: Qxd5 — the branch that survives the opponent’s strongest reply within the budget.