From 66e2e6a04d397f6942740fce861635ed0fead058 Mon Sep 17 00:00:00 2001 From: Defame1297 Date: Sun, 28 Jun 2026 15:27:05 +0000 Subject: [PATCH] fix(plugin-author): bump version on every UPDATE flow mutation ## Why The UPDATE flow only bumped version when the version field itself was the target. Metadata changes (description, keywords, author) went out without a version bump, making them invisible to consumers with a cached copy. Co-authored-by: Claude Sonnet 4.6 --- plugins/kyberforge/.claude-plugin/plugin.json | 2 +- plugins/kyberforge/plugin.json | 2 +- plugins/kyberforge/skills/plugin-author/SKILL.md | 7 ++++++- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/plugins/kyberforge/.claude-plugin/plugin.json b/plugins/kyberforge/.claude-plugin/plugin.json index b2e79f0..6ac678c 100644 --- a/plugins/kyberforge/.claude-plugin/plugin.json +++ b/plugins/kyberforge/.claude-plugin/plugin.json @@ -8,5 +8,5 @@ "keywords": [], "license": "MIT", "name": "kyberforge", - "version": "1.0.5" + "version": "1.0.6" } diff --git a/plugins/kyberforge/plugin.json b/plugins/kyberforge/plugin.json index 8b3fcfe..76868de 100644 --- a/plugins/kyberforge/plugin.json +++ b/plugins/kyberforge/plugin.json @@ -13,5 +13,5 @@ "skills": [ "skills/" ], - "version": "1.0.5" + "version": "1.0.6" } diff --git a/plugins/kyberforge/skills/plugin-author/SKILL.md b/plugins/kyberforge/skills/plugin-author/SKILL.md index 60c0c28..8f66245 100644 --- a/plugins/kyberforge/skills/plugin-author/SKILL.md +++ b/plugins/kyberforge/skills/plugin-author/SKILL.md @@ -25,6 +25,7 @@ metadata: ## Gotchas - Both manifests must carry identical `version` values — version parity is a hard invariant (ADR-0016). Never update version in one manifest without updating the other in the same edit pass. +- Every UPDATE to non-version fields (description, keywords, author, etc.) requires a patch bump to `version` in both manifests in the same edit pass. Consumers cache plugin metadata and use the version to detect changes — skipping the bump makes the update invisible until a forced refresh. - `author.email` is placed in the Copilot manifest by convention; `author.url` is placed in the CC manifest by convention. Both fields are supported by both platforms — do not add them to the other manifest without a deliberate reason. - `claude plugin tag --push` is irreversible: it creates a git tag and pushes it to remote. Always present the HITL gate and wait for explicit confirmation before running it. - `claude plugin tag --push` requires a clean working tree and will fail if there are uncommitted changes. Commit or stash all changes before running it. @@ -135,7 +136,11 @@ If the target field is not listed in the classification table, read `references/ State which fields change and which files are affected. Then apply. For `version` changes not part of a release, bump both manifests in the same edit. -### Step 4 — Validate +### Step 4 — Bump version + +If the change did not explicitly target the `version` field, apply a **patch bump** to `version` in both manifests in the same edit pass (e.g. `1.2.3` → `1.2.4`). Skip this step only when the user has explicitly set the version themselves in Step 3. + +### Step 5 — Validate Re-run the validation checklist from CREATE flow Step 3 on both files.