This document describes the complete workflow for generating release notes like ProxySQL v3.0.3.
# 1. Run the orchestration script
python scripts/release-tools/orchestrate_release.py \
--from-tag v3.0.3 \
--to-tag v3.0 \
--output-dir release-data \
--verbose
# 2. Provide the generated files to LLM with this prompt:
cat release-data/llm-prompt-v3.0.mdgit fetch --tags
git checkout v3.0 # Ensure you're on the release branchpython scripts/release-tools/orchestrate_release.py \
--from-tag PREVIOUS_TAG \
--to-tag CURRENT_BRANCH_OR_NEW_TAG \
--output-dir release-dataThis generates:
release-data/pr-data-*.json- PR details from GitHubrelease-data/pr-summary-*.md- PR summaryrelease-data/structured-notes-*.md- Commit-level datarelease-data/llm-prompt-*.md- Complete LLM promptrelease-data/workflow-summary.md- Instructions
Give the LLM:
- All files in
release-data/directory - The prompt:
release-data/llm-prompt-*.md
The LLM should create:
ProxySQL-X.X.X-Release-Notes.md- Main release notesCHANGELOG-X.X.X-detailed.md- Detailed changelogCHANGELOG-X.X.X-commits.md- Complete commit list (optional)
- Descriptive Content: Explain what each feature/fix does and why it matters
- Logical Grouping: Organize under categories (PostgreSQL, MySQL, Monitoring, etc.)
- Backtick Formatting: Use
backticksaround all technical terms - Commit References: Include commit hashes and PR numbers
- No WIP/skip-ci Tags: Make all entries production-ready
- Follow v3.0.3 Format: Structure like previous release notes
See ProxySQL-3.0.4-Release-Notes.md in the root directory for a complete example of descriptive release notes with backtick formatting.
All scripts are in scripts/release-tools/:
| Script | Purpose |
|---|---|
orchestrate_release.py |
Main orchestration script |
collect_pr_data.py |
Fetch PR details from GitHub |
generate_structured_notes.py |
Create commit-level data |
categorize_commits.py |
Categorize commits by type |
generate_release_notes.py |
Basic release notes (without LLM) |
generate_changelog.py |
Basic changelog generation |
See scripts/release-tools/README.md for detailed documentation.
The release notes for 3.0.4 have already been generated:
ProxySQL-3.0.4-Release-Notes.md- Final release notes- Backup:
ProxySQL-3.0.4-Release-Notes-backup.md- Original version - Example:
ProxySQL-3.0.4-Release-Notes-Descriptive.md- Descriptive version
These notes follow all requirements: descriptive content, logical grouping, backtick formatting, and proper references.