Publish codexbar-cli.exe as a release asset with checksum

Merged
FI
2mo ago
+53-18

Closes #392.

Adds CodexBarCLI-v<version>-windows-x64.zip + SHA-256 sidecar to release assets, matching upstream's CLI tarball convention. Updates the 4-asset release contract (builder, publisher, manifest, doctor, CI asset assertion) to a 5-asset contract. Enables third-party integrations (kandev plugin) to consume the CLI without installing the GUI.

Changes:

  • scripts/windows-release-build.ps1: package codexbar-cli.exe into CodexBarCLI-v<version>-windows-x64.zip and emit its .sha256 sidecar alongside installer/portable assets.
  • scripts/release-pipeline-common.ps1: extend Get-RequiredReleaseAssets with the CLI zip + sidecar (source of truth for the contract).
  • scripts/emit-release-manifest.ps1: assert + copy the new asset into the manifest bundle.
  • scripts/publish-github-release.ps1: six-asset manifest guard + CLI sidecar verification before upload.
  • scripts/release-doctor.ps1: local hash check + GitHub release presence check for the new asset.
  • scripts/ci/assert-release-assets.ps1 / .cmd: include the new asset in CI assertions.
  • .github/workflows/signpath-test.yml: publish glob now also matches CodexBarCLI-v<version>-*.
  • scripts/release-pipeline.tests.ps1: contract tests updated for the extended asset list.

Summary by CodeRabbit

  • New Features

    • Windows releases now include a versioned CLI ZIP archive alongside the installer and portable application.
    • The CLI archive and its SHA-256 checksum are published with each GitHub release.
  • Bug Fixes

    • Release validation now verifies all six expected Windows assets, including the CLI archive and checksum, helping detect incomplete or inconsistent releases.
  • Documentation

    • Release documentation now describes the expanded six-asset package and CLI archive availability.