Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions .codex/skills/release/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
name: release
description: Cut a Symphony release by bumping the committed version, landing it, tagging the merged commit, and verifying the Burrito release workflow. Use when asked to release, tag, or retag Symphony.
---

# Release

1. Start from fresh `origin/main` in a clean worktree. Never disturb unrelated
local changes.
2. Pick the requested version. If none is given, use the next patch after the
latest `vX.Y.Z` tag.
3. Update `elixir/mix.exs` so `version: "X.Y.Z"` matches the intended tag.
Search the old version and change other files only when they are true
release-version sources, not examples.
4. Run `make -C elixir all`, then commit, push, create a PR, and land it.
5. Fetch the merged `main` commit. Verify its `mix.exs` version, then create an
annotated tag on that exact commit:

```sh
git tag -a vX.Y.Z <merged-commit> -m "Symphony vX.Y.Z"
git push origin vX.Y.Z
```

6. Watch `burrito-release` until it finishes. Verify the build, smoke, and
release jobs pass and that the GitHub release has all expected assets.

Do not tag an uncommitted or unmerged revision. Do not move a published tag
without explicit user approval.
Loading