Repository navigation
fix(core-manager): sweep stale records whose pid was reused - #462
Merged
Merged
Conversation
Changed Files
|
CoreManager construction sweeps leftover epoch records and failed when a record's pid had been reused by an unrelated process, because the reaper could not prove ownership of the live pid. The GUI host panicked during setup and the service daemon could not start until the record was deleted by hand (clash-nyanpasu#6033). nyanpasu-utils 0.1.1 retires a record whose start token differs from the live process without signaling it, including processes of other users on Linux and macOS. Bumping it also brings the dirs 7 update already on its main branch. The regression test points a stale record at the running test process with another start token; CI now runs the sweep tests.
greenhat616
force-pushed
the
fix/stale-pid-reuse
branch
from
October 28, 2026 09:30
20a38b2 to
a7e6f79
Compare
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.
Depends on libnyanpasu/nyanpasu-utils#209 — merge that first. The gitlink here points at its head
573d792, which stays reachable after a standard merge.Fixes the runtime side of libnyanpasu/clash-nyanpasu#6033.
Problem
CoreManagerconstruction sweeps leftover epoch records. When a record's pid had been reused by an unrelated process, the reaper returned "cannot prove ownership of live pid", construction failed, the GUI host panicked in setup, and the service daemon could not start until the record was deleted by hand.Change
nyanpasu-utilsto 0.1.1, which retires a record whose start token differs from the live process without signaling it (including another user's process on Linux and macOS). The bump also brings thedirs7 update already on utilsmain.manager_sweeps_a_stale_record_whose_pid_was_reused: a stale record points at the running test process with another start token; construction succeeds and the epoch artifacts are swept.Verified on Linux (WSL): both sweep tests pass; no new Clippy warnings in the changed files.
After merging, v2.0.2 needs to be published through the publish workflow so the app can pin it together with the service sidecar.