Skip to content

ci: tag CLI releases cli-v* and split release notes by label - #73

Merged
dungngminh merged 1 commit into
mainfrom
ci/split-cli-app-releases
Oct 16, 2026
Merged

dungngminh merged 1 commit into
mainfrom
ci/split-cli-app-releases

Conversation

@dungngminh

@dungngminh dungngminh commented Oct 16, 2026 •

Copy link
Copy Markdown
Owner

Description

CLI/TUI releases move from vX.Y.Z to cli-vX.Y.Z tags; the desktop app keeps app-vX.Y.Z. Release notes are now generated per product so each release lists the right PRs.

  • PR labels: new cli and app labels. .github/release.yaml (CLI) leaves out PRs labeled app; .github/release-app.yaml (app) leaves out PRs labeled cli. PRs with neither (shared packages, CI) show up in both.
  • Notes range: .github/scripts/release-notes.sh calls GitHub's generate-notes API with the previous tag of the same product, since GitHub's own pick could be the other product's release. App releases put this after the app/CHANGELOG.md section.
  • Tag consumers: release.yaml, deploy-pub-dev.yaml (pub.dev tag pattern already switched to cli-v{{version}}), deploy-homebrew.yaml, deploy-winget.yaml, the Homebrew formula template, install.sh / install.ps1 and the CLI update check all accept cli-v* (plus legacy v* where it matters).
  • Update check: GitHub installs now read the releases list and pick the newest non-draft CLI release instead of /releases/latest, which can be a desktop app release.
  • Docs: AGENTS.md, docs/ai/deployment.md, docs/ai/contributing.md, README CLI badge.

Known limit: CLI builds v1.1.0 and older still read /releases/latest and won't notice cli-v* releases; brew upgrade / rerunning install.sh still works for them.

Type of Change

  • 🔥 New feature (non-breaking change which adds functionality)
  • ✨ Enhancement (non-breaking change which improves existing functionality)
  • 🛠️ Bug fix (non-breaking change which fixes an issue)
  • 🧹 Code refactor
  • 📝 Documentation
  • 🗑️ Chore
  • 📦 Build configuration change
  • ✅ Test

Summary by CodeRabbit

  • New Features

    • Release notes are now generated separately for desktop app and CLI/TUI releases, with content grouped by labeled change type.
    • CLI installers recognize both the new cli-v release tags and legacy v tags.
  • Bug Fixes

    • Update checks skip desktop app releases and select the latest eligible stable CLI release.
  • Chores

    • CLI release tags now use the cli-v prefix across supported package and platform publishing channels.

CLI/TUI releases now use cli-vX.Y.Z tags; the desktop app keeps app-vX.Y.Z.
Release notes are generated per product: PRs labeled `app` stay out of CLI
notes, PRs labeled `cli` stay out of app notes, and each release counts from
the previous tag of the same product.

The CLI update check, install scripts, pub.dev, Homebrew and WinGet workflows
accept cli-v* tags (and legacy v* tags).
@dungngminh dungngminh added the ci/cd CI/CD ⚙️ label Oct 16, 2026
@coderabbitai

coderabbitai Bot commented Oct 16, 2026

Copy link
Copy Markdown

Review in Change Stack →

Note

Currently processing new changes in this PR. This may take a few minutes, please wait...

⚙️ Run configuration
  • Configuration used: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 4f0da6db-ef9b-46fd-ab50-bb448ca12f36
📥 Commits

Reviewing files that changed from the base of the PR and between c42a3d5 and 6687a87.

📒 Files selected for processing: 20
  • .github/homebrew/simutil.rb.template
  • .github/release-app.yaml
  • .github/release.yaml
  • .github/scripts/release-notes.sh
  • .github/workflows/deploy-homebrew.yaml
  • .github/workflows/deploy-pub-dev.yaml
  • .github/workflows/deploy-winget.yaml
  • .github/workflows/release-app.yaml
  • .github/workflows/release.yaml
  • AGENTS.md
  • README.md
  • docs/ai/contributing.md
  • docs/ai/deployment.md
  • install.ps1
  • install.sh
  • packages/simutil/CHANGELOG.md
  • packages/simutil_shared/CHANGELOG.md
  • packages/simutil_shared/lib/src/changelog_entries.dart
  • packages/simutil_shared/lib/src/update_checker.dart
  • packages/simutil_shared/test/update_checker_test.dart
+----------------------------------------------------------------+
| I like what you did here. I don't like *that* you did it here. |
+----------------------------------------------------------------+
  \
   \   (\__/)
       (•ㅅ•)
       /   づ
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

Comment thread README.md
@kilo-code-bot

kilo-code-bot Bot commented Oct 16, 2026 •

Copy link
Copy Markdown

Code Review Summary

Status: 1 Issue Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 0
WARNING 1
SUGGESTION 0
Issue Details (click to expand)

WARNING

File Line Issue
README.md 18 CLI badge filter should target CLI tags positively
Files Reviewed (20 files)
  • README.md - 1 issue
  • other files reviewed - 0 issues

Fix these issues in Kilo Cloud


Reviewed by free · Input: 35.3K · Output: 2.5K · Cached: 237K

@dungngminh
dungngminh merged commit 44cf669 into main Oct 16, 2026
9 of 13 checks passed
@dungngminh
dungngminh deleted the ci/split-cli-app-releases branch October 16, 2026 17:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci/cd CI/CD ⚙️

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant