What
The runner gains a set of flags for managing how long it lives. --retire-at (or SELF_HOSTED_RUNNER_RETIRE_AT, an absolute Unix timestamp in seconds) releases active sessions, stops accepting new work and exits 0. --release-idle-session-min and --startup-timeout-min (default 15) are watchdogs, --kill-session-after-min waits for the current turn to finish first, and --drain-wait-sec sets drain time.
Details
--drain-wait-bg-tasks-secis a deprecated alias for--drain-wait-sec.--push-outcome-on-releasepushes the session's tracked outcome branches to the source remote when a session ends without completing, and fetches them back if that session later resumes on a fresh worker.- Retirement releases sessions through the same path as idle release.
- Release outcomes are reported through telemetry named
self_hosted_release_session, with reasons includingreleased_false_backstop.
Evidence
Strings lifted out of the shipped bundle, so the claim above can be checked against them.
One source agreesOne thing we can check says the same as this entry.
The name it cites is new in this build
New in this build: SELF_HOSTED_RUNNER_RETIRE_AT