Skip to content

feat: Automated release notes generation with Claude#197

Merged
kovtcharov merged 5 commits intoamd:mainfrom
kovtcharov:kalin/claude-release-notes
Jan 17, 2026
Merged

feat: Automated release notes generation with Claude#197
kovtcharov merged 5 commits intoamd:mainfrom
kovtcharov:kalin/claude-release-notes

Conversation

@kovtcharov
Copy link
Collaborator

@kovtcharov kovtcharov commented Jan 16, 2026

Summary

Add automated release notes generation using Claude when a GitHub Release is created.

Changes

Claude Workflow (claude.yml):

  • New release-notes job triggered on release: created event
  • Generates comprehensive release notes analyzing commits, PRs, and diffs
  • Publishes to both GitHub Release and documentation website
  • Auto-bumps version.py to next patch version for development
  • Mandatory self-review step ensures Claude verifies its output

Docs Validation Workflow (docs.yml):

  • New workflow triggered on changes to docs/**
  • Validates full MDX syntax using Mintlify CLI (mintlify build)

Release Notes Validator (util/validate_release_notes.py):

  • Validates release notes MDX files
  • Checks frontmatter (title, description required)
  • Validates required sections (Overview, What's New, Full Changelog)
  • Verifies changelog comparison link

CLAUDE.md:

  • Added "Always Review Your Changes" guidance for all Claude Code interactions

Features

Feature Description
Dual output RELEASE_NOTES.md (GitHub) + docs/releases/vX.Y.Z.mdx (website)
Iterative diff analysis Splits diffs by component for large releases
Auto version bump 0.16.00.16.1 after release
docs.json update Adds new release to Releases tab automatically
Failure notification Creates issue and assigns @kovtcharov-amd on failure
Self-review Claude must read back and verify all generated files
MDX validation Validates frontmatter, required sections, and changelog links
Docs CI New workflow validates all docs on PR with Mintlify CLI

Release Flow

Release v0.16.0 created
        │
        ▼
1. Generate context (commits, PRs, diffs by component)
2. Claude writes release notes
   ├── RELEASE_NOTES.md
   └── docs/releases/v0.16.0.mdx
3. Claude reviews its output (reads back files, verifies formatting)
4. Validate MDX (frontmatter, sections, links)
5. Update docs.json (add to Releases tab)
6. Bump version.py → 0.16.1
7. Commit & push to main
8. Update GitHub Release with notes

Robustness

  • MDX validation - Checks frontmatter (title, description), required sections, changelog link
  • Version validation (skips bump on non-standard versions like v1.0.0-beta)
  • Empty commit prevention
  • Graceful handling of first release (no previous tag)
  • Component-based diff splitting for token limits

@kovtcharov kovtcharov self-assigned this Jan 16, 2026
@github-actions github-actions bot added the devops DevOps/infrastructure changes label Jan 16, 2026
@github-actions github-actions bot added the documentation Documentation changes label Jan 17, 2026
@kovtcharov kovtcharov enabled auto-merge January 17, 2026 00:23
@kovtcharov kovtcharov added this pull request to the merge queue Jan 17, 2026
Merged via the queue into amd:main with commit 6478416 Jan 17, 2026
57 checks passed
@kovtcharov kovtcharov deleted the kalin/claude-release-notes branch January 17, 2026 01:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

devops DevOps/infrastructure changes documentation Documentation changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants