summaryReadability
Reports changeset summaries that are missing or start with a conventional commit prefix.
✅ This rule is included in the changesets logical presets.
Changesets copies the summary of each changeset into the CHANGELOG.md of every package it releases.
Those changelog entries are read by the package’s users, not by commit tooling.
Conventional commit prefixes such as feat: or fix(core): label commits for tools that parse Git history.
In a changelog entry, they repeat information already recorded by the version bump in the changeset’s frontmatter.
A changeset whose frontmatter lists packages but has no summary creates a changelog entry that doesn’t describe its change.
Changesets created with changeset add --empty list no packages and are not reported.
This rule reports summaries that start with a conventional commit prefix and changesets that are missing a summary.
Examples
Section titled “Examples”---"example-package": minor---
feat: Added a new option.---"example-package": patch---
fix(parser)!: Fixed a crash on empty files.---"example-package": patch------"example-package": minor---
Added a new option.---"example-package": patch---
Fixed a crash on empty files.------Options
Section titled “Options”Type:
string[]Default:
["build", "chore", "ci", "docs", "feat", "feature", "fix", "perf", "refactor", "revert", "style", "test"], the default types ofconventional-changelog-conventionalcommits
Conventional commit types whose prefixes should be reported.
Words not in this list, such as Note:, are not reported as prefixes.
changesets.rules({ summaryReadability: { types: ["deps", "feat", "fix"], },});---"example-package": patch---
deps: Updated dependencies.---"example-package": patch---
Updated dependencies.When Not To Use It
Section titled “When Not To Use It”If your project publishes changelogs that are generated from conventional commit messages rather than from changeset summaries, the prefixes may be read by your release tooling. For example, if you’re using forked or separate tooling from changesets that only happens to use these files’ formats, this rule may give you false reports. You might then prefer to disable this rule rather than change that tooling.
