✍️ Writing
Changelog and Release Notes from a Git Log (No Invented Commits)
Turn a pasted git log into Keep a Changelog notes and a customer release note. No invented SHAs, authors, or unlogged features.
0Reviews
Prompt
Act as a release editor who ships Keep a Changelog 1.1.0 notes from git history. You only list commits that appear in the pasted log. You do not invent SHAs, authors, dates, ticket IDs, or features that are not in the log or Inputs. You work only from Inputs. You do not invent stats, citations, quotes, URLs, names, or records that are not in Inputs. Inputs: - Package or product name and version you are shipping: [NameVer] - Compare range (from tag to tag): [Range] - Pasted git log (oneline or medium, include SHA): [Log] - Breaking changes I already confirmed: [Breaking] - Security fixes I already confirmed (CVE ids only if I paste them): [Security] - Audience for the customer note: [Audience] - Upgrade steps I can prove: [Upgrade] - Known issues still open: [Issues] - Words I must not use: [Banned] - Date of the tag (ISO) if tagged: [Date] Generate: 1. Honesty ledger: every SHA, author, date, ticket, and version that appears in Log, Breaking, Security. Anything not on the ledger is forbidden. 2. Keep a Changelog 1.1.0 block for NameVer: Added, Changed, Deprecated, Removed, Fixed, Security. Each bullet must cite at least one SHA from Log. Empty sections write none in this range. 3. Unmapped commits: list SHAs whose messages do not fit a section. Do not silently drop them. 4. Customer release note (180-280 words): what changed for Audience. No SHA dump. No features that lack a SHA. 5. Upgrade notes: only Upgrade. If Upgrade is blank, write not specified. 6. Known issues: only Issues. Do not close them in prose. 7. Compliance pass: quote any drafted line that uses Banned words, invented commits, or implied CVE ids. Cut or rewrite. Constraints: - Keep a Changelog 1.1.0 headings only. Do not switch to a marketing changelog. - Never invent a commit, author, or 'also includes'. - If Range does not match the SHAs, say so and stop grouping as if it did. - Security bullets may only use CVE ids present in Security. - No emojis unless a commit message already used them.
Instructions
Replace every [bracket] with your details before running. Works on ChatGPT, Claude, and Gemini.
Examples
Example Input
NameVer: northwind-cli 2.4.0 Range: v2.3.1..v2.4.0 Log: a1b2c3d 2026-08-12 Jane Ortiz fix: retry S3 copy on 503 (NW-441) b4e5f6a 2026-08-14 Jane Ortiz feat: --dry-run for restore (NW-448) c7d8e9f 2026-08-15 Omar Singh breaking: drop Python 3.9 classifier in pyproject d0e1f2a 2026-08-18 Omar Singh docs: restore flag in README e3f4a5b 2026-08-19 Priya Shah chore: bump actions/checkout to v4.2.2 Breaking: drop Python 3.9, confirmed in c7d8e9f Security: none pasted Audience: SREs who restore nightly dumps Upgrade: require Python 3.10+; pip install -U northwind-cli==2.4.0 Issues: Windows long-path restore still fails, tracked NW-402, not in this range Banned: blazingly fast, zero downtime, SOC2 Date: 2026-08-20
Example Output
1. Honesty ledger. SHAs I may cite: a1b2c3d, b4e5f6a, c7d8e9f, d0e1f2a, e3f4a5b. Authors: Jane Ortiz, Omar Singh, Priya Shah. Tickets in log: NW-441, NW-448. Breaking confirmed: drop Python 3.9 (c7d8e9f). Security CVE ids: none. Version: northwind-cli 2.4.0. Tag date: 2026-08-20. Range: v2.3.1..v2.4.0. Forbidden: extra SHAs, SOC2, zero downtime, implied CVE, Windows fix (NW-402 is an open issue, not a commit). 2. Keep a Changelog 1.1.0 for [2.4.0] - 2026-08-20 Added: --dry-run for restore (b4e5f6a, NW-448). Changed: none in this range. Deprecated: none in this range. Removed: Python 3.9 classifier in pyproject (c7d8e9f). Breaking. Fixed: retry S3 copy on 503 (a1b2c3d, NW-441). Security: none in this range. Docs/chore that do not get a product bullet: README restore flag (d0e1f2a); actions/checkout v4.2.2 (e3f4a5b). 3. Unmapped commits: e3f4a5b chore bump of actions/checkout is CI, not a user-facing Added/Fixed. Keep it off the customer note. d0e1f2a is docs; mention only if Audience asked how to find --dry-run. 4. Customer release note. Northwind CLI 2.4.0 is tagged 2026-08-20. Restore now has --dry-run so you can print the plan before writing objects (NW-448). S3 copy retries on HTTP 503 (NW-441). Python 3.9 is no longer classified; you need 3.10 or newer. We did not paste a CVE. Windows long-path restore (NW-402) is still open and is not in this tag. 5. Upgrade notes. Require Python 3.10+. pip install -U northwind-cli==2.4.0. No other upgrade steps were provided. 6. Known issues. Windows long-path restore still fails, NW-402, not in this range. Do not write it as fixed. 7. Compliance. Cut: blazingly fast, zero downtime, SOC2. No invented SHA. No 'also ships encryption'. Security section stays none in this range.