-
Notifications
You must be signed in to change notification settings - Fork 40
Use scoped changelog sync and standardize release notes #1373
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,20 @@ | ||
| --- | ||
| name: release-changelog-authoring | ||
| description: Author or revise Popup Maker release notes, CHANGELOG.md entries, readme.txt changelogs, or GitHub release descriptions using the supported categorized or prefixed formats. Use whenever preparing a release or changing shipped-release documentation. | ||
| --- | ||
|
|
||
| # Release changelog authoring | ||
|
|
||
| Read [the format reference](references/formats.md) before editing release notes. | ||
|
|
||
| 1. Describe notable user-visible outcomes. Omit internal tooling and implementation details unless they affect users, integrators, compatibility, privacy, or security. | ||
| 2. Use one format consistently within a release: | ||
| - Prefer categorized Keep a Changelog-style sections for substantial releases. | ||
| - A compact prefixed list is valid for small releases when every classified item uses an explicit delimiter such as `Fixed: `. | ||
| 3. Preserve links, emphasis, nested lists, and explanatory paragraphs. Nested material must be indented beneath its parent list item; never infer parentage from proximity alone. | ||
| 4. Keep a feature entry concise. Link to a dedicated explainer when the supporting material is longer than a short nested list. | ||
| 5. Update the current branch's `CHANGELOG.md`, `readme.txt`, and GitHub release draft/source together when the repository workflow requires them. | ||
| 6. Treat existing tags as immutable. Never rewrite files in an existing tag or move/recreate a shipped tag. An explicitly authorized correction may update the GitHub release description without altering its tag, commit, or assets. | ||
| 7. Before publishing or rewriting historical notes, show or save a reviewable diff and verify headings, list nesting, links, and user-facing meaning. | ||
| 8. If syncing WordPress content, operate only on the `ca_release` post type. Do not modify pages, posts, settings, or any other post type. | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,69 @@ | ||
| # Supported changelog formats | ||
|
|
||
| ## Categorized format (preferred) | ||
|
|
||
| Use the relevant Keep a Changelog categories: `Added`, `Changed`, `Deprecated`, `Removed`, `Fixed`, and `Security`. Repositories may use an established user-facing alias such as `Improvements` for `Changed`, but do not invent a new synonym within a release. | ||
|
|
||
| ```markdown | ||
| ## v1.2.0 - 2026-08-21 | ||
|
|
||
| ### Added | ||
|
|
||
| - **Split testing** — Compare popup variants and measure the winner. [Learn more](https://example.com/feature/) | ||
|
|
||
| Supported experiment types: | ||
|
|
||
| - Popup versus popup. | ||
| - Content variants. | ||
| - Holdout tests. | ||
|
|
||
| ### Fixed | ||
|
|
||
| - Prevented duplicate conversion attribution during checkout. | ||
| ``` | ||
|
|
||
| The blank line and indentation keep the paragraph and nested list inside the parent `<li>`. Use four spaces when a renderer or linter does not reliably accept two. | ||
|
|
||
| ## Compact prefixed format | ||
|
|
||
| Use this for short releases without section headings. The prefix must be followed by `:` so ordinary prose beginning with “fixed” or “added” is not misclassified. | ||
|
|
||
| ```markdown | ||
| - Added: Support for holdout tests. | ||
| - Changed: Improved purchase attribution accuracy. | ||
| - Fixed: Prevented duplicate conversion attribution during checkout. | ||
| - Security: Hardened webhook signature validation. | ||
| ``` | ||
|
|
||
| Accepted canonical prefixes are `Added:`, `Changed:`, `Deprecated:`, `Removed:`, `Fixed:`, and `Security:`. Existing repositories may retain `Improvement:` as a compatibility alias for `Changed:`. Prefer `Fixed:` over `Fix:` in new entries; parsers may continue accepting `Fix:` for historical content. | ||
|
|
||
| When displaying a prefix as a label, remove it only when the delimiter is present. Capitalize the remaining sentence without otherwise rewriting it. | ||
|
|
||
| ## WordPress readme.txt | ||
|
|
||
| Use WordPress.org heading syntax while preserving the same category and list hierarchy: | ||
|
|
||
| ```text | ||
| = 1.2.0 - 2026-08-21 = | ||
|
|
||
| = Added = | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
When a future release follows this example, AGENTS.md reference: AGENTS.md:L489-L491 Useful? React with 👍 / 👎. |
||
|
|
||
| * **Split testing** — Compare popup variants and measure the winner. | ||
|
|
||
| = Fixed = | ||
|
|
||
| * Prevented duplicate conversion attribution during checkout. | ||
| ``` | ||
|
|
||
| Keep the public readme concise. Put extensive tutorials or feature explanations in durable documentation and link to them. | ||
|
|
||
| ## Review checklist | ||
|
|
||
| - Version and date match the release metadata. | ||
| - Every item is under exactly one category. | ||
| - A compact release uses delimited prefixes consistently. | ||
| - Nested paragraphs/lists remain children of the intended item. | ||
| - Links and emphasis survive conversion between Markdown and readme.txt. | ||
| - No item is truncated in the middle of a list element. | ||
| - No existing tag, tagged file tree, release asset, or shipped commit changes. | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Remove the trailing space from the inline code span.
Markdownlint reports MD038 at Line 13 because
Fixed:contains a space inside backticks. Change it to`Fixed:`and keep the prose space outside the code span.🧰 Tools
🪛 markdownlint-cli2 (0.23.2)
[warning] 13-13: Spaces inside code span elements
(MD038, no-space-in-code)
🤖 Prompt for AI Agents
Source: Linters/SAST tools