Skip to content

Conversation

@workos-sdk-automation
Copy link
Contributor

Summary

  • Set include-component-in-tag: false in release-please-config.json so future tags are v6.1.0 instead of workos/v6.1.0
  • Update VERSION extraction in release.yml to handle both tag formats as a safety net

Context

The v6.1.0 release (publish run) failed because:

  1. Release Please created a tag workos/v6.1.0 (component-prefixed)
  2. The publish workflow derived VERSION via ${GITHUB_REF_NAME#v}workos/v6.1.0 (no leading v to strip)
  3. gem push looked for pkg/workos-workos/v6.1.0.gem which doesn't exist

Test plan

🤖 Generated with Claude Code

Release Please was creating tags like `workos/v6.1.0` instead of
`v6.1.0` because `include-component-in-tag` defaults to true. This
caused the publish workflow to look for `pkg/workos-workos/v6.1.0.gem`
instead of `pkg/workos-6.1.0.gem`.

- Set `include-component-in-tag: false` in release-please-config.json
- Update VERSION extraction in release.yml to handle both tag formats

Co-Authored-By: Claude Opus 4.6 <[email protected]>
@workos-sdk-automation workos-sdk-automation bot requested a review from a team as a code owner February 10, 2026 19:26
@workos-sdk-automation workos-sdk-automation bot requested review from ericroberts and removed request for a team February 10, 2026 19:26
@gjtorikian gjtorikian merged commit 344021d into main Feb 10, 2026
8 checks passed
@gjtorikian gjtorikian deleted the fix-release-tag-format branch February 10, 2026 19:27
@greptile-apps
Copy link

greptile-apps bot commented Feb 10, 2026

Greptile Overview

Greptile Summary

This PR updates release automation so release-please generates simple vX.Y.Z tags (via include-component-in-tag: false) and adjusts the Release GitHub Actions workflow to derive the gem version from the tag name before building/publishing.

The intent is to prevent gem publishing failures when tags are component-prefixed (e.g. workos/v6.1.0) by normalizing the tag into the version used to locate pkg/workos-<version>.gem for gem push.

Confidence Score: 2/5

  • Not safe to merge as-is; the publish workflow will likely fail for the new tag format.
  • The new bash parameter expansion used to extract VERSION does not strip the leading v for tags like v6.1.0, so the workflow will try to push a non-existent gem filename (workos-v6.1.0.gem).
  • .github/workflows/release.yml

Important Files Changed

Filename Overview
.github/workflows/release.yml Updates VERSION derivation for tag parsing, but new parameter expansion breaks the intended vX.Y.Z tag format (would push pkg/workos-vX.Y.Z.gem).
release-please-config.json Sets include-component-in-tag: false so release-please creates simple vX.Y.Z tags; change looks consistent with stated goal.

Sequence Diagram

sequenceDiagram
  participant GitHub as GitHub Releases
  participant Workflow as .github/workflows/release.yml
  participant Rake as rake build
  participant RubyGems as RubyGems

  GitHub->>Workflow: release.published (GITHUB_REF_NAME = tag)
  Workflow->>Workflow: VERSION = parse(GITHUB_REF_NAME)
  Workflow->>Rake: bundle exec rake build
  Rake-->>Workflow: pkg/workos-<version>.gem
  Workflow->>RubyGems: gem push pkg/workos-${VERSION}.gem
  RubyGems-->>Workflow: success/failure
Loading

Copy link

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

2 files reviewed, 1 comment

Edit Code Review Agent Settings | Greptile

Comment on lines +38 to 40
VERSION="${GITHUB_REF_NAME##*/v}"
bundle exec rake build
gem push pkg/workos-${VERSION}.gem --host https://rubygems.org
Copy link

Choose a reason for hiding this comment

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

VERSION parsing breaks v-tags

VERSION="${GITHUB_REF_NAME##*/v}" only strips the prefix when the ref name contains a path segment ending in /v (e.g. workos/v6.1.0). For the intended new tag format v6.1.0, this leaves VERSION as v6.1.0, so the workflow will try to gem push pkg/workos-v6.1.0.gem (which won’t exist if the built gem is pkg/workos-6.1.0.gem). To support both formats, VERSION needs to normalize both vX.Y.Z and */vX.Y.Z to X.Y.Z.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

1 participant