Repository navigation
chore: pin changelog-action to the version that parses commit subjects only - #205
Merged
Merged
Conversation
There was a problem hiding this comment.
No issues found across 1 file
Confidence score: 5/5
- Automated review surfaced no issues in the provided summaries.
- No files require special attention.
Shadow auto-approve: would auto-approve. Pins the release workflow's changelog-action to a fixed version that parses commit subjects only, addressing the parser failure that blocked tagging v2.960.7. This is a bounded CI tooling fix that preserves changelog output for commits that already parsed.
View guided diff | Turn on auto-fix | Re-trigger cubic
speakeasybot
approved these changes
Nov 9, 2026
speakeasybot
left a comment
Contributor
There was a problem hiding this comment.
Auto-approved: review:bypass label applied by @2ynn. Required status checks still gate this merge.
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
[skip changelog]
Why
The release for #204 failed at "Finalize release version" with
The first changelog entry does not match the release source, so v2.960.7 was never tagged: https://github.com/speakeasy-api/openapi-generation/actions/runs/42701453993/job/129447302255The "Update CHANGELOG" step runs
speakeasy-api/changelog-action, pinned to 40b363f. That version passes the full commit message to@conventional-commits/parser@0.4.1. The parser reads a body line made of a single word followed by an opening parenthesis, with the closing parenthesis on a later line, as atype(scope)token, and throws. The squash commit of #204 carries a multi-line Python call in its body, so the action logged it as[INVALID]and skipped it. The other commits in the range weredocs:andci:, which are excluded types, so no changelog entry was written and the finalize script rejected the changelog.The "Conventional Commits" step uses a different parser, accepted the same commit, and computed v2.960.7. The two steps disagreed.
What changed
speakeasy-api/changelog-actionto dc59e58 (fix: parse only subject line to avoid body-content parser failures changelog-action#1). It parses only the subject line for type, scope and subject, and detectsBREAKING CHANGEfooters with a regex over the full message. The action never used the parsed body for anything else, so changelog output is unchanged for commits that already parsed.Testing
@conventional-commits/parser@0.4.1on the three commits in the failed release range. Full message: the fix(python): resolve enum discriminator tags in dict union input #204 commit throws. Subject only, as in dc59e58: it parses asfix(python), and the other two parse asdocsandci.main; its range still contains the fix(python): resolve enum discriminator tags in dict union input #204 commit, so the run should publish v2.960.7 with that entry.Public-safety check
.claude/skills/public-repo-communication/SKILL.md).git diff --check.Summary by cubic
Pins
speakeasy-api/changelog-actionto a version that parses only commit subjects, fixing the release that failed to tag v2.960.7. The old version passed the full commit message to the parser, which threw on a multi-line commit body, skipped that commit as[INVALID], and left the changelog empty so the finalize step rejected it. The new version detectsBREAKING CHANGEfooters with a regex and produces unchanged output for commits that already parsed.Written for commit 5a54c5b. Summary will update on new commits.