mirror of
https://github.com/ilya-zlobintsev/LACT.git
synced 2026-08-19 01:14:43 -05:00
* feat: add hold/release cookie mechanism for profile state management Clients that need to temporarily activate a profile had no safe way to restore the previous state on cleanup, and concurrent clients would silently overwrite each other's profile choice. Introduce HoldProfile/ReleaseProfile commands modelled after power-profiles-daemon's HoldProfile/ReleaseProfile API. Acquiring a hold activates the requested profile and returns an opaque cookie; the previous state is saved automatically. Releasing the cookie restores it. Multiple concurrent holds are supported with last-write-wins semantics — releasing the active hold falls back to the next most recent one, and releasing the last hold restores the original state. If the client connection drops without releasing, the hold is released automatically. * fix: extract type aliases for profile hold fields * refactor: remove requester field from HoldProfile request * refactor: improve hold lifecycle signalling