Add changelog generation script and tools#856
Merged
tfrauenstein merged 3 commits intomainfrom Mar 3, 2026
Merged
Conversation
Introduces a production-ready changelog generation system based on PR #816 discussion. Features: - scripts/changelog.sh: Automated script to generate changelog entries from git history - scripts/changelog.prompt: AI prompt instructions for identifying rule changes - Makefile target: 'make changelog' auto-detects latest entry and updates in place The tool analyzes git commits for a specified time period, identifies rule-related changes (filtering out formatting, infrastructure, and editorial changes), and formats them as AsciiDoc changelog entries with proper cross-references and PR/commit links. Usage: Direct: ./scripts/changelog.sh [OPTIONS] Make: make changelog Options: --raw Show full AI analysis output --update Write entries to chapters/changelog.adoc (default for make) --year YYYY Generate for entire year --since YYYY-MM-DD Generate since specific date By default (no args), auto-detects latest changelog entry and generates for commits after that date. Requirements: - zllm command installed (Zalando internal tool) - Git repository Co-Authored-By: Claude Code <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
This PR introduces an automated changelog generation system that uses AI (via the zllm command) to analyze git history and generate properly formatted AsciiDoc changelog entries for rule changes. The system is designed to streamline the maintenance of the project's changelog by automatically detecting changes that affect rules and filtering out non-substantive changes.
Changes:
- Added
scripts/changelog.sh: A 177-line bash script that provides smart auto-detection of the latest changelog entry, filters rule changes from git history, and supports multiple operating modes - Added
scripts/changelog.prompt: An AI prompt template with instructions and examples for generating changelog entries in the correct AsciiDoc format - Added
make changelogtarget: Provides easy invocation of the changelog generation with automatic file updates
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 7 comments.
| File | Description |
|---|---|
| scripts/changelog.sh | Main automation script with auto-detection, multiple modes (auto/year/since), and file update capability |
| scripts/changelog.prompt | AI prompt template defining format rules and providing examples for changelog entry generation |
| Makefile | Adds changelog target to .PHONY list and defines target that invokes changelog.sh with --update flag |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Fix spelling: "producedure" → "procedure" in both changelog.prompt and chapters/changelog.adoc - Fix shebang format to match project conventions (#! /bin/bash) - Replace non-portable grep -oP with grep -E + sed for macOS compatibility - Add error handling for missing "== Rule Changes" header before arithmetic operations Co-Authored-By: Claude Code <noreply@anthropic.com>
Add a new section describing the changelog generation tool, its prerequisites, and usage options to match existing documentation practices for other Makefile targets. Co-Authored-By: Claude Code <noreply@anthropic.com>
Member
|
👍 |
1 similar comment
Member
|
👍 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Introduces a production-ready changelog generation system based on the discussion in PR #816.
This PR adds the tools and infrastructure for automated changelog generation:
make changelogfor easy invocationFeatures
chapters/changelog.adocand generates entries for commits since the latest entryUsage
Simply run:
This will:
chapters/changelog.adocin placeAdvanced Options (optional)
For more control, use the script directly:
What's Included
Testing
The script has been tested with:
Next Steps
A follow-up PR will run this tool to update `chapters/changelog.adoc` with the latest rule changes.
🤖 Generated with Claude Code