Log in·Sign up
BestRelay

Back to the Journal

Good release notes begin with the diff, not the model

Release notes tell readers what changed and why

Release notes are the short written record that accompanies a shipped version of software. They answer a handful of practical questions: what changed, who is affected, what to do about it, and whether anything might break. For a newcomer, that definition matters more than any tooling advice, because the shape of the document decides everything that follows. A note that leads with a version number and a single human sentence usually beats a long list of internal task names, and a note that hides a breaking change inside a bulleted list usually disappoints the people who needed it most.

Good notes also carry tone. They sound calm, specific, and honest about rough edges. Readers can tell when a paragraph was assembled from ticket titles, and they trust less when the writing feels like a changelog scraped from a project board. The goal is not to impress anyone with prose. The goal is to help a busy developer decide whether to upgrade this afternoon or next week, and to give support teams a shared explanation they can point to.

When artificial intelligence enters the process, it usually enters as a drafter rather than an author. The model turns raw material into a first version, and a human decides what stays. That division of labor works well when the raw material is rich and the human knows what a finished note should look like.

A clean input makes every draft easier to trust

The fastest way to improve an AI draft is to improve what you hand it. Before writing any prompt, gather the raw material in one place: a summary of the code changes, the pull request descriptions, the ticket titles and acceptance notes, the test results that matter, and any migration step a user must run. If a change carries risk, write one sentence about that risk yourself. Models are strong at wording and weak at judgment about consequences, so your sentence anchors everything the draft says.

Two habits make the input much cleaner. The first is separating facts from intentions. Facts are things that actually shipped; intentions are hopes about impact. The second is marking audience explicitly, because the same change needs different words for operators, partner teams, and external developers.

A workable input bundle usually contains the following pieces.

  • Each change written as one action and its effect.
  • Any behavior that stopped working or changed shape.
  • New options, limits, or defaults that a reader can act on.
  • Upgrade steps, plus the version where each step becomes necessary.
  • Names, identifiers, and settings exactly as they appear in the product.

Notice that none of these items is prose. Raw material is evidence, not writing. The model supplies the prose, and you supply the evidence and the judgment.

Prompts work best with structure and plain constraints

A prompt for release notes does not need to be clever. It needs to be structured and plain about constraints. State the audience, the tone, the length, the section order, and the things to leave out. Ask for a short headline per change, a two sentence explanation, and a note on impact. Ask the model to leave a visible marker where information is missing rather than inventing a plausible detail, and ask it to list the questions a reviewer should answer before publication.

Constraints are where quality lives. A request that says to avoid marketing language, to name no internal teams, to keep sentences under twenty words, and to flag anything that might break a reader's integration will produce a draft you can actually edit. A request that only asks for nice release notes will produce something friendly and vague.

Small models handle short diffs quickly and cheaply, while larger ones absorb long histories and keep many details in play. For a focused set of changes, Claude Haiku 4.5 is a sensible drafter, and for a release touching many services, Gemini 3.1 Pro holds a wider context without losing thread. The important part is consistency of the request, not the prestige of the name.

This is also where infrastructure choices matter less than people expect. BestRelay is a quality-first API relay that forwards each request to the official model named in it, with no substitution, and it works with familiar coding tools and SDKs. Billing is pay-as-you-go from the token counts the provider reports, with cache reads and writes priced separately, and members earn a referral commission when people they invite top up. None of that changes your draft. It simply means the draft you approve comes from the model you chose.

Reviewers catch model guesses before readers see them

Review is the step that turns a draft into a document. Models fill gaps with confident prose, and readers cannot tell the difference between a real fact and a well-shaped guess. Read the draft against the evidence you gathered. Every claim should trace back to a change, a test, or a decision you can point to.

A focused review pass covers a few recurring traps.

  • Invented numbers, such as performance gains nobody measured.
  • Wrong names for settings, endpoints, or versions.
  • Breaking changes softened into gentle improvements.
  • Promises about future work presented as current behavior.
  • Repetition that makes three changes sound like one.

After the facts hold, edit for the reader. Replace abstractions with concrete verbs, cut hedges, and make each change answer the question a user is actually asking: does this affect me, and if so, what do I do next. A good reviewer also trims the draft. Release notes gain authority from restraint, and the changes that need the most explanation are rarely the ones a writer wants to expand.

Keep a short record of what you corrected, and feed those corrections back into the next prompt. Patterns repeat across releases, and the fix you make today becomes a constraint that prevents the same mistake tomorrow.

Consistent tone turns updates into useful documentation

Consistency is what makes a release history readable over months. Keep one structure for every version, one verb style for every change, and one place where a reader learns about breaking behavior. When the format is stable, readers skim confidently and support teams can quote a line without apologizing for it.

Over time, a small style guide pays for itself: the preferred word for removals, the way you name versions, the rule for grouping related changes, and the tone for known issues. Feed those rules into every prompt and into every review, and the drafts get easier to approve. The writing becomes a habit rather than a chore, and the archive becomes documentation people actually search.

AI does not remove the craft from release notes. It removes the blank page and the mechanical typing, and it leaves the judgment, the precision, and the responsibility with the people who shipped the change. Start with a tight input, a constrained prompt, and a stubborn review pass, and the drafts will hold up.

Create a BestRelay account when you want to try this workflow.