cut-releaselisted
Install: claude install-skill Chemaclass/agnostic-ai
<!-- Generated by agnostic-ai. Do not edit this file directly; edit specs under .agnostic-ai/ and run `agnostic-ai sync`. -->
# cut-release
Cuts a new release of agnostic-ai. The release commit carries the version,
exact changelog, and one public release briefing. GoReleaser publishes
artifacts and the GitHub Release once the tag is pushed. Pages publishes the
briefing from the same commit on `main`.
## When to run
The user asks to release, tag, ship, or cut a new version.
## Steps
1. Confirm working tree clean and on `main`. `git pull --ff-only`.
2. `make ci-local`. Not `make preflight`. Refuse to proceed on any failure.
`preflight` is fmt-check, vet, lint and tests. It is the gate for a normal
change, and it is not enough to cut a release: it skips the race detector,
the WASM build, schema drift, `agnostic-ai lint`, the shell suite, and both
editor extensions. `ci-local` runs every one of those, in the workflow's
own order.
`SKIP_JETBRAINS=1` exists because the gradle wrapper downloads its
distribution on a cold machine and some environments cannot reach it. If
you use it, say so in the release report: that job was not gated locally.
Two gaps `ci-local` cannot close, both needing the remote run:
- It tests on this machine's OS alone. A pull request now tests on Linux
only (#982), so the macOS and Windows jobs may never have run against
this tree.
- It cannot run the plugin version-bump job, which compares a pull request