From bccdf5e9729d344175bf1144263a44957992480f Mon Sep 17 00:00:00 2001 From: Trent Blackburn Date: Fri, 28 Aug 2026 15:09:23 -0400 Subject: [PATCH] ci: Report changelog format problems rather than failing on them validation_level: error turned psake/PowerShellBuild's CI red on main immediately. The action enforces more than the Keep a Changelog section vocabulary: it also applies a SemVer rule that a patch release may contain only Fixed and Security sections, since Added or Changed would warrant a minor bump. PowerShellBuild's 0.6.2, 0.7.2 and 0.7.3 each violate it. Those are releases already published. Recategorising their entries now would misdescribe what shipped, and cannot change the version numbers they shipped under, so the finding is real but not actionable by editing the file. Reporting keeps the finding visible without blocking every consumer on history none of them can fix. A repository that is clean can raise its own level later. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01U1Jhu7fgTRJq7LK5MuKteE --- .github/workflows/ModuleCI.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ModuleCI.yml b/.github/workflows/ModuleCI.yml index 820867f..9c7e434 100644 --- a/.github/workflows/ModuleCI.yml +++ b/.github/workflows/ModuleCI.yml @@ -12,7 +12,12 @@ jobs: runs-on: [ubuntu-latest] steps: - uses: actions/checkout@v4 - # Validates CHANGELOG.md against the Keep a Changelog format. Skipped when the + # Validates CHANGELOG.md against the Keep a Changelog format. Reports rather than + # fails: the action also enforces a SemVer rule that a patch release may contain + # only Fixed and Security sections, and existing psake module histories violate + # that in releases already published, which no edit can undo. Raise to error once + # a repository is clean, per repository, rather than org-wide. + # Skipped when the # repository has no changelog, so a consumer without one is not failed for it. # validation_depth defaults to 10 entries; raised so older releases are checked # too, which is where format drift accumulates unnoticed. @@ -20,7 +25,7 @@ jobs: if: hashFiles('CHANGELOG.md') != '' uses: mindsers/changelog-reader-action@v2 with: - validation_level: error + validation_level: warn validation_depth: 100 path: ./CHANGELOG.md - uses: streetsidesoftware/cspell-action@v6