Skip to content

[fix] Trigger changelog bot for backward incompatible changes#681

Merged
nemesifier merged 1 commit into
masterfrom
changelog-bot-change-excl
May 26, 2026
Merged

[fix] Trigger changelog bot for backward incompatible changes#681
nemesifier merged 1 commit into
masterfrom
changelog-bot-change-excl

Conversation

@nemesifier

@nemesifier nemesifier commented May 26, 2026

Copy link
Copy Markdown
Member

Checklist

  • I have read the OpenWISP Contributing Guidelines.
  • I have manually tested the changes proposed in this pull request.
  • I have written new test cases for new code and/or updated existing tests for changes to existing code.
  • I have updated the documentation.

Reference to Existing Issue

No existing issue.

Description of Changes

This PR updates the changelog bot trigger and validation logic to support [change!] PRs and generated entries for backward incompatible changes.

It also updates the reusable GitHub utilities documentation and adds regression tests that verify [change!] titles trigger the bot and [change!] changelog entries pass bot validation.

Screenshot

Not applicable.

Accept [change!] entries in the changelog bot trigger and validation so backward incompatible PRs receive generated changelog suggestions.
@coderabbitai

coderabbitai Bot commented May 26, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

This PR extends the changelog bot infrastructure to recognize a new [change!] tag for backward-incompatible changes. The generator's LLM prompt and validation logic are updated to allow [change!] as a required starting tag alongside [feature], [fix], and [change]. The workflow's PR-title regex is expanded to match the optional exclamation mark. Test assertions confirm the prompt includes the tag, a new validation test covers the backward-incompatible case, and a workflow regex test ensures matching. Documentation is updated to reflect the new prefix.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related PRs

  • openwisp/openwisp-utils#632: Refactors changelog workflows and introduces the prefix regex to [feature|fix|change]—this PR directly extends that regex to include [change!].
  • openwisp/openwisp-utils#657: Rewrites the same validation pipeline and allowed PR title tags—this PR adds [change!] support to the validation rules updated in that PR.
  • openwisp/openwisp-utils#584: Introduces the original changelog bot; this PR extends it with the new backward-incompatible change tag.

Suggested labels

github_actions, helper-bots, documentation

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Title check ⚠️ Warning The title uses the correct format [fix] but is misleading—the PR adds support for [change!], not primarily a fix to trigger the bot. Consider using [feature] instead of [fix], since this adds new functionality to support backward incompatible changes, rather than fixing an existing bug.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Bug Fixes ✅ Passed This PR updates GitHub Actions changelog bot workflow to support [change!] tags. Valid exception: GitHub Actions workflow fixes don't require regression tests per custom check instructions.
Description check ✅ Passed The PR description follows the template with all required sections completed: checklist items marked, existing issue reference provided, and clear description of changes with test and documentation updates mentioned.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch changelog-bot-change-excl

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.

@coderabbitai coderabbitai Bot added bug github_actions Pull requests that update GitHub Actions code helper-bots Helper bots, release management automation labels May 26, 2026
@kilo-code-bot

kilo-code-bot Bot commented May 26, 2026

Copy link
Copy Markdown

Code Review Summary

Status: No Issues Found | Recommendation: Merge

The PR correctly implements support for [change!] tag to mark backward incompatible changes in the changelog bot.

Changes Reviewed

  1. generate_changelog.py - Updated to recognize [change!] as a valid tag:

    • Added to docstring and system instructions
    • Added to required_tags tuple for validation
    • Updated error messages
  2. test_generate_changelog.py - Added comprehensive regression tests:

    • Test for [change!] validation acceptance
    • Test for workflow regex matching [change!] titles
  3. bot-changelog-trigger.yml - Updated regex pattern to match [change!]:

    • Uses change!? which correctly matches both change and change!
  4. reusable-github-utils.rst - Documentation updated to reflect the new tag

Verification

  • The regex change!? correctly makes the ! optional, matching both [change] and [change!]
  • Tests verify that [change!] entries pass validation and trigger the bot
  • Documentation is consistent with the implementation
Files Reviewed (4 files)
  • .github/actions/bot-changelog-generator/generate_changelog.py
  • .github/actions/bot-changelog-generator/test_generate_changelog.py
  • .github/workflows/bot-changelog-trigger.yml
  • docs/developer/reusable-github-utils.rst

Reviewed by kimi-k2.5 · 462,621 tokens

@openwisp-companion

Copy link
Copy Markdown

The CI is failing due to transient infrastructure issues (not related to your code). I have restarted the failed jobs automatically (1/3).

@coveralls

Copy link
Copy Markdown

Coverage Status

coverage: 97.488%. remained the same — changelog-bot-change-excl into master

@nemesifier
nemesifier merged commit 5980541 into master May 26, 2026
52 of 53 checks passed
@nemesifier
nemesifier deleted the changelog-bot-change-excl branch May 26, 2026 22:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug github_actions Pull requests that update GitHub Actions code helper-bots Helper bots, release management automation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants