From c873047a60ba58c128a91cce1438525d7bd86f9b Mon Sep 17 00:00:00 2001 From: Kevin Veen-Birkenbach Date: Fri, 30 Oct 2026 19:27:37 +0100 Subject: [PATCH] fix(changelog): warn when a workflow on HEAD already failed before a release Co-Authored-By: Claude Opus 5.5 (1M context) --- skills/changelog/SKILL.md | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/skills/changelog/SKILL.md b/skills/changelog/SKILL.md index dd5bf67..6f6b833 100644 --- a/skills/changelog/SKILL.md +++ b/skills/changelog/SKILL.md @@ -26,10 +26,16 @@ git log --no-merges --format='%h %s%n%b' ..HEAD commit it reverts inside the range. - A subject is a lead, not the change: read the diff (`git show --stat`, then the hunks) when the subject does not say what changed for the user. -- When `gh` is available, check the previous tag's CI run - (`gh run list --branch -L 1`). A failed run means that version was - never published: say so under *Upgrade notes* and carry its upgrade notes - forward to this release. +- When `gh` is available, read the CI of the previous tag's commit and of HEAD, + every workflow (`gh run list --commit --json + workflowName,status,conclusion`), not one picked by `-L 1`. + - Previous tag: a workflow that finished as a failure means that version was + never published: say so under *Upgrade notes* and carry its upgrade notes + forward to this release. + - HEAD: a workflow that finished as a failure means pkgmgr would tag a + release that never goes stable, because its CI gate runs after the tag. + Queued, running or missing runs are normal; report only the failure, in + step 5. ## 2. Sort into sections @@ -130,6 +136,8 @@ used, shorten only the lines it names, and lint again. `feat` → minor, otherwise patch). 3. One line with the lint result (`markdownlint-cli2: 0 errors` or the manual check that ran). +4. Only when a workflow on HEAD finished as a failure: one line naming it and + its run, and the advice not to release before it is green. Then stop. Never edit CHANGELOG.md or a version file, never run `pkgmgr release`, never tag: the operator releases.