Repository navigation
🔧 Run engine CI on automated release-validation PRs - #2
Merged
Merged
Conversation
kettle-release opens a "release validation PR" before merging a release branch into main, titled "Release <branch-name>" — reusing whatever branch happened to be checked out rather than a conventionally-prefixed one. The JRuby/TruffleRuby job `if:` conditions only ran on PRs whose branch started with `engines/`, `jruby/`/`truffleruby/`, or `feature/release`, so a validation PR on an arbitrarily-named branch silently skips engine CI instead of validating the release. Add `startsWith(github.event.pull_request.title, 'Release ')` as an additional match alongside the existing branch-prefix checks, so engine CI runs for these release-validation PRs regardless of the branch name kettle-release reuses. Applied identically to every job in this repo that shares the condition. Same fix as galtzo-floss/turbo_tests2#50, scripted across the family instead of waiting for a full kettle-jem retemplate; also needs landing in the kettle-jem template itself. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01URwq1vEg3L7F3ddUr5eEn4
pboling
force-pushed
the
engines/fix-release-pr-ci-gate
branch
from
September 13, 2026 06:31
01c7358 to
0e3ce36
Compare
Bundler git sources must be fetchable anonymously over HTTPS. The SSH `git_source(:github)` recorded `git@github.com:` remotes in Gemfile.lock, which CI runners (no SSH key) cannot clone. This surfaced once setup-ruby-flash v2.2 began forcing `rv ci --force` on non-exact bundler cache restores. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P8aveNcdgPobyMrq8DkD9r
`github: "org/repo"` is built into Bundler and already resolves to https://github.com/org/repo.git, so redefining it is unnecessary. Gemfile.lock is unchanged (verified with `bundle lock --print`). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P8aveNcdgPobyMrq8DkD9r
json 3.0.2 (released 2026-09-09) arrives in the root bundle through rubocop and fails to build on TruffleRuby 22.3/23.0. Reuse the engine json pins there, inside generator_only so generated appraisal gemfiles are unaffected. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P8aveNcdgPobyMrq8DkD9r
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.
kettle-release opens a "release validation PR" before merging a release
branch into main, titled
Release <branch-name>— reusing whateverbranch happened to be checked out rather than a conventionally-prefixed
one. The JRuby/TruffleRuby job
if:conditions in the kettle-jemtemplates only ran on PRs whose branch started with
engines/,jruby//truffleruby/, orfeature/release, so a validation PR on anarbitrarily-named branch silently skipped engine CI instead of
validating the release (observed live on galtzo-floss/turbo_tests2#50).
Adds
startsWith(github.event.pull_request.title, 'Release ')as anadditional match alongside the existing branch-prefix checks, so engine
CI runs for these release-validation PRs regardless of the branch name
kettle-release reuses.
This is a scripted, family-wide interim patch of already-generated
workflow files, applied ahead of a kettle-jem release: the real fix is
merged at the template source (structuredmerge/structuredmerge-ruby#63)
but isn't in a released
kettle-jemversion yet, so a normal retemplatewouldn't pick it up.
🤖 Generated with Claude Code
https://claude.ai/code/session_01URwq1vEg3L7F3ddUr5eEn4