Repository navigation
runner-hook: a signing job waits out an earlier job's leftover processes in any runner's _work - #1738
Merged
Merged
Conversation
…ses in any runner's _work A runner whose listener died mid-job shows offline and not busy, its units go with its Runner.Worker, yet its steps can still run. cmux's signing picker now offers a mini with such runners, so the exclusive class also requires that no process of this user outside this job works in or names a runner's _work; it waits for them like for units (300 s at most), then is refused. Pins the hook's new sha256 in glaeda-disk. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-85ca59f74f02d81734c3
Owner
Author
|
Owned by an agent session · session |
…ng job Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?id=aid-85ca59f74f02d81734c3
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.
A signing job (the exclusive class) is now admitted only when no leftover job process is still working on the mini, not just when every capacity unit is free.
Leo, 2026-10-28, on the release signing jobs running on owned Macs: "ok. idk what the "risk" was before but like.. we can just read the code and stuff." The rule: the job claims the Mac exclusively, so nothing else runs beside it.
Why: cmux's signing picker is about to offer a mini whose offline runners GitHub calls idle. glaeda parks most of a mini's runners offline, and counting those as busy left no mini ever drained. A runner whose listener died mid-job looks the same: offline, not busy, and its units released with its Runner.Worker. But the steps it started can still be running.
Change:
_work(actions-runner-glaeda*/_work,glaeda-runner/_work).Test: test_a_signing_job_waits_out_an_offline_runners_leftover_job_and_the_host_lock.
_workgets the job refused, with the leftover's pid named, no GLAEDA_JOB_CLAIM written, and everything it took released.Agent session: agent session
🤖 Generated with Claude Code