Repository navigation
Releases: SUSTechHSAS/sumzle-hpc-solver
Release list
v1.0.0
Combined release archives
Each archive bundles the backend binary AND the pre-built web
frontend — unpack and run, no build step required.
| Platform | Archive |
|---|---|
| Linux x86_64 | sumzle-solver-linux-x86_64.tar.gz |
| Linux ARM64 | sumzle-solver-linux-aarch64.tar.gz |
| Windows x86_64 | sumzle-solver-windows-x86_64.zip |
| macOS x86_64 | sumzle-solver-macos-x86_64.tar.gz |
| macOS ARM64 | sumzle-solver-macos-aarch64.tar.gz |
Quick start
Unix (Linux / macOS):
tar -xzf sumzle-solver-<platform>.tar.gz
cd sumzle-solver-<platform>
./run.shWindows:
Expand-Archive sumzle-solver-windows-x86_64.zip
cd sumzle-solver-windows-x86_64
run.batThen open http://localhost:3000 in your browser. The backend
automatically serves the bundled frontend from frontend/dist.
See the in-archive README.md for CLI usage and advanced options.
What's Changed
- ci: trigger workflow on tag pushes for automatic releases by @SUSTechHSAS in #6
- fix: correct factorial '!' operator enumeration with empty constraints by @SUSTechHSAS in #7
- feat(ci): add benchmark comparison with main branch for PR checks by @SUSTechHSAS in #8
- Add streaming + top-N output to bound memory and scale parallelism by @Kibiandkimi in #10
- chore: remove accidentally committed skills directory by @SUSTechHSAS in #13
- Add CodeQL workflow for code analysis by @Kibiandkimi in #14
- Optimize solver hot paths and fix distributed constraint handling by @SUSTechHSAS in #9
- ci: benchmark PR9 top-N and streaming modes against main by @SUSTechHSAS in #16
- ci: bundle backend + frontend in release archives by @SUSTechHSAS in #17
- Fix top-N char probabilities to use full solution set; remove length cap by @Kibiandkimi in #15
- ci: grant contents:write to release job (hotfix for v1.0.0-beta release) by @SUSTechHSAS in #18
- Refactor frontend with Impeccable design pass by @SUSTechHSAS in #24
- Add MIT License to the project by @SUSTechHSAS in #25
- fix: top-N total found count (#19) + server memory release via mimalloc (#20) by @SUSTechHSAS in #26
- fix: serve -h debug panic, memory regression test, allocator in lib by @SUSTechHSAS in #28
- fix(frontend): cap expression length to prevent UI freeze (#29) by @SUSTechHSAS in #30
- fix(frontend): keep row buttons in place when length error shows (#31) by @Kibiandkimi in #32
- fix(frontend): take length error out of flow so buttons never shift (#33) by @SUSTechHSAS in #34
New Contributors
- @Kibiandkimi made their first contribution in #10
Full Changelog: v0.2.0...v1.0.0
v1.0.0-beta
Combined release archives
Each archive bundles the backend binary AND the pre-built web
frontend — unpack and run, no build step required.
| Platform | Archive |
|---|---|
| Linux x86_64 | sumzle-solver-linux-x86_64.tar.gz |
| Linux ARM64 | sumzle-solver-linux-aarch64.tar.gz |
| Windows x86_64 | sumzle-solver-windows-x86_64.zip |
| macOS x86_64 | sumzle-solver-macos-x86_64.tar.gz |
| macOS ARM64 | sumzle-solver-macos-aarch64.tar.gz |
Quick start
Unix (Linux / macOS):
tar -xzf sumzle-solver-<platform>.tar.gz
cd sumzle-solver-<platform>
./run.shWindows:
Expand-Archive sumzle-solver-windows-x86_64.zip
cd sumzle-solver-windows-x86_64
run.batThen open http://localhost:3000 in your browser. The backend
automatically serves the bundled frontend from frontend/dist.
See the in-archive README.md for CLI usage and advanced options.
What's Changed
- ci: trigger workflow on tag pushes for automatic releases by @SUSTechHSAS in #6
- fix: correct factorial '!' operator enumeration with empty constraints by @SUSTechHSAS in #7
- feat(ci): add benchmark comparison with main branch for PR checks by @SUSTechHSAS in #8
- Add streaming + top-N output to bound memory and scale parallelism by @Kibiandkimi in #10
- chore: remove accidentally committed skills directory by @SUSTechHSAS in #13
- Add CodeQL workflow for code analysis by @Kibiandkimi in #14
- Optimize solver hot paths and fix distributed constraint handling by @SUSTechHSAS in #9
- ci: benchmark PR9 top-N and streaming modes against main by @SUSTechHSAS in #16
- ci: bundle backend + frontend in release archives by @SUSTechHSAS in #17
- Fix top-N char probabilities to use full solution set; remove length cap by @Kibiandkimi in #15
- ci: grant contents:write to release job (hotfix for v1.0.0-beta release) by @SUSTechHSAS in #18
New Contributors
- @Kibiandkimi made their first contribution in #10
Full Changelog: v0.2.0...v1.0.0-beta
v0.2.0
What's New in v0.2.0
🎯 Character Probability
- Compute character probabilities across all solutions
- Visual probability bars in the frontend
- Sorted by probability descending
⭐ Recommended Solution
- Algorithm scores solutions by character probability
- Top 5 most probable characters get a bonus
- Recommended solution highlighted in blue
📊 High-Performance Result List
- Virtual scroll rendering for large result sets
- 500 item display limit for smooth scrolling
- Instant search/filter within results
📥 Result Download
- Download results in JSON, CSV, or TXT format
- Client-side Blob generation (no server re-computation)
- Server
/api/downloadendpoint accepts pre-computed results
🎨 Frontend Redesign
- Two-column layout matching the reference design
- Dark/Light theme toggle
- Animated gradient title
- Virtual keyboard for on-screen input
- Game state import from JSON
- Responsive CSS with custom properties
🔧 Backend Improvements
compute_char_probabilities()public functioncompute_recommended()public function/api/downloadrefactored to useDownloadRequest- 48 Rust tests passing
- 45 frontend tests passing
🏗️ CI Improvements
- Fixed Criterion benchmark CI (
--bench benchmarkflag) - All checks pass: Check, Test (Ubuntu/macOS/Windows), Frontend, Benchmark
📦 Artifacts
sumzle-solver-linux-x86_64— Linux x86_64 binaryfrontend-dist.tar.gz— Pre-built frontend static files
Note: Cross-compiled binaries (ARM Linux, Windows, macOS) are not included in this manual release due to build environment limitations. Use the CI workflow with tag triggers for full multi-platform builds.
v0.1.0
sumzle-hpc-solver v0.1.0
Initial release with web frontend support.
Features
- Rust solver backend with Axum web server
- React + TypeScript + Vite frontend
- REST API endpoints:
/api/solve,/api/validate,/api/eval - Static file serving for frontend assets
- Configurable thread count for parallel solving
Bug Fixes
v0.1.0-alpha
fix: handle empty string char from frontend blank tiles Frontend sends char: "" for blank/empty tiles, but the Rust char type requires exactly one character. Changed SolveTile.char from char to String, and handle conversion in to_guess_row() by mapping empty strings to null character with Empty state. Fixes: rows[0].tiles[0].char: invalid value: string "", expected a character Added tests: - test_solve_with_blank_tiles: exact scenario from bug report - test_solve_with_partial_blank_tiles: mixed filled/blank tiles - test_solve_tile_empty_char: unit test for empty char deserialization - test_solve_row_with_blank_tiles_to_guess_row: conversion logic