Skip to content

feat: Auto-bump astronomer-data plugin version on content changes#238

Open
kaxil wants to merge 1 commit into
mainfrom
plugin-auto-version-bump
Open

feat: Auto-bump astronomer-data plugin version on content changes#238
kaxil wants to merge 1 commit into
mainfrom
plugin-auto-version-bump

Conversation

@kaxil

@kaxil kaxil commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

Summary

The astronomer-data plugin has shipped from .claude-plugin/plugin.json with "version": "0.1.0" since the manifest was first created, and the string never moved. Claude Code resolves a plugin's version from plugin.json first, and skips an update whenever the resolved version matches what a user already has. So every user — including everyone on the official Anthropic marketplace, where we're listed as astronomer-data-agents, data, and data-engineering, all with "version": null (which falls through to this file) — has been frozen on whatever they first installed. New skills never reached them.

This PR does two things:

  1. Catches the version up to 0.2.0 so the next time our pinned sha is refreshed, the accumulated skill changes since 0.1.0 actually get delivered.
  2. Adds a workflow that auto-increments the patch version on every push to main that touches skills/** or the marketplace manifest — so we can't silently re-freeze.

Design rationale

  • Why automate instead of bumping by hand? Manual bumping is exactly what failed — the field sat at 0.1.0 across dozens of skill changes. The workflow makes the version advance a side effect of merging content.
  • Why patch-only auto-bump? Monotonic increase is all that's needed for update detection to fire. Deliberate minor/major bumps are still done by editing plugin.json in the PR; the workflow detects that the push already changed the version and skips its own bump, so it never fights a manual decision.
  • Why exclude plugin.json from the trigger paths? The bump commit only touches plugin.json; excluding it from paths stops the workflow from retriggering itself.
  • Format-preserving edit. The bump replaces only the version value via sed, leaving indentation and the trailing comma intact, so the manifest stays clean in diffs.
  • This mirrors how peer data-platform plugins handle it — Databricks (databricks-agent-skills) sits at 0.2.9 and Snowflake (snowflake-ai-kit) at 3.2.2; both bump on release rather than freezing.

Gotchas / tradeoffs

  • Direct push to main. The workflow commits the bump back to main using the default GITHUB_TOKEN. If main is protected against pushes from Actions, either grant github-actions[bot] a bypass, or swap the final step for a PR (e.g. peter-evans/create-pull-request) — flagged inline in the workflow.
  • Fork PRs that change skills won't auto-bump on their own merge (fork-token limitations); the next intra-repo push to main will catch the version up.
  • Every skill-touching merge now advances the patch version. That's intended — each change is meant to reach users — but it does mean a steady stream of chore: Bump ... commits.

Follow-up (not in this PR)

The bigger reach lever is that the official Anthropic marketplace pins our sha and only re-points it periodically, and we currently appear under three names there (astronomer-data-agents, data, data-engineering). Worth a separate cleanup/refresh conversation.

Catch up the frozen version to 0.2.0 and add a workflow that auto-increments
the patch version whenever skills or the marketplace manifest change on main,
so plugin updates actually reach users.
@kaxil kaxil requested a review from a team as a code owner June 30, 2026 19:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants