Skip to content

Commit b380a82

Browse files
Improve changelog agent output formatting (#640)
- Don't include version heading in GitHub Release notes (redundant with release title) - Omit 'Other changes' subheading when there are no highlighted features above it - Add 'New contributors' section listing first-time contributors with their PR link Co-authored-by: Copilot <[email protected]>
1 parent 7460798 commit b380a82

File tree

1 file changed

+16
-3
lines changed

1 file changed

+16
-3
lines changed

.github/workflows/release-changelog.md

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,17 +70,25 @@ Separate the changes into two groups:
7070

7171
Only include changes that are **user-visible in the published SDK packages**. Skip anything that only affects docs, CI, build tooling, GitHub workflows, test infrastructure, or other internal-only concerns.
7272

73+
Additionally, identify **new contributors** — anyone whose first merged PR to this repo falls within this release range. You can determine this by checking whether the author has any earlier merged PRs in the repository.
74+
7375
### Step 4: Update CHANGELOG.md
7476

7577
1. Read the current `CHANGELOG.md` file.
7678
2. Add the new version entry **at the top** of the file, right after the title/header.
7779

7880
**Format for each highlighted feature** — use an `### Feature:` or `### Fix:` heading, a 1-2 sentence description explaining what it does and why it matters, and at least one short code snippet (max 3 lines). Focus on **TypeScript** and **C#** as the primary languages. Only show Go/Python when giving a list of one-liner equivalents across all languages, or when their usage pattern is meaningfully different.
7981

80-
**Format for other changes** — a single `### Other changes` section with a flat bulleted list. Each bullet has a lowercase prefix (`feature:`, `bugfix:`, `improvement:`) and a one-line description linking to the PR.
82+
**Format for other changes** — a single `### Other changes` section with a flat bulleted list. Each bullet has a lowercase prefix (`feature:`, `bugfix:`, `improvement:`) and a one-line description linking to the PR. **However, if there are no highlighted features above it, omit the `### Other changes` heading entirely** — just list the bullets directly under the version heading.
8183

8284
3. Use the release's publish date (from the GitHub Release metadata), not today's date. For `workflow_dispatch` runs, fetch the release by tag to get the date.
83-
4. Make sure the existing content below is preserved exactly as-is.
85+
4. If there are new contributors, add a `### New contributors` section at the end listing each with a link to their first PR:
86+
```
87+
### New contributors
88+
- @username made their first contribution in [#123](https://github.com/github/copilot-sdk/pull/123)
89+
```
90+
Omit this section if there are no new contributors.
91+
5. Make sure the existing content below is preserved exactly as-is.
8492

8593
### Step 5: Create a Pull Request
8694

@@ -90,7 +98,7 @@ Use the `create-pull-request` output to submit your changes. The PR should:
9098

9199
### Step 6: Update the GitHub Release
92100

93-
Use the `update-release` output to replace the auto-generated release notes with your nicely formatted changelog (same content you put in CHANGELOG.md, minus the header).
101+
Use the `update-release` output to replace the auto-generated release notes with your nicely formatted changelog. **Do not include the version heading** (`## [vX.Y.Z](...) (date)`) in the release notes — the release already has a title showing the version. Start directly with the feature sections or other changes list.
94102

95103
## Example Output
96104

@@ -130,6 +138,11 @@ While `session.rpc.models.setModel()` already worked, there is now a convenience
130138
- improvement: **[C#]** use event delegate for thread-safe, insertion-ordered event handler dispatch ([#624](https://github.com/github/copilot-sdk/pull/624))
131139
- improvement: **[C#]** deduplicate `OnDisposeCall` and improve implementation ([#626](https://github.com/github/copilot-sdk/pull/626))
132140
- improvement: **[C#]** remove unnecessary `SemaphoreSlim` locks for handler fields ([#625](https://github.com/github/copilot-sdk/pull/625))
141+
142+
### New contributors
143+
144+
- @chlowell made their first contribution in [#586](https://github.com/github/copilot-sdk/pull/586)
145+
- @feici02 made their first contribution in [#566](https://github.com/github/copilot-sdk/pull/566)
133146
````
134147

135148
**Key rules visible in the example:**

0 commit comments

Comments
 (0)