chore(ci): read python pin from pyproject.toml instead of hardcoding per workflow - #59478
Closed
rnegron wants to merge 1 commit into
Closed
chore(ci): read python pin from pyproject.toml instead of hardcoding per workflow#59478rnegron wants to merge 1 commit into
rnegron wants to merge 1 commit into
Conversation
Member
Author
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
This was referenced May 21, 2026
Contributor
Query snapshots: Backend query snapshots updatedChanges: 1 snapshots (1 modified, 0 added, 0 deleted) What this means:
Next steps:
|
rnegron
force-pushed
the
pr-4-python313-workflow-refactor
branch
from
May 26, 2026 14:49
c3f7029 to
cfecfe8
Compare
rnegron
force-pushed
the
pr-3-python313-cutover
branch
2 times, most recently
from
May 26, 2026 17:45
f26a985 to
dccfd86
Compare
rnegron
force-pushed
the
pr-4-python313-workflow-refactor
branch
from
May 26, 2026 17:45
cfecfe8 to
e4268b2
Compare
rnegron
force-pushed
the
pr-3-python313-cutover
branch
from
May 26, 2026 19:44
9176547 to
dbc0768
Compare
rnegron
force-pushed
the
pr-4-python313-workflow-refactor
branch
from
May 26, 2026 19:44
e4268b2 to
bb5ca2d
Compare
rnegron
changed the base branch from
pr-3-python313-cutover
to
graphite-base/59478
May 26, 2026 20:24
rnegron
force-pushed
the
graphite-base/59478
branch
from
May 26, 2026 20:24
dbc0768 to
ee94c87
Compare
rnegron
force-pushed
the
pr-4-python313-workflow-refactor
branch
from
May 26, 2026 20:24
bb5ca2d to
268610b
Compare
rnegron
force-pushed
the
pr-4-python313-workflow-refactor
branch
from
May 26, 2026 20:25
268610b to
ffa43c8
Compare
rnegron
force-pushed
the
pr-2b-python313-uv
branch
from
May 26, 2026 20:25
ee94c87 to
294636e
Compare
webjunkie
reviewed
May 27, 2026
webjunkie
left a comment
Contributor
There was a problem hiding this comment.
We might have already tried this, and it was part of rate limit issues.
Since with just giving the file, it must read the file and then figure out what version matches from the specified range and this hit the rate limits.
Might be fixed now or not, I dunno
rnegron
force-pushed
the
pr-4-python313-workflow-refactor
branch
from
May 27, 2026 16:49
ffa43c8 to
7d4ef08
Compare
rnegron
force-pushed
the
pr-2b-python313-uv
branch
from
May 27, 2026 16:49
294636e to
855f6b6
Compare
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.

Problem
CI workflows hardcode the Python version (~14 pins across 10 workflows), so every patch bump has to touch all of them. This converts them to read the version from
pyproject.tomlinstead. Landing it before the cutover (#59440) means that bump becomes a singlerequires-pythonchange which every workflow picks up automatically — no per-workflow Python edits in the cutover.Changes
python-version:pins →python-version-file:pointing at the appropriatepyproject.toml(root,services/llm-gateway/, ortools/hogli/)."python-version"strings in theci-backend.ymljq matrix builder → derived once at job runtime frompyproject.tomlviagrep + jq --arg pv.pyproject.toml) instead of ~14.How did you test this code?
Agent-authored. YAML syntax check on the modified workflows;
grepconfirms zero remaining hardcodedpython-versionpins across.github/workflows/. No runtime test — depends on CI runners exercising the conversion. At this point in the stackpyproject.tomlstill pins 3.12.12, so the workflows resolve to 3.12.12; the cutover then flips it to 3.13.13 and they follow.Publish to changelog?
no
🤖 Agent context
Part of the python 3.13 stack: deps (#59439) → uv (#60144) → this → cutover (#59440). Reordered before the cutover (originally sat after it) so the bump stays a clean
pyproject.tomlflip and this refactor is reviewable on its own.