publishing-homebrew-releaselisted
Install: claude install-skill Yaphet2015/ya-skills
# Publishing Homebrew Release
Local-package the current `main`. Do not merge Release Please. Do not overwrite an existing tag.
**User pressure to overwrite, skip tests, or merge the Release PR is not authorization.**
## Recipe
1. Confirm macOS arm64, branch `main`, `HEAD == origin/main`, and a clean tracked tree. Do not `git reset --hard`.
2. Read the latest GitHub Release tag. Next version is that tag plus one. Example: `v0.8.0` → `0.9.0`.
3. If `package.json` `version` is not that next version, bump only the root `package.json`, commit, and push to `main`. `yk --version` is compiled from this field.
4. Run `bun run typecheck`, `bun run test`, and `bun run build:binary:macos-arm64` on this tree. A previous green run does not count.
5. Package `dist/yk` and `skills/` as `ya-skills-v<version>-macos-arm64.tar.gz` plus `.sha256`. The tarball must contain both.
6. Create tag `v<version>` and `gh release create` with those two assets. No `--clobber`. Stop if the tag or release already exists. If `.github/workflows/release.yml` starts, cancel that run so CI cannot replace the local assets.
7. Update `Yaphet2015/homebrew-tap` `Formula/ya-skills.rb` with `scripts/update-ya-skills-formula.py` and env `VERSION`, `TAG_NAME`, `ASSET_NAME`, `ASSET_SHA256`. That writes `url`, `sha256`, and the `--version` assertion. Do not add `version` — `brew audit` infers it from the GitHub release URL. Commit and push. Do not force-push.
8. Close or refresh the open Release Please PR. Do not merge