Skip to content

chore(ci): 🤖 improve changelog parsing#947

Merged
punkbit merged 4 commits intomainfrom
chore/gh-release-changelog-output-parsing
Mar 27, 2026
Merged

chore(ci): 🤖 improve changelog parsing#947
punkbit merged 4 commits intomainfrom
chore/gh-release-changelog-output-parsing

Conversation

@punkbit
Copy link
Copy Markdown
Collaborator

@punkbit punkbit commented Mar 25, 2026

Why?

The changelog extraction logic was previously embedded directly in the release workflow. This made it difficult to test locally and debug issues without triggering the full CI pipeline, e.g. ops runtime requires going through the pull request review/feedback cycle that can be quite long making it hard to iterate/TIAS. Recently, noticed that changelog descriptionm wasn't properly included in the github release notes. Also, when changelog entries contained contributor mentions like @username, GitHub would tag the user, e.g. @deprecated which @<term> are now escaped.

How?

  • Extracts changelog parsing logic from the release workflow into a script
  • Adds @username mention escaping to prevent unintended GitHub notifications
  • Improves error handling with clear fallback messages when changelog content is unavailable

Preview?

⚠️ Tested in a separate playground environment due to pull request feedback/review loop which is too long for this type of work. While the playground environment tries to be as close as Click UI's repository, there might be differences and further iterations may be required to be addressed separately.

Expected flow

demo-gh-release-changelogs-output--enc.mp4

Expected output A

Screenshot 2026-03-25 at 11 23 43

Expected output B

Screenshot 2026-03-25 at 11 27 06

@changeset-bot
Copy link
Copy Markdown

changeset-bot bot commented Mar 25, 2026

⚠️ No Changeset found

Latest commit: 79bb73b

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 25, 2026

Claude finished @punkbit's task in 54s —— View job


PR Review

  • Read changed files
  • Analyze the implementation
  • Post review findings

Nice work! The refactor is clean and the @mention escaping is a smart catch. The previously flagged stdout/stderr bug has been addressed in commit df6900eb — all error paths in the script now correctly use >&2, so CHANGELOG is empty on failure and the workflow fallback kicks in as intended.

💡 Suggestion (non-blocking)

  • .scripts/bash/extract-changelog line 41–42: The grep -v '^## [0-9]' filter is dead code — the while loop already breaks on any ^## [0-9] line, so version headers can never appear in $CHANGELOG by the time this runs. Safe to remove.

    Fix this →


Otherwise looks good to merge! 🙌

@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 25, 2026

Claude finished @punkbit's task in 52s —— View job


PR Review

  • Read changed files
  • Analyze the implementation
  • Post review findings

All previously flagged issues have been resolved. The stderr fix from df6900eb is correct — error messages go to >&2, leaving stdout clean so CHANGELOG is empty on failure and the workflow fallback kicks in properly. The dead code (grep -v '^## [0-9]') was removed in 79bb73ba.

Looks great! No issues found — nice work! The refactor is clean, the @mention escaping regex is correct, and the error handling flows as intended. Ready to merge.

@workflow-authentication-public
Copy link
Copy Markdown
Contributor

📚 Storybook Preview Deployed

✅ Preview URL: https://click-m8oomfrk9-clickhouse.vercel.app

Built from commit: 53b92d7f02600a6131f7c27cad4052d3648fa6c7

@ClickHouse ClickHouse deleted a comment from github-actions bot Mar 27, 2026
@punkbit punkbit merged commit e7656b0 into main Mar 27, 2026
8 checks passed
@punkbit punkbit deleted the chore/gh-release-changelog-output-parsing branch March 27, 2026 09:55
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