Skip to content

Bump the Gallery manifest in step with the release version - #93

Merged
TheAbider merged 1 commit into
masterfrom
fix/psgallery-manifest-version
Jul 28, 2026
Merged

Bump the Gallery manifest in step with the release version#93
TheAbider merged 1 commit into
masterfrom
fix/psgallery-manifest-version

Conversation

@TheAbider

Copy link
Copy Markdown
Owner

What happened

v1.122.1 published to GitHub Releases but not to the PowerShell Gallery.

RackStack.psd1 was not in the version-sensitive file list, so its ModuleVersion stayed on 1.122.0 while the rest of the tree moved to 1.122.1. The Gallery publish step in ci.yml refuses to push a manifest whose version disagrees with Header.ps1 — that guard is correct and it did its job:

PSGallery publish: RackStack.psd1 ModuleVersion (1.122.0) does not match
Header.ps1 version (1.122.1). Bump the manifest.

The problem is where it fires. That step runs in the release job, so by the time it failed the GitHub release had already been created, signed, attested, and tagged. The steps behind it — winget submission, Chocolatey publish, and the retention rule — were skipped.

Re-running does not help: those steps are gated on steps.releasecheck.outputs.exists == 'false', and v1.122.1 now exists, so they would skip.

Fix

Releasing v1.122.2, which is self-healing — the retention rule collapses all 1.122.x releases to the newest, so this ends with a single release that is correct on every channel.

  • RackStack.psd1 bumped to 1.122.2 in step with every other version touchpoint.
  • New Run-Tests section 205 asserts that 00-Initialization.ps1, Header.ps1, RackStack.ps1, the Run-Tests synopsis, RackStack.psd1, and the changelog all agree on the version. A mismatch now costs a red check on the pull request instead of a half-published release. Verified against the exact failing state (init 1.122.2 + psd1 1.122.0) to confirm it catches the regression rather than passing vacuously.
  • RackStack.psd1 added to section 174's documentation-freshness list instead of duplicating the count-derivation logic. That immediately caught the manifest description advertising 176 CLI actions against a live 201 — a stale number that ships to the Gallery listing.

local/release-touchpoints.md and local/Validate-Release.ps1 (both untracked) were updated to match, so the checklist and the local gate no longer disagree with what CI enforces.

Verification

  • 5424/5424 structural tests pass, 0 failures
  • PSScriptAnalyzer: 0 findings
  • Pre-release validation: 38 passed, including RackStack.psd1 ModuleVersion matches (1.122.2)
  • Monolithic rebuilt and parse-checked, UTF-8 BOMs intact

The two remaining Validate-Release failures (stats footer, no empty version sections) are pre-existing and unrelated — both are stale expectations of a changelog convention abandoned around v1.98, and they fail identically on v1.122.0.

Contents

This carries everything in v1.122.1: the self-update integrity fix and the antivirus documentation.

RackStack.psd1 was not in the version-sensitive file list, so its
ModuleVersion stayed on 1.122.0 while the rest of the tree moved to
1.122.1. ci.yml's PSGallery step refuses to publish a manifest whose
version disagrees with Header.ps1, and it correctly did - but that step
runs in the release job, so the GitHub release had already been created,
signed, and attested by the time it failed. v1.122.1 therefore reached
GitHub Releases but not the Gallery, and the winget, Chocolatey, and
retention steps behind it were skipped.

- Bump RackStack.psd1 to 1.122.2 alongside every other version touchpoint
- Add Run-Tests section 205, asserting that 00-Initialization, Header.ps1,
  RackStack.ps1, Run-Tests' synopsis, RackStack.psd1, and the changelog all
  agree on the version, so a mismatch fails PR CI instead of part-way
  through a release. Verified against the v1.122.1 state: init 1.122.2 with
  psd1 1.122.0 fails the check.
- Add RackStack.psd1 to the section 174 documentation-freshness file list
  rather than duplicating the count logic. That immediately caught the
  manifest description advertising 176 CLI actions against a live 201 -
  a number that ships to the Gallery listing.
@TheAbider
TheAbider merged commit b10aa61 into master Jul 28, 2026
6 checks passed
@TheAbider
TheAbider deleted the fix/psgallery-manifest-version branch July 28, 2026 10:36
@codecov

codecov Bot commented Jul 28, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant