Repository navigation
fix(service): preserve unit when stop or unload fails - #469
Merged
mikamikasuki merged 1 commit intoOct 28, 2026
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
When
launchctl bootoutorsystemctl --user disable --nowfails,service.py removecurrently deletes the installed configuration and exits successfully. Require a successful manager command before unlinking the unit, preserving it for inspection and retry on failure.Fixes #391.
Validation: all 29 tests in
tests/test_cli_server.pypassed. Four new cases cover successful and failed removal for macOS and Linux command selection. They exercise real subprocess exit handling with harmless Python children and isolated home directories; both failure cases failed before the fix. No actual launchctl/systemctl service was modified. Full backend/frontend suites and live service-manager integration were not run.Prepared and submitted with Codex on behalf of SidiqB. The changed code and test results were inspected by the agent; this does not claim personal human review.