Skip to content

chore: Replace Danger with release.yml changelog policy#3641

Merged
buenaflor merged 15 commits into
mainfrom
chore/update-changelog-policy
Apr 14, 2026
Merged

chore: Replace Danger with release.yml changelog policy#3641
buenaflor merged 15 commits into
mainfrom
chore/update-changelog-policy

Conversation

@buenaflor

@buenaflor buenaflor commented Apr 14, 2026

Copy link
Copy Markdown
Contributor

Replace the Danger CI workflow with a craft-compatible release.yml that
declares changelog categories based on conventional commit patterns with
semver annotations.

The new release.yml policy:

  • Excludes skip-changelog labeled PRs and bot authors (dependabot, renovate)
  • Categorizes commits into Breaking Changes (major), Features (minor),
    Fixes (patch), and Internal Changes (no semver) using regex on commit subjects
  • Enables craft to auto-determine semver bumps from commit history

The Danger workflow is removed as changelog enforcement moves to the
declarative release configuration.

buenaflor and others added 3 commits April 14, 2026 11:44
Replace the Danger CI workflow with a craft-compatible release.yml
that defines changelog categories based on conventional commit
patterns. This moves changelog generation policy from a CI check
to a declarative configuration.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Document the automated changelog generation process, including
how PR titles drive categorization and semver bumps, the changelog
preview on PRs, and custom changelog entries via PR descriptions.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Update the example PR description to better match the actual PR
template structure.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
@buenaflor
buenaflor marked this pull request as ready for review April 14, 2026 09:51
@buenaflor
buenaflor requested a review from denrase as a code owner April 14, 2026 09:51
Copilot AI review requested due to automatic review settings April 14, 2026 09:51
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
buenaflor and others added 3 commits April 14, 2026 11:52
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Fix indentation and update craft workflow reference.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR replaces the previous Danger-based changelog enforcement with a craft-compatible .github/release.yml policy that categorizes changelog entries and determines semver bumps from Conventional Commit-style subjects.

Changes:

  • Add a craft changelog policy in .github/release.yml with category + semver mapping and exclusion rules.
  • Remove the Danger GitHub Actions workflow.
  • Document the new changelog process in CONTRIBUTING.md.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
CONTRIBUTING.md Documents the new craft-based changelog process and how entries are derived.
.github/workflows/danger.yml Removes the obsolete Danger workflow.
.github/release.yml Introduces the craft changelog categorization + semver policy (patterns, exclusions).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/release.yml Outdated
Comment thread CONTRIBUTING.md
Comment thread .github/release.yml Outdated
Fix YAML list indentation and add statuses: write permission
to the changelog-preview workflow.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
@github-actions

github-actions Bot commented Apr 14, 2026

Copy link
Copy Markdown
Contributor

Semver Impact of This PR

None (no version bump detected)

📋 Changelog Preview

This is how your changes will appear in the changelog.
Entries from this PR are highlighted with a left border (blockquote style).


Internal Changes

  • Replace Danger with release.yml changelog policy by buenaflor in #3641

🤖 This preview updates automatically when you update the PR.

Comment thread .github/release.yml
buenaflor and others added 6 commits April 14, 2026 12:04
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Revert the test category rename and remove [bot] suffix from
author exclusions.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Replace the commit types table in AGENTS.md with a link to
release.yml. Remove Danger reference and update changelog info to
point to CONTRIBUTING.md. Add Enhancements category to release.yml
for perf/impr/enh types.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
perf is already matched by the Enhancements category.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Comment thread .github/release.yml
Comment thread CONTRIBUTING.md

If a PR should be excluded from the changelog, apply the `skip-changelog` label.

### Custom Changelog Entries from PR Descriptions

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is for individual PRs, i remember that we sometimes also do warnings/notes for whole versions. Do we have a workflow or escape hatch for this?

@buenaflor buenaflor Apr 14, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can always update the changelog directly in the release branch e.g via another PR, we dont always need to entirely rely on the auto generation

@denrase denrase left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just some questions.

Comment thread CONTRIBUTING.md
Add a new function called `foo` which prints "Hello, world!"
```

The text under "Changelog Entry" will be used verbatim in the changelog instead of the PR title. If

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How do we guarantee that we correctly link PR numbers if we opt to do such a custom entry?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

craft auto attaches by @author in <PR link>

e.g

### Changelog Entry

  - Added new crash reporting API for Flutter web
  - Improved session tracking accuracy on iOS

The changelog would render as:

### Features

  - Added new crash reporting API for Flutter web by @author in [#500](https://github.com/owner/repo/pull/500)
  - Improved session tracking accuracy on iOS by @author in [#500](https://github.com/owner/repo/pull/500)

@buenaflor buenaflor Apr 14, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if you want it completely customized by manually writing it into the changelog you have to make sure yourself that it's the correct PR

Separate dependency update commits into their own changelog
section for better readability.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit d4762e7. Configure here.

Comment thread .github/release.yml
@buenaflor
buenaflor merged commit 487cd2f into main Apr 14, 2026
9 checks passed
@buenaflor
buenaflor deleted the chore/update-changelog-policy branch April 14, 2026 12:14
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.

3 participants