Skip to content

scaleset: reap timed-out runners stuck in failed status#813

Merged
gabriel-samfira merged 1 commit into
cloudbase:mainfrom
nexthop-ai:fix/scaleset-reap-failed-runners
Jul 7, 2026
Merged

scaleset: reap timed-out runners stuck in failed status#813
gabriel-samfira merged 1 commit into
cloudbase:mainfrom
nexthop-ai:fix/scaleset-reap-failed-runners

Conversation

@benoit-nexthop

@benoit-nexthop benoit-nexthop commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

reapTimedOutRunners only considered runners in pending/installing RunnerStatus as eligible for reaping. A runner whose agent reports a failure (RunnerStatus set to failed via AddInstanceStatusMessage) was never pending/installing again, and would never register as idle/active in GitHub either, so it was permanently excluded from this check and leaked forever (the instance never transitioned to pending_delete).

This change allows RunnerFailed through the same eligibility check. Downstream logic still requires the runner be missing from GitHub or reported offline there before reaping, unchanged.

reapTimedOutRunners only considered runners in pending/installing
RunnerStatus as eligible for reaping. A runner whose agent reports a
failure (RunnerStatus set to failed via AddInstanceStatusMessage) was
never pending/installing again, and would never register as idle/active
in github either, so it was permanently excluded from this check and
leaked forever (instance never transitioned to pending_delete).

Allow RunnerFailed through the same eligibility check. Downstream
logic still requires the runner be missing from github or reported
offline there before reaping, unchanged.
@benoit-nexthop benoit-nexthop marked this pull request as ready for review July 7, 2026 12:54
@gabriel-samfira gabriel-samfira merged commit f8e2c6c into cloudbase:main Jul 7, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants