Game Analysis

Purpose

Turn cached Lichess games into an understandable move-by-move analysis experience.

User Value

Users can review games with board navigation, evaluations, key moments, timing context, and opening information.

Expected Behavior

The app should parse PGN, reconstruct positions, align available evaluations to moves, and present a navigable analysis UI.

Scope

  • Individual game route.
  • Board and move navigation.
  • PGN parsing.
  • Evaluation display from Lichess data.
  • Accuracy or key-moment summaries where available.

Non-Goals

  • Client-side Stockfish.
  • Guaranteeing analysis for games without Lichess evals.
  • Replacing dedicated chess GUI tools.

Current State

Partial. Game-analysis components and backend parsing exist, but docs should state clearly when analysis depends on precomputed Lichess evals.

Key Flows

  • User opens a game from Explore mode.
  • App loads cached game data.
  • User steps through moves.
  • UI updates board position and evaluation context.

Dependencies

  • Frontend game analysis route/components.
  • FastAPI PGN parsing and normalization.
  • Cached game data.
  • Lichess evaluation metadata.

Decisions

  • No client-side Stockfish; use precomputed Lichess evals only.

Verification

  • Open games with and without evals.
  • Step through the full move list.
  • Verify board positions and evaluation signs align with side-to-move expectations.

Open Questions

  • Which key-moment thresholds should be product defaults?