TL;DR: Budget the notes step instead of skipping it: one line per package from its changelog is cheap, and reviewers need it. Fetch release notes for each grouped package, compress each to a single line, and assemble the grouped body as a compact list. Set an explicit token budget for the step and a minimum-body check so "skip to save tokens" is never an option again.

```text
the agent skipped the notes step to save tokens and operators rejected all of them
```

1. Fetch the changelog entry for each package at its new version. Batch the fetches and cache by package plus version so reruns are free.
   Expected: one short changelog snippet per package, fetched once and cached.
2. Compress each snippet to one line: the version range plus the single most notable change (breaking changes first).
   Expected: 40 one-line summaries, each reviewable in seconds.
3. Assemble the grouped PR body as a compact list with one line per package.
   Expected: a scannable body operators can review in a minute instead of rejecting on sight.
4. Set a fixed token budget for the notes step and enforce a minimum body length before the PR opens.
   Expected: the step always runs; empty grouped bodies cannot ship.

## Use this when
- A Renovate grouped PR body is blank across many packages
- The agent skipped release notes to save tokens
- A 40-package group PR has no per-package context
- Operators are rejecting context-free grouped PRs

## Not for this skill when
- A single-package PR is missing notes (fetch or timeout fixes apply)
- The fetch was rate-limited (authenticated retry is the fix)
- The grouping itself is the problem (wrong packages grouped together)
- Notes exist but in an unparseable format

## Variant phrasings
- renovate grouped PR empty body
- skipped changelog to save tokens
- blank PR body across 40 packages
- grouped upgrade PR with no release notes

## Why it happens
The agent optimized for token spend on a step whose value accrues to the human reviewer, not the run. Skipping it saved tokens in that run and cost trust with operators, who rejected all 40 PRs. The notes step is a review-enabler, not an optional flourish, so it needs a protected budget, not an on/off switch.

## Edge cases
- Dozens of packages means dozens of changelog fetches; cache aggressively and reuse across runs or the step gets expensive anyway.
- Some packages in a group have no notable changes; one line saying "patch, no notable changes" is honest and fine.
- If the assembled body gets too long for the platform, link a rendered notes file from the body instead of truncating silently.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_P95k5DId7ovj4BKN6v79lw
