Skip to content

ci: auto-fill release notes from the matching monorepo app release#296

Merged
kilbot merged 2 commits into
mainfrom
ci/auto-release-notes
Jul 15, 2026
Merged

ci: auto-fill release notes from the matching monorepo app release#296
kilbot merged 2 commits into
mainfrom
ci/auto-release-notes

Conversation

@kilbot

@kilbot kilbot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds a release-notes job to the Publish workflow so the desktop release body is filled automatically — v1.9.7 went out with an empty body because Forge creates the draft with no notes and curation was a manual step.

Behaviour:

  • Runs after the platform publish jobs, as long as at least one succeeded (single-platform dispatches and partial failures still get notes).
  • Copies the body of the wcpos/monorepo release with the same tag (the app release is always created earlier in the release train) and appends the standard desktop footer ("Desktop build of WCPOS app X.Y.Z…").
  • If the monorepo release is missing or empty, it warns and writes just the footer.
  • Never overwrites a non-empty body — hand-curated notes and re-runs of failed platform jobs (like today's macOS notarization re-run) are safe.

No change to when the draft is published — that stays a manual decision.

Validated with actionlint.

Summary by CodeRabbit

  • Release Notes
    • Desktop releases now automatically receive draft release notes after a successful platform publish.
    • Existing release notes are preserved when already available.
    • Notes can include relevant app release details along with desktop-specific information.

@coderabbitai

coderabbitai Bot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Warning

Review limit reached

You’ve reached a temporary PR review limit under our Fair Usage Limits Policy.

Your recent review volume is higher than typical usage, so adaptive limits are currently applied.

Next review available in: 35 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Repository: wcpos/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: efd6803b-529c-4d25-b5cd-c54d126d74ef

📥 Commits

Reviewing files that changed from the base of the PR and between 3880fe2 and 7cd4fc3.

📒 Files selected for processing (1)
  • .github/workflows/tag-and-release.yml
📝 Walkthrough

Walkthrough

Changes

Desktop release notes synchronization

Layer / File(s) Summary
Aggregate publish results and update release notes
.github/workflows/tag-and-release.yml
Adds a release-notes job that runs after platform publishing, preserves existing desktop release notes, or copies the matching app release body and appends a desktop footer.

Estimated code review effort: 2 (Simple) | ~10 minutes

Suggested reviewers: dependabot[bot]

Sequence Diagram(s)

sequenceDiagram
  participant PublishJobs
  participant ReleaseNotesJob
  participant AppRelease
  participant DesktopRelease
  PublishJobs->>ReleaseNotesJob: report platform publish results
  ReleaseNotesJob->>DesktopRelease: read existing release body
  ReleaseNotesJob->>AppRelease: fetch app release body
  AppRelease-->>ReleaseNotesJob: return release notes
  ReleaseNotesJob->>DesktopRelease: update release body with notes and footer
Loading
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the main change: automatically filling desktop release notes from the matching monorepo app release.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ci/auto-release-notes

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

@greptile-apps

greptile-apps Bot commented Jul 15, 2026

Copy link
Copy Markdown

Greptile Summary

This PR automatically fills desktop draft release notes after platform publishing. The main changes are:

  • Adds a release-notes job after successful platform publishing.
  • Copies notes from the matching monorepo release.
  • Appends the standard desktop release footer.
  • Preserves an existing non-empty release body.
  • Handles missing, empty, and failed upstream lookups separately.

Confidence Score: 4/5

The remaining concurrent update risk should be resolved before merging.

  • The latest check reduces the overwrite window but does not make the final update atomic.
  • Overlapping workflow runs or a manual edit can still be replaced by the unconditional release edit.

.github/workflows/tag-and-release.yml

Important Files Changed

Filename Overview
.github/workflows/tag-and-release.yml Adds automatic release-note mirroring and improves error handling while narrowing the concurrent update window.

Reviews (2): Last reviewed commit: "ci: fail notes job on non-404 API errors..." | Re-trigger Greptile

Comment thread .github/workflows/tag-and-release.yml

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/tag-and-release.yml:
- Around line 350-357: Update the release-notes lookup around gh release view to
distinguish a missing release (HTTP 404) from authentication, rate-limit, and
other command failures. Use the footer-only fallback and warning only for the
confirmed 404 case; propagate or fail the workflow for all other errors, while
preserving the existing non-empty body handling.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository: wcpos/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: dc17b637-4f71-4573-b219-c56385b6e143

📥 Commits

Reviewing files that changed from the base of the PR and between 4c2724e and 3880fe2.

📒 Files selected for processing (1)
  • .github/workflows/tag-and-release.yml

Comment thread .github/workflows/tag-and-release.yml
@kilbot
kilbot merged commit 8fc3ac9 into main Jul 15, 2026
8 checks passed
@kilbot
kilbot deleted the ci/auto-release-notes branch July 15, 2026 19:57
@wcpos-bot
wcpos-bot Bot restored the ci/auto-release-notes branch July 15, 2026 20:01
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