Skip to content

Xhess v0.2.0

Choose a tag to compare

@github-actions github-actions released this 06 Nov 14:24
8551b1e
v0.2.0 릴리스 준비: 버전 0.2.0 (#10)

* Add Xhess web UI (chessground + Stockfish WASM) and Tauri desktop wrapper

- app/: Vite + TypeScript board UI, UCI layer with swappable Transport
- desktop/: Tauri v2 wrapper for Windows/Linux
- CI: typecheck, tests, web build, desktop bundles

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

* Add Cloudflare Pages install site, PWA support, and release workflow

- site/: OS-detecting landing page, /play/ serves the web app
- app: web manifest, icons, stale-while-revalidate service worker
- release.yml: tag push builds Windows/Linux installers into a GitHub Release

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

* Add Albatross 0.1 Genesis: bitboard core, movegen, perft, minimal UCI

- C++20 core: LERF bitboards, magic attack tables, 16-bit moves, Zobrist, make/unmake
- Legal move generation verified by perft on the six standard positions
- Minimal UCI (go perft; no search yet) and 28 unit tests
- CI job for Linux/Windows; design record in engine/docs

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

* Bump version to 0.1.0 for first release

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

* Allow manual release runs via workflow_dispatch

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

* Add tauri npm script required by tauri-action

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

* Run a local native UCI engine in the desktop app

- Rust: spawn/relay a UCI process over Tauri commands and events (engine.rs), tauri capabilities
- Bundle Stockfish 18 as sidecar (xhess-stockfish), fetched with SHA-256 verification at build time
- Frontend: Tauri transport with automatic WASM fallback, optional external UCI engine path
- Third-party notices for the bundled GPL engine

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

* Bump version to 0.1.1

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

* Add Albatross 0.2 First Thought: alpha-beta search, HCE, time management

- search: negamax + alpha-beta, iterative deepening, quiescence (full evasions in check), MVV-LVA ordering,
  mate/draw handling, PV, node/depth/time limits, worker-thread Search with stop
- eval: material + piece-square tables, king table blended by game phase (interface isolated from search)
- uci: go (depth/nodes/movetime/wtime/btime/winc/binc/movestogo/infinite), info lines, mate/stalemate reporting,
  thread-safe output; bench command
- attacks: embedded verified magic numbers (startup 336 ms -> ~4 ms) with search fallback
- 50 unit tests; ASan/UBSan/TSan clean; design record in engine/docs/0.2-first-thought.md

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

* Albatross 0.3 (in progress): TT, SEE, PVS, LMR, null-move, killer/history, match tool

- search: transposition table, SEE, killer/history ordering, PVS, late move reductions, null-move pruning,
  check extension, Hash/Clear Hash UCI options
- core: do_null_move/undo_null_move
- tools/match.py: engine-vs-engine match with the engine's own rules as judge
- 60 unit tests

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

* Document Albatross 0.3 and measured results

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

* Add strategy markings: engine recommendations and plan evaluation on the board

- Albatross: UCI MultiPV (1-32) and go searchmoves; info multipv lines (0.3.1)
- app: UciEngine.analyze(), Analyzer lifecycle, pure strategy logic (arrows, plan parsing, verdicts)
- board: numbered candidate arrows, expected reply, right-click-drag plan evaluated by the engine
- tests: unit + fake-UCI Analyzer + real-Albatross integration; E2E verified with Stockfish WASM
- docs/strategy-marking.md

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

* Add human mode: engine that sometimes sacrifices (brilliant or blunder) and makes human-like mistakes

- humanmode: sacrifice detection (SEE with check/king legality), candidate pool, human-like selection, classification
- humanplay: gathers candidates via MultiPV and probes sacrifices with searchmoves
- UI: engine mode selector, mistake/sacrifice sliders, annotation (!!, !, ?!, ??, ?)
- tests: unit + fake-UCI flow; E2E verified with Stockfish WASM
- docs/human-mode.md

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

* Bump version to 0.2.0

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q5z8L5xjfLxi5m16p57EvQ

---------

Co-authored-by: Claude <noreply@anthropic.com>