Repository navigation
ci: pin every GitHub-hosted Linux job to ubuntu-24.04 - #869
Conversation
GitHub rolled `ubuntu-latest` to Ubuntu 26.04 on 2026-10-24. Two jobs break on the new image: openai/codex-action's `drop-sudo` safety strategy fails before codex starts (upstream codex-action#188), so the AI PR review posted nothing on #868, and actions/python-versions has no Python 3.9 build for 26.04, so the 3.9 floor leg of the test matrix and the 3.9 wheel-test leg cannot set up. Replace `ubuntu-latest` with `ubuntu-24.04` in all ten active workflows (the same image every run used until yesterday) and record the pin and its un-pin conditions in docs/dev-status.md. No test or source change.
✅ Looks goodNo P0–P3 findings identified in the supplied diff. Executive summary
MethodologyNo findings. The Methodology Registry was consulted; no affected methods, equations, assumptions, weighting, or variance calculations require paper-level verification. Code QualityNo findings. Direct runner settings and matrix entries are updated consistently. No conditions still depend on PerformanceNo findings. The manylinux build containers remain unchanged. MaintainabilityNo findings. Tech DebtNo findings. The temporary compatibility constraint and its resolution criteria are documented. SecurityNo findings. The diff introduces no changes to permissions, action revisions, secrets handling, or sandbox settings. Documentation/TestsNo findings. CI-only changes do not require a user-facing changelog fragment. Validation confirmed that all 11 active workflows parse as YAML, all 23 Linux runner references use the intended labels, and both lint-pin consistency checks pass when executed directly. The full pytest suites could not run because pytest and scientific dependencies are absent from this environment. |
Summary
ubuntu-latestto Ubuntu 26.04 on 2026-10-24 (the docs(v4): PR 4b of the 4.0 cut - rebuild tutorials 02/04/05/07/23 on the TWFE event-study mode #867 review ran onubuntu-24.04on 10-23; the refactor(v4): PR 4c-i of the 4.0 cut - decouple the TWFE event-study mode from the MultiPeriodDiD containers and migrate the MPD-fixture suites #868 review ran onubuntu-26.04on 10-24 with the same workflow and action pin). Two jobs break on the new image:openai/codex-action'sdrop-sudosafety strategy fails before codex starts (runner is not a member of the sudo group/Could not restrict access to /run/dbus/system_bus_socket; upstream drop-sudo fails on Ubuntu 26.04 openai/codex-action#188, open since 2026-10-20), so the AI PR review job on refactor(v4): PR 4c-i of the 4.0 cut - decouple the TWFE event-study mode from the MultiPeriodDiD containers and migrate the MPD-fixture suites #868 died in under a second and posted nothing; andactions/python-versionshas no Python 3.9 build for 26.04, so the 3.9 floor leg of the test matrix and the 3.9 wheel-test leg cannot set up.ubuntu-latestwithubuntu-24.04in all ten active workflows (ai_pr_review,build-wheels,ci-gate,docs-tests,lint,lwdid-data-canary,mmm-interop,notebooks,publish,rust-test) - the image every run used until yesterday.ubuntu-24.04-armentries are untouched;claude-code-review.yml.disabledis left alone.docs/dev-status.md: a section recording the pin, the two breakages, and the un-pin conditions.Methodology references (required if estimator / math changes)
Validation
tests/test_doc_deps_integrity.py,tests/test_notebook_md_extract.py,tests/test_tracking_files.py,tests/test_openai_review.py(incl.TestLintWorkflowPinSync) andtests/test_changelog_fragments.pypass (677). Thepull_requestrun of this PR itself exercises the pinned review job.Security / privacy
Changelog
diff_diff/change.Follow-ups
main(itspull_requestreview run already failed).ubuntu-latestonly after codex-action#188 is fixed and a 3.9 build exists for 26.04, verified on a throwaway branch.