ci(repo): fix dependabot ignore syntax for openai/codex-action - #6542
Merged
Conversation
#6538's `versions: ["1.12.x"]` never actually blocked anything: this ecosystem's ignore versions are parsed as Ruby Gem::Requirement (RubyGems comparator syntax), not npm-style semver ranges, so "1.12.x" parsed as a literal (never-matching) version string. Confirmed live 9 minutes after #6538 merged: Dependabot opened #6541 proposing the exact v1.12 bump we were trying to block. Use a real comparator range instead, verified against the actual Gem::Requirement parsing logic.
Contributor
There was a problem hiding this comment.
🤖 AI Review
The Dependabot comparator change is functionally correct. Both reviews completed; Codex reported no findings. Claude’s two documentation/maintainability nits are confirmed: the provenance comment ambiguously cites the bump rather than the failed ignore change, and the whole-line exclusion can hide a corrective 1.12 patch.
Findings
| Severity | Location | Category | Sources | Claim |
|---|---|---|---|---|
| ⚪ NIT | .github/dependabot.yml:25 |
documentation |
claude | The provenance comment associates the failed prior ignore attempt with PR #6541, although #6538 introduced the ineffective 1.12.x rule and #6541 was the subsequent Dependabot bump demonstrating that failure. |
| ⚪ NIT | .github/dependabot.yml:28 |
maintainability |
claude | Ignoring the complete 1.12 release line also suppresses notification of any future 1.12 patch containing the upstream fixes, while the adjacent guidance only discusses evaluating v1.13 or later. |
Stats
Claude findings: 2 · Codex findings: 0 · Confirmed: 2 · Refuted: 0 · Uncertain: 0
Models: claude-opus-5 + gpt-5.6-sol · Trigger: auto · Workflow run
This review runs once per PR. A maintainer can request another with a /ai-review comment.
jgoux
approved these changes
Sep 9, 2026
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.
What kind of change does this PR introduce?
CI reliability fix (follow-up to #6538).
What is the current behavior?
#6538 re-pinned
openai/codex-actionto v1.11 and added a Dependabot ignore entry scoped toversions: ["1.12.x"], intending to still let Dependabot propose v1.13+ once the upstream hang bugs (openai/codex-action#151, #160) are fixed, while blocking the known-bad v1.12 line specifically.That scoping never actually worked. 9 minutes after #6538 merged, Dependabot opened #6541 proposing the exact v1.12 bump we were trying to block — config propagation wasn't the issue; the
versionssyntax was. Thegithub-actionsecosystem'signore.versionsstrings are parsed as RubyGem::Requirement(RubyGems comparator syntax:>= x,~> x, etc.), not npm-style semver ranges."1.12.x"isn't a wildcard in that grammar — it parses as a literal version string with an implicit=operator, which never equals the real dependency version ("1.12"), so the ignore condition silently never matched anything.Verified directly against the actual parsing logic dependabot-core uses (
Dependabot::GithubActions::Requirement, a thin wrapper aroundGem::Requirement):What is the new behavior?
Replace
versions: ["1.12.x"]withversions: [">= 1.12, < 1.13"]— a real Gem::Requirement comparator range, confirmed to correctly match the 1.12 line (including any 1.12.x patch) while excluding v1.11 and v1.13+. #6541 should be closed as superseded once this merges.