September 22
Chessolve 6.6.0 — Changelog
This changelog covers development from September 20 to September 22, 2026.
In total: 59 commits across 67 files, with 10,181 additions and 452 deletions.
⚡ More reliable live analysis on Chess.com
- Chessolve now follows the real-time game stream used by Chess.com during live human games.
- The complete move history from that stream becomes the primary source for the current position, replacing many timing-sensitive guesses based on visible page updates.
- Opponent moves can reach Chessolve before the move list finishes updating on screen.
- A page refresh in the middle of a game can recover the full position and move history from the next game update.
- Castling, captures, promotions, and en passant are reconstructed by replaying the confirmed moves with normal chess rules.
- Every update is checked before it is trusted. If the stream is unavailable, delayed, or inconsistent with the displayed game, Chessolve falls back to its existing board-reading path.
- Bot games, puzzles, and other Chess.com surfaces that do not provide this live stream continue to use the established fallback.
♟ Instant response to your own moves
- Chessolve now notices a submitted move immediately instead of waiting for the server to echo it back.
- The previous suggestion and arrow are cleared as soon as you play, preventing advice for a position that has already changed.
- A short pending window keeps analysis from starting while the board and server are still catching up with the submitted move.
- Premoves and quickly played moves remain protected from stale position updates.
- The pending state ends as soon as the board or the confirmed game stream reaches the submitted position.
🔎 Safer game review and variation analysis
- Moving backward and forward through a finished game now follows the position actually displayed on the board, even when Chess.com's move list is temporarily unavailable.
- The starting position and earlier moves are recognized correctly instead of being confused with the latest live position.
- Analysis variations that were never played in the game are treated as their own positions, so Chessolve can analyse the line currently shown on the board.
- Turn detection for these side lines comes from the displayed position rather than an unrelated review clock.
- Rapid board changes are allowed to settle before analysis begins, reducing incorrect results while Chess.com is still drawing a selected position or flipping the board.
- Finished-game history can be recovered from Chess.com when the visible move list is incomplete.
✨ A calmer best-move card
- Replaced the technical history-wait message with a loading skeleton.
- Cached analysis is shown immediately when revisiting a position, avoiding an unnecessary loading flash.
- Old evaluations and arrows are removed when the displayed position changes.
- Turn messages are withheld while the board is still transitioning to another position.
- The card no longer claims that it is your turn after the board has already moved on.
- Surfaces without the new live transport no longer display transport-dependent claims.
📊 More accurate evaluations and move review
- Move-review verdicts now use the evaluation calculated for that reviewed position instead of reusing stored display text.
- Cached engine answers are matched to the exact chess position, even when harmless FEN counters differ.
- Engine results produced for an old position, player perspective, or settings state are rejected instead of appearing later on the card.
- Review analysis stays separate from live-game analysis so one cannot overwrite the other.
🔐 Clearer sign-in validation
- Added an explicit Privacy Policy consent control to the email sign-in screen.
- Linked the Privacy Policy directly from the consent label.
- The consent checkbox starts selected and can be changed before continuing.
- The send-code button remains disabled until the email address is valid and consent is selected.
- Added the new sign-in text in English, Spanish, Brazilian Portuguese, and Russian.
🛡️ Designed to fail safely
- Chessolve observes Chess.com's WebSocket traffic without changing, delaying, or blocking the site's messages.
- Captured records are isolated to the current tab session and the current game.
- Old records are discarded when navigating to another game or when the game identifier changes.
- Malformed frames, unsupported messages, illegal move histories, and out-of-order updates are ignored.
- The original Chess.com integration remains available as a silent fallback whenever the real-time source cannot be trusted.
🧪 Quality and stability
- Added dedicated coverage for the Chess.com stream capture, message bridge, compact move decoding, position reconstruction, game identity, and mid-game recovery.
- Added scenarios for local moves, pending server confirmations, premoves, stale snapshots, board flips, unmounted move lists, review navigation, and off-game variations.
- Added regression coverage for loading states, cached analysis, stale arrows, turn messages, evaluation ownership, and sign-in validation.
- Expanded diagnostics around game lifecycle resets and temporarily blocked position changes.
- Bumped the extension version to 6.6.0.
Chessolve 6.6.0 makes live Chess.com analysis substantially more dependable. It follows confirmed game data when available, reacts immediately when you move, stays aligned during reviews and fast board transitions, and quietly returns to the proven fallback whenever the new source is not trustworthy.