Skip to content

fix(release-please): handle label-race gracefully with error guard#241

Open
JacobPEvans wants to merge 2 commits intomainfrom
fix/release-please-label-race
Open

fix(release-please): handle label-race gracefully with error guard#241
JacobPEvans wants to merge 2 commits intomainfrom
fix/release-please-label-race

Conversation

@JacobPEvans
Copy link
Copy Markdown
Owner

@JacobPEvans JacobPEvans commented Apr 27, 2026

Summary

Fixes a race condition where googleapis/release-please-action@v5 fails with "Could not resolve to a node" when applying the autorelease: pending label immediately after PR creation (the PR's node ID hasn't propagated yet). The fix tolerates the initial failure and adds a guard step that re-fails only on genuine errors (auth, config, API issues).

Changes

  • .github/workflows/_release-please.yml:
    • Add continue-on-error: true to the release-please step with explanatory comment
    • Add downstream guard step that re-fails when release-please errors AND REST lookup finds no PR, catching genuine failures
    • Silences cosmetic label failures that self-heal on the next run

Test Plan

  • Trigger a release-please run and confirm the job succeeds despite label-application timing issues
  • Confirm the release PR is still created and processed normally
  • Verify that genuine auth/config/API failures still cause the workflow to fail (via guard step)

Related: #234

🤖 Generated with Claude Code

…-error

The googleapis/release-please-action@v5 step opens the release PR
successfully but then immediately tries to apply `autorelease: pending`
via GraphQL. The PR's global node ID hasn't propagated yet at that point,
so GitHub returns "Could not resolve to a node" — failing the job even
though the PR was created correctly.

Adding `continue-on-error: true` lets the downstream `Find release PR
number` step discover the PR via REST and continue normally. The missing
label is cosmetic; release-please re-applies it on the next run.

(claude)
Copilot AI review requested due to automatic review settings April 27, 2026 11:58
@gemini-code-assist
Copy link
Copy Markdown

Note

Gemini is unable to generate a summary for this pull request due to the file types involved not being currently supported.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the reusable release-please workflow to avoid failing the entire job when googleapis/release-please-action@v5 intermittently errors while applying the autorelease: pending label.

Changes:

  • Add continue-on-error: true to the googleapis/release-please-action@v5 step.
  • Add an explanatory comment describing the label-application race condition.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/_release-please.yml
continue-on-error masks all release-please failures, not just the transient
label-application race. Add a guard step that re-fails the job when the
release step errored AND the downstream REST lookup finds no release PR —
distinguishing a genuine auth/config/API failure from the harmless race.

(claude)
@JacobPEvans JacobPEvans changed the title fix(release-please): tolerate label-application race with continue-on-error fix(release-please): handle label-race gracefully with error guard Apr 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants