Repository navigation
💡 Runner Version Deprecation Lifecycle Compliance Gate #1070
Replies: 2 comments
Weekly UpdateWhat ChangedTwo significant developments since last update:
Updated Assessment
RecommendationAdvance — with immediate action on Node 24. The new Runner Deprecation API provides the programmatic foundation this idea needs. Immediate priority: audit all org workflows and pinned actions for Node 24 compatibility before the September 23 hard deadline. Use |
Weekly UpdateWhat ChangedGitHub shipped the Runner Version Deprecation REST API on September 3, 2026, providing the exact capability this proposal envisioned:
This API allows the compliance audit to programmatically check whether any self-hosted runner in the fleet is approaching deprecation, rather than relying on manual tracking or runner-image changelogs. Changelog Additionally, a related update: GitHub now includes immutable subject claims for OIDC tokens (repos created after July 15, 2026 use immutable identifiers), strengthening the security foundation for runner-to-cloud authentication. Updated Assessment
RecommendationAdvance. The REST API eliminates the main feasibility blocker. Recommend adding a runner deprecation check to the weekly compliance audit: query the API for each runner version in use, flag any version within 30 days of |
Uh oh!
There was an error while loading. Please reload this page.
Summary
GitHub's new Runner Deprecation API (September 2026) exposes deprecation timelines for self-hosted runner versions, and full enforcement of minimum version requirements begins September 25, 2026. This proposes an org-wide compliance check that queries this API, warns about approaching deprecations, and fails CI when a runner version is within N days of its
runtime_deprecates_atdate — preventing enforcement-day breakage across the fleet.Market Signal
GET /actions/runners/deprecations/{version}endpoint returnsrunner_version,runtime_deprecates_at, andregistration_deprecates_atat repo/org/enterprise levelUser Signal
Technical Opportunity
The new REST API provides the data; the existing compliance-audit.sh framework provides the execution model. A lightweight check can:
GET /actions/runners/deprecations/{version}for each runner version in useruntime_deprecates_atThe canary-ring pattern provides a safe rollout path for the gate itself. The pattern generalizes to GitHub-hosted runner image deprecations (which directly affected this org via #867).
Assessment
Adversarial Review
Strongest objection: petry-projects primarily uses GitHub-hosted runners, not self-hosted runners. The enforcement deadline doesn't directly affect GitHub-hosted runner users.
Rebuttal: Even with GitHub-hosted runners, the org's CI standards are consumed by downstream repos that may use self-hosted runners (or may in the future). The same pattern applies to GitHub-hosted runner image deprecations (the ubuntu-24.04 transition), which DID affect petry-projects directly (#867). The gate is a general "runner lifecycle awareness" mechanism, not just for self-hosted. Codifying it in
standards/means the fleet is protected proactively, and the compliance check catches problems before they manifest as broken CI.Suggested Next Step
Add a
runner-version-deprecationcheck tocompliance-audit.shthat queries the new API and reports runners within 30 days of deprecation. Include in the next compliance audit cycle. Use the existing compliance finding format so findings are tracked as issues.All reactions