Repository navigation
SysManager 1.56.8
[1.56.8] - 2026-08-04
Version 1.56.7 was tagged but never published: its release run failed at the unit-test
gate, so no binary, notes, or announcement for it exist. The tag is retained rather than
moved, and the work below ships here instead.
Fixed
- Restored Performance Mode's persisted
Restore Allafter an app restart. Snapshot persistence added in #431 loaded the saved baseline only when the user applied another change. Reopening SysManager therefore leftRestore Alldisabled even though%LocalAppData%\SysManager\performance-snapshot.jsonstill held the original settings. Performance Mode now rehydrates that snapshot first during initialization under the existing snapshot gate, so the recovery action becomes available without waiting for livepowercfgprobes and without racing a concurrent Apply. - Made old recovery points clear and testable. New snapshots record their UTC capture time and show it in local time in the
Restore Allconfirmation, while snapshots created by older releases remain loadable with an explicit unknown-time label. Snapshot storage now has an injected test directory, and regression coverage recreates an app restart with a second service instance, verifies the real command reaches confirmation, and keeps legacy JSON compatible without touching the user's profile. - Hardened the persisted recovery boundary and failure semantics. Snapshot files are size-bounded, require a complete non-duplicated schema, and reject malformed GUIDs, spoofable plan names, out-of-range processor values, and unsafe GPU subkeys before enabling restore. Power-plan, processor, and GPU restore failures now remain failures instead of reporting success and deleting the only recovery point; failed snapshot saves prevent any setting change, and failed cleanup keeps
Restore Allavailable for a retry. - Made the Performance Mode lock-guard test deterministic. The guard test seeded the recovery snapshot while initialization was still loading the persisted one, and that load's deferred assignment overwrote the seeded value. On a fast machine the load finished first and the test passed; on a slower one it did not, so
Restore Allreported "nothing to restore" and never reached the guard under test. The test now waits for initialization before seeding. Test-only change, no effect on shipped behavior.
Verify the download
Get-FileHash .\SysManager-v1.56.8.exe -Algorithm SHA256Expected SHA256: 059059E44583941C4F408E779F91E75DE1A23ECF3D6CC10593AF6768B7F1A097
This build is not code-signed, so Windows will warn on first launch. That is
expected for a small independent app: see what the warning says and what to
click.
Verify where this binary came from
This exe was built by GitHub Actions from this public source, and the build is
recorded in the Sigstore public transparency log. With the
GitHub CLI:
gh attestation verify .\SysManager-v1.56.8.exe --repo laurentiu021/SystemManagerThat proves which commit and workflow produced this exact binary, something the
SHA256 file cannot show, since it is published alongside the exe it describes.
Each release also ships SysManager-v1.56.8.sbom.json, a CycloneDX inventory of
every dependency resolved for this build.