LocalChessEngine v0.2 Release Notes
- Release:
v0.2.0 - Date: 2026-05-16
- GitHub repository:
jnjambrin0/Master-Chess - Previous baseline: v0.1 HCE-default build-ready baseline
Summary
v0.2 is a focused portfolio polish release for LocalChessEngine. It keeps the
validated v0.1 chess-engine baseline intact while improving the public README,
GUI presentation, release metadata, screenshots, and compliance wording for a
technical portfolio audience.
HCE remains the default evaluation. NNUE remains technically integrated but
experimental/default-off for playing strength because BLK-002 remains active:
the trained small/v1 networks did not produce sufficient strength evidence over
HCE.
Highlights
- Added a portfolio-grade README with table of contents, project snapshot,
Mermaid architecture diagram, screenshots, engine/GUI/trainer overview,
concise quick starts, compliance notes, and honest validation claims. - Added versioned README graphics under
docs/assets/readme/: app icon,
main-window smoke screenshot, and analysis-window smoke screenshot. - Preserved the Qt Widgets GUI architecture and the UCI process boundary between
GUI and engine. - Added/kept GUI polish around app branding, centralized evaluation formatting,
board-adjacent evaluation bar, sidebar simplification, and palette-aware
contrast. - Updated version metadata to
0.2.0in CMake, GUI application metadata,
trainer package metadata, compliance docs, and macOS packaging. - Made macOS packaging derive its version from
CMakeLists.txtto reduce future
release drift. - Kept NNUE wording precise: the pipeline, C++ loading, scalar/NEON equivalence,
and trainer tooling exist, but no NNUE network is promoted for strength.
Validation Summary
The following checks were run during the v0.2 release preparation:
| Gate | Result |
|---|---|
cmake --build --preset debug --target localchessengine localchessengine_gui localchessengine_gui_tests |
PASS |
./build/debug/tests/localchessengine_gui_tests ./build/debug/engine/localchessengine |
PASS |
| GUI smoke snapshot: normal window | PASS, generated 2080x1440 PNG |
| GUI smoke snapshot: analysis window | PASS, generated 2080x1440 PNG |
ctest --preset debug --output-on-failure |
PASS, 2/2 tests |
python3 tools/run_validation_gate.py --profile smoke --out-dir build/validation/v0.2-smoke |
PASS |
| Release bench | PASS, deterministic signature 18417 nodes |
| CPW perft depth 4 in validation smoke | PASS, six reference positions |
| Cute Chess smoke in validation smoke | PASS, 2 games, no illegal moves/crashes/disconnects/timeouts/missing output |
cmake --preset release |
PASS |
cmake --build --preset release --target localchessengine localchessengine_gui |
PASS |
python3 tools/build_compliance_package.py --check |
PASS |
python3 -m py_compile for touched Python release/trainer scripts |
PASS |
git diff --check |
PASS |
Packaging Status
A local macOS DMG was generated and Developer ID signed:
build/release-package/LocalChessEngine-0.2.0.dmg
The package passed local codesign verification, embedded engine bench, packaged
GUI smoke, mounted-DMG engine bench, and mounted-DMG GUI smoke. Public binary
distribution is still pending because Apple notarization failed during the local
run with NSURLErrorDomain Code=-1009 / no network route to Apple notary
service. As a result, Gatekeeper reported Unnotarized Developer ID.
For GitHub v0.2.0, the release is published as a source release with these notes;
no notarized macOS binary asset is attached.
Explicit Non-Changes
- No engine move-generation, make/unmake, UCI, search, HCE, or NNUE runtime
behavior was retuned or promoted for v0.2. - No NNUE network is promoted for playing strength.
- No generated build directories, local datasets, checkpoints, logs, or package
outputs are source-controlled.
Known Risks And Follow-Ups
- Re-run
python3 tools/package_macos_release.py --skip-buildwhen Apple notary
network access is available, then verifyxcrun stapler validateand
spctl --assessbefore uploading a macOS DMG asset. BLK-002remains active; future NNUE releases need meaningful fixed-game/SPRT
evidence before changing defaults.- The selected public GitHub repository intentionally keeps release evidence
compact. Historical local validation outputs are summarized here rather than
publishing every generated report.