cli/publishing

CLI releases are manual, reproducible GitHub releases cut only from a green commit on main. They are independent from Lash SDK releases.

Release contract

  1. Merge a focused pull request into main after required CI passes.
  2. Ensure the releasable commit range contains a Release-Notes: commit section.
  3. Dispatch the repository's Release workflow. Leave release_sha blank for current main, or provide a green ancestor commit.
  4. The workflow validates ancestry and successful push CI, creates the next tag if needed, stamps the binary version, builds every supported target, and publishes the release.

Do not create release tags or upload artifacts by hand.

Published assets

Binaries

lash-linux-x86_64.tar.gz, lash-linux-aarch64.tar.gz, and lash-macos-aarch64.tar.gz.

Integrity + install

SHA256SUMS covers the binary archives. install_lash.sh is rendered for the exact release tag and installs the matching asset.

Version relationship

The CLI records one exact Lash Git revision in its root Cargo.toml. Updating that revision is an explicit compatibility change with its own checks. CLI and SDK version numbers do not need to advance together.