Install and release
Operator-facing release verification and install details.
This page covers the public install path and the release trust path together.
Homebrew
Use Homebrew for the normal public CLI install path:
brew tap gethasp/tap
brew install gethasp/tap/hasp
hasp version
Use Install for Homebrew upgrade and uninstall commands.
Hosted release layout
GitHub Releases are the canonical hosted asset location.
The optional R2 mirror, when configured for the same byte set, uses https://downloads.gethasp.com/hasp/releases/<tag>/.
Documentation release gate
Do not cut a tag until the docs match the release.
Before creating a tag:
- Update every public doc page affected by new or exposed functionality.
- Update examples, command output, install steps, agent profile pages, and error guidance when behavior changes.
- Add any new docs page to the docs index/navigation source.
- Do not publish a new docs version yet; versioned public docs are created only after the core HASP app release tag exists.
- Keep the release gate process-bounded: the Go test wrapper defaults package
parallelism to
-p 1, and daemon lifecycle changes should leave noapp.test daemon serve,runtime.test daemon serve, orhasp-evals-bin*/hasp daemon servehelpers behind.
The public /docs/ route and every release route /docs/vX.Y.Z/ must describe
a currently released core HASP app tag. Do not use the macOS wrapper roadmap or
an unreleased VERSION bump to create a public docs version.
Source build
make build
The local binary lands at bin/hasp.
Direct packaged release
scripts/hasp-verify-release.sh hasp_<version>_<os>_<arch>.tar.gz
scripts/hasp-install-release.sh --verify hasp_<version>_<os>_<arch>.tar.gz
Lifecycle helpers:
scripts/hasp-upgrade-release.sh --verify hasp_<version>_<os>_<arch>.tar.gz /path/to/install-dir
scripts/hasp-uninstall-release.sh /path/to/install-dir
Release trust path
- verify the signed checksum manifest
- verify the tarball signature
- verify the packaged binary signature
- install only the exact release bytes that were published