fix(plugin): drop the static version so plugin updates track main - #54
Open
milanagm wants to merge 1 commit into
Open
fix(plugin): drop the static version so plugin updates track main#54milanagm wants to merge 1 commit into
milanagm wants to merge 1 commit into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
claude plugin updatereports "already at the latest version (1.0.0)". Butmainis many commits ahead. Installs stay on the commit they got at install time as the version field is never updated and proper versioning of the integration not set up yet. #51 shows a full reproduction.Cause
Claude Code reads the update version from the
versionfield inplugin.json. It compares this string to the installed version and thereby it does not compare git commits (docs: Version management).If we keep our version field as is at
1.0.0(since the first commit), the CLI never offers an update. The pinned version also blocks updates from the official Anthropic plugin directory as even if the directory re-pins commits, the manifest version has priority.Fix
We remove the
versionfield. Claude Code then uses the git commit as the version. Each commit onmainbecomes an update. This matches how we ship the plugin today: new installs always get the newest commit..claude-plugin/plugin.json— remove the fieldREADME.md— add an "Update" section with the two update commandstests/unit/test_plugin_manifest.py— new test: the manifests must not declare aversionfield again (claude plugin validatesuggests one, so this can easily happen)This PR adds no release process. If we want semver releases later, we add the field back, together with release tags (
claude plugin tag-release).Verification
We tested against the real CLI (v2.1.224) in an isolated
CLAUDE_CONFIG_DIR, with a local marketplace that mirrors this repo (source: "./").updated from 1.0.0 to <commit-id>. Stale installs move to the new model on their next update. No reinstall is needed.claude plugin validate .passes.After the merge, users on a stale install run:
Fixes #51
Linear: LFE-14887