v1.1.0
Reliability release: every finding from a deep code review of the initial version, fixed.
Fixed
- bcdedit failures were reported as success. PowerShell 5.1 never throws on a native command's nonzero exit code, so a locked or corrupt BCD store still printed
[OK]and "REBOOT REQUIRED". All bcdedit calls (apply,-Undo, BCD export) now check the exit code and surface the actual error. -Undochain never progressed past the newest snapshot. Thetimer_undo_*.jsonfilter also matched already-applied*.applied.jsonfiles, so repeated-Undokept re-applying the same file. Applied files are now excluded and snapshots sort by their name stamp.- Holder task could bind to the wrong user. When a standard user elevated with a separate admin account, the logon trigger and principal were created for the admin. The pre-elevation user is now forwarded through the relaunch and the task gets an explicit Interactive principal.
- Re-selecting the holder tweak silently destroyed an existing task. A pre-existing task's XML is now saved in the undo file, and
-Undorestores the previous definition instead of just deleting the task. - Localized BCD values could break undo. Recognized localized Yes/No tokens are canonicalized before being stored (bcdedit
/setonly accepts invariant tokens); unrecognized values are shown verbatim in the grid instead of masquerading as "default". - Windows PowerShell 5.1 misread the script. Saved as UTF-8 with BOM so the non-ASCII regex tokens parse correctly under powershell.exe.
Improved
- After each
-Undothe script reports how many older undo files remain. - The
-Holdtask re-asserts the resolution request hourly (Windows 11 coalesces requests from background processes) and the status output flags when the holder has no system-wide effect yet. - System state is re-read after the tweak grid closes, so the undo file records the actual pre-change values.
- Per-tweak backup/undo/apply logic now lives in a single definition table - one place to extend, nothing to drift apart.