Skip to content

fix: Add release notes automated with LLMs#2025

Merged
Vasilije1990 merged 8 commits intodevfrom
new_breanch
Mar 1, 2026
Merged

fix: Add release notes automated with LLMs#2025
Vasilije1990 merged 8 commits intodevfrom
new_breanch

Conversation

@Vasilije1990
Copy link
Contributor

@Vasilije1990 Vasilije1990 commented Jan 23, 2026

Description

Add automated release notes that work within new release process

Acceptance Criteria

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update
  • Code refactoring
  • Performance improvement
  • Other (please specify):

Screenshots/Videos (if applicable)

Pre-submission Checklist

  • I have tested my changes thoroughly before submitting this PR
  • This PR contains minimal changes necessary to address the issue/feature
  • My code follows the project's coding standards and style guidelines
  • I have added tests that prove my fix is effective or that my feature works
  • I have added necessary documentation (if applicable)
  • All new and existing tests pass
  • I have searched existing PRs to ensure this change hasn't been submitted already
  • I have linked any relevant issues in the description
  • My commits have clear and descriptive messages

DCO Affirmation

I affirm that all code in every commit of this pull request conforms to the terms of the Topoteretes Developer Certificate of Origin.

Summary by CodeRabbit

  • Chores
    • Implemented AI-powered automated release notes generation to enhance consistency and quality of release documentation across releases.
    • Enhanced GitHub Actions release workflow configuration for improved release process automation.
    • Updated release pipeline infrastructure with new automated tooling to streamline release notes generation and publication.

@Vasilije1990 Vasilije1990 requested a review from pazone January 23, 2026 16:39
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 23, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Linear integration is disabled

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 564fba7 and 355cd7a.

📒 Files selected for processing (3)
  • .github/workflows/release.yml
  • bin/generate-release-notes
  • tools/generate_release_notes.py

Walkthrough

This pull request introduces an AI-powered release notes generation system for the project. It adds a Python script to generate release notes from git diffs and commit history using an LLM, creates a shell wrapper script, and updates the GitHub Actions release workflow to integrate the AI-generated notes into release bodies.

Changes

Cohort / File(s) Summary
GitHub Actions Release Workflow
.github/workflows/release.yml
Updated workflow to fetch full git history and branch references for comparison, added Python environment setup, introduced AI-powered release notes generation step, and wired generated notes into the GitHub Release creation step.
Release Notes Generation Tool
bin/generate-release-notes, tools/generate_release_notes.py
Added shell wrapper script that invokes the Python release notes generator with proper environment configuration; introduced Python script with git data gathering functions (tags, diffs, commits, PR extraction), LLM-based structured note generation using Pydantic models, Markdown formatting, and CLI argument parsing with GitHub Actions output support.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

Possibly related PRs

Suggested labels

core-team

Suggested reviewers

  • pazone
  • hande-k
  • dexters1
✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch new_breanch

Comment @coderabbitai help to get the list of available commands and usage tips.

@gitguardian
Copy link

gitguardian bot commented Feb 5, 2026

⚠️ GitGuardian has uncovered 1 secret following the scan of your pull request.

Please consider investigating the findings and remediating the incidents. Failure to do so may lead to compromising the associated services or software components.

🔎 Detected hardcoded secret in your pull request
GitGuardian id GitGuardian status Secret Commit Filename
8719688 Triggered Generic Password 6e37cff .env.template View secret
🛠 Guidelines to remediate hardcoded secrets
  1. Understand the implications of revoking this secret by investigating where it is used in your code.
  2. Replace and store your secret safely. Learn here the best practices.
  3. Revoke and rotate this secret.
  4. If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.

To avoid such incidents in the future consider


🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.

@pull-checklist
Copy link

pull-checklist bot commented Feb 8, 2026

Please make sure all the checkboxes are checked:

  • I have tested these changes locally.
  • I have reviewed the code changes.
  • I have added end-to-end and unit tests (if applicable).
  • I have updated the documentation and README.md file (if necessary).
  • I have removed unnecessary code and debug statements.
  • PR title is clear and follows the convention.
  • I have tagged reviewers or team members for feedback.

Vasilije1990 and others added 4 commits February 8, 2026 09:03
… workflow

The workflow_dispatch trigger had no inputs defined, so inputs.flavour was
always empty. This caused the checkout to use a default ref and the branch
fetch conditionals to never execute.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Move `import re` to module level, remove inline imports
- Fix return type of get_latest_release_tag to str | None
- Fix version param type to str | None
- Fix return type of generate_release_notes_with_llm to Any (returns pydantic model)
- Fix lowercase `any` to `Any` in format_release_notes
- Remove unnecessary f-string prefix on system_prompt
- Use Path.read_text() instead of open()
- Fix LLM_MODEL secret fallback in release.yml (|| doesn't work on secrets)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: vasilije <vas.markovic@gmail.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: vasilije <vas.markovic@gmail.com>
@Vasilije1990 Vasilije1990 marked this pull request as ready for review March 1, 2026 18:33
@Vasilije1990 Vasilije1990 merged commit 97d29cb into dev Mar 1, 2026
52 of 53 checks passed
@Vasilije1990 Vasilije1990 deleted the new_breanch branch March 1, 2026 18:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant