Skip to content

feat: Stamp CHANGELOG.md with version during CI tag#27

Merged
kodroi merged 2 commits intomainfrom
feat/changelog-version-stamp
Feb 21, 2026
Merged

feat: Stamp CHANGELOG.md with version during CI tag#27
kodroi merged 2 commits intomainfrom
feat/changelog-version-stamp

Conversation

@kodroi
Copy link
Copy Markdown
Owner

@kodroi kodroi commented Feb 21, 2026

Summary

  • Adds a new step in the CI tag job that replaces ## Unreleased in CHANGELOG.md with ## vX.Y.Z (YYYY-MM-DD) using the GitVersion output and current date
  • Includes CHANGELOG.md in the version bump commit's git add
  • Gracefully skips if no ## Unreleased section exists (exits 0)
  • CHANGELOG.md is not in the versionable path filter, so this change does not trigger additional version bumps

Test plan

  • Verify CI passes on this PR
  • Merge and confirm that the next version tag commit includes the stamped CHANGELOG.md

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores
    • Automated changelog versioning in the CI/CD pipeline to streamline release processes.
    • Updated build configuration to support enhanced release management automation.

Iiro Rahkonen and others added 2 commits February 21, 2026 18:04
Add opencode/package.json to root .block file since the CI pipeline
manages version numbers in both plugin.json files.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace `## Unreleased` header with `## vX.Y.Z (YYYY-MM-DD)` when the
CI pipeline creates a version tag, keeping the changelog format
consistent with existing entries. Gracefully skips if no Unreleased
section is found.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Feb 21, 2026

Caution

Review failed

The pull request is closed.

📝 Walkthrough

Walkthrough

Configuration files updated to extend the blocking list and automate changelog versioning in the CI pipeline. The .block file now includes an additional package.json entry, while the CI workflow adds a new step that replaces "Unreleased" section headers with version-tagged entries during tag operations.

Changes

Cohort / File(s) Summary
Blocking Configuration
.block
Added "opencode/package.json" to the blocked list, extending the existing blocking rules beyond the Claude plugin configuration.
CI Workflow Automation
.github/workflows/ci.yml
Introduced "Update CHANGELOG version" step in tag workflow that replaces "## Unreleased" with versioned headers using GitVersion outputs and current date. Updated commit step to include CHANGELOG.md alongside existing files.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related PRs

Poem

🐰 A rabbit hops through config files with glee,
Blocking what mustn't be, wild and free,
The changelog dances from "Unreleased" to versioned release,
With GitVersion's magic touch, automation brings peace! ✨📝

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/changelog-version-stamp

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@kodroi kodroi merged commit a74deb6 into main Feb 21, 2026
12 of 13 checks passed
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.

1 participant