Releasing
Releasing Attestack
Section titled “Releasing Attestack”Maintainer checklist for shipping a version.
Pre-release gate
Section titled “Pre-release gate”From a clean checkout:
./scripts/release-check.shThis runs fmt/clippy/tests, smoke test, agent setup smoke, and mdBook (if installed).
Ship steps
Section titled “Ship steps”-
Update changelog — edit
CHANGELOG.mdwith the release date and highlights. -
Commit — ensure the full tree is on
main. -
Tag and push:
Terminal window git tag -a vX.Y.Z -m "Attestack vX.Y.Z"git push origin maingit push origin vX.Y.Z -
Verify GitHub Actions —
release.ymlpublishes matrix artifacts;docs.ymlupdates GitHub Pages (requires a public repository on the free GitHub plan). -
Smoke the release artifact on a machine without Rust:
Terminal window curl -fsSL https://raw.githubusercontent.com/kiket-dev/attestack/main/scripts/install.sh | bash# Private repo: gh auth login first, then the same command (install.sh falls back to gh)attestack --helpattestack doctor -
Dogfood agents — in a real project:
Terminal window ./scripts/setup-agent.sh cursor --with-rulesattestack start "dogfood task"# use Cursor MCP tools, then:attestack stop && attestack bundle create
After release
Section titled “After release”- Announce with the quick start and agent setup links.
- Open issues for follow-up work (PR summaries, Sigstore signing, SDKs).
Rollback
Section titled “Rollback”Delete the GitHub Release and tag if a bad artifact shipped:
git tag -d vX.Y.Zgit push origin :refs/tags/vX.Y.ZFix, re-tag a new version (never re-use a published tag).