Skip to main content
This runbook is for maintainers with permission to publish GitHub releases and update public installer endpoints.

Release targets

PlatformRust targetArchive
Linux x64x86_64-unknown-linux-gnu.tar.gz
Windows x64x86_64-pc-windows-msvc.zip
macOS x64x86_64-apple-darwin.tar.gz
macOS ARM64aarch64-apple-darwin.tar.gz
Every archive should be accompanied by a .sha256 checksum file.

Preconditions

Before tagging:
  1. confirm the intended workspace version;
  2. finalize CHANGELOG.md with an absolute release date;
  3. ensure README and docs describe the shipped command surface;
  4. run local quality gates;
  5. confirm native, WSL, coverage, audit, provider-smoke, and plugin-related jobs;
  6. test install, setup, sync, doctor, update, plugin install, uninstall, prune, and setup-ci with a temporary JOLTER_HOME;
  7. verify legacy schema and manifest compatibility fixtures.
Do not publish from a dirty or unreviewed worktree.

Tagging

git tag -a v0.3.0 -m "Jolter v0.3.0"
git push origin v0.3.0
The pushed tag must match the workspace version.

Artifact verification

After CI completes:
  1. download every release archive and checksum;
  2. verify checksums on a separate machine or clean runner;
  3. inspect archive paths and required files;
  4. execute jolter --version;
  5. run jolter setup with a temporary home;
  6. install and execute at least one supported runtime;
  7. install and list at least one plugin when registry state allows;
  8. verify release notes and attached filenames.

Installer publication

Public entry points:
https://get.jolter.dev/install.ps1
https://get.jolter.dev/install.sh
Before announcement, verify both endpoints select the intended release, download the matching platform artifact, validate checksum, and install a working binary.

Smoke matrix

Validate:
  • Windows PowerShell installation and setup;
  • Linux Bash installation and setup;
  • macOS installation on every published architecture;
  • WSL command dispatch;
  • Node.js LTS installation;
  • Bun and Deno installation;
  • managed pnpm through Node.js;
  • schema v2 multi-tool project;
  • plugin install, plugin list, and plugin tool shim;
  • CI plain logs and JSON output;
  • offline reuse after online sync.

Rollback

If artifacts are invalid or the installer selects a broken release:
  1. stop the public installer from selecting the affected version;
  2. mark the GitHub release as prerelease or remove it from normal discovery;
  3. preserve logs and artifacts for investigation;
  4. publish a corrected patch release instead of replacing immutable artifacts;
  5. document user impact and recovery in changelog and release notes.
Never silently replace an archive while retaining its filename or tag. That invalidates published checksums.