Skip to content

1.0.1

Choose a tag to compare

@uHappyLogic uHappyLogic released this 05 Sep 11:03
· 25 commits to main since this release

Versioning And Release Tooling (milestone 17)

  • Added scripts/set_version.py, a one-argument MAJOR.MINOR.PATCH script that writes every in-repo version literal — .claude-plugin/plugin.json, .claude-plugin/marketplace.json, pyproject.toml, and uv.lock — in a single all-or-nothing pass, never touching git, gh, or the generated tree.
  • Taught scripts/migrate_skills_to_agy.py to read the source manifest's version at generation time and copy it into the generated .agents/plugins/cairn/plugin.json, so the Antigravity manifest carries a version on every regeneration path while .claude-plugin/plugin.json stays the single source of truth.
  • Added a maintainer-only /release-plugin <MAJOR.MINOR.PATCH> skill as the sole documented home of the release procedure, gated behind four hard pre-flight stops (clean tracked tree, HEAD on main, main not behind origin/main, no untracked sources) and three pre-mutation version refusals (malformed literal, an existing tag, a version not strictly greater than the last release).
  • Made the skill compose its own release notes from the Milestone-finish: commits since the last release, cross-checked against the ### Milestone headings added to milestones/README.md over the same range, stopping on a mismatch in either direction and falling back to commit-derived notes — on explicit confirmation only — when no milestone was finished.
  • Standardised a release on the bare MAJOR.MINOR.PATCH tag and exactly one path-scoped Release: <VERSION> commit, followed by a single pre-publish pause and check-then-do branch push, tag push, and gh release creation, so a re-run with the same version resumes from the first incomplete step instead of duplicating work.

Full Changelog: 0.9.9...1.0.1