--- name: release description: Release vercel-plugin — run gates, bump version, generate artifacts, commit, and push. Use when asked to "release", "ship", "bump and push", or "cut a release". --- # Release End-to-end release workflow for vercel-plugin. ## Workflow ### 1. Pre-flight checks Run all gates in parallel: ```bash bun run typecheck # tsc --noEmit on hooks/src bun test # all test files bun run validate # skill frontmatter + manifest integrity ``` **Stop if any gate fails.** Fix issues before proceeding. ### 2. Determine version bump Read the current version from `.plugin/plugin.json`. Ask the user which semver component to bump if not specified: | Bump | When | |-------|-------------------------------------------| | patch | Bug fixes, test/fixture updates, docs | | minor | New skills, new hooks, new features | | major | Breaking changes to hook API or skill map | Default to **patch** if the user says "release" without specifying. ### 3. Bump version Update the `version` field in `.plugin/plugin.json`. This is the **only** version source of truth. ### 4. Rebuild generated artifacts ```bash bun run build # hooks (tsup) + manifest ``` This compiles `hooks/src/*.mts` → `hooks/*.mjs` and regenerates `generated/skill-manifest.json`. ### 5. Stage, commit, and push ```bash git add -A git commit -m "; bump to " git push ``` Commit message style: match existing convention — descriptive summary followed by `; bump to X.Y.Z` (see git log for examples). The pre-commit hook will re-run typecheck and recompile hooks automatically. If it fails, fix the issue and create a **new** commit (never amend). ## Version source of truth `.plugin/plugin.json` — the `version` field. There is no `package.json` version to sync. ## Checklist (copy into your reasoning) - [ ] typecheck passes - [ ] tests pass - [ ] validate passes - [ ] `.plugin/plugin.json` version bumped - [ ] `bun run build` succeeded - [ ] commit includes all changes - [ ] pushed to main