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 <noreply@anthropic.com>
@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

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant