From 61052f554487ba1b3914f9b2dec6d0eddcc0e1f2 Mon Sep 17 00:00:00 2001 From: Roberto Cano <3525807+robercano@users.noreply.github.com> Date: Mon, 6 Jul 2026 17:02:47 +0200 Subject: [PATCH] fix(harness): bump plugin version 0.1.0 -> 0.1.1 so the hooks.json fix ships /plugin marketplace update only re-fetches plugin content when the version string actually changes. The hooks.json schema fix (previous PR) merged to main but never reached an already-installed consumer (reDeploy) because plugin.json's version was still 0.1.0 -- the consumer's cache at ~/.claude/plugins/cache/ai-project-orchestrator/orchestrator/0.1.0/ had no reason to refresh. Bumps .claude/.claude-plugin/plugin.json and the matching entry in .claude/.claude-plugin/marketplace.json (the local-clone method's manifest; the repo-root alias deliberately has no version and tracks the git SHA instead, unaffected). Adds a maintainer note to USAGE.md's "Updating the plugin" section so this isn't missed again. --- .claude/.claude-plugin/marketplace.json | 4 ++-- .claude/.claude-plugin/plugin.json | 2 +- docs/USAGE.md | 8 ++++++++ 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/.claude/.claude-plugin/marketplace.json b/.claude/.claude-plugin/marketplace.json index c2c7ca7..f62c53a 100644 --- a/.claude/.claude-plugin/marketplace.json +++ b/.claude/.claude-plugin/marketplace.json @@ -4,13 +4,13 @@ "name": "Roberto Cano" }, "description": "Multi-agent orchestration harness: fan out sub-tasks to isolated worktree implementers, gate them, and route results through reviewers.", - "version": "0.1.0", + "version": "0.1.1", "plugins": [ { "name": "orchestrator", "source": "./", "description": "Multi-agent orchestration harness: fan out sub-tasks to isolated worktree implementers, gate them, and route results through reviewers.", - "version": "0.1.0", + "version": "0.1.1", "author": { "name": "Roberto Cano" } diff --git a/.claude/.claude-plugin/plugin.json b/.claude/.claude-plugin/plugin.json index 2b29db1..3f06301 100644 --- a/.claude/.claude-plugin/plugin.json +++ b/.claude/.claude-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "orchestrator", - "version": "0.1.0", + "version": "0.1.1", "description": "Multi-agent orchestration harness: fan out sub-tasks to isolated worktree implementers, gate them, and route results through reviewers.", "author": { "name": "Roberto Cano" } } diff --git a/docs/USAGE.md b/docs/USAGE.md index 7c0f835..95de507 100644 --- a/docs/USAGE.md +++ b/docs/USAGE.md @@ -177,6 +177,14 @@ ships and re-stamps anything behind — flagging local edits instead of clobberi re-running the whole interview, and never touches your own `gates.json`/`CLAUDE.md` (those are created once and left alone on every re-run). +> **Maintainer note: bump `plugin.json`'s `version` on every real change.** `/plugin marketplace update` only +> re-fetches plugin content when the plugin's version string actually changes (`.claude/.claude-plugin/plugin.json` +> and, for the local-clone method, `.claude/.claude-plugin/marketplace.json`'s matching entry). Merging a fix to +> `main` without bumping that version means every existing installer's cached copy — at +> `~/.claude/plugins/cache/ai-project-orchestrator/orchestrator//` — silently never updates, even +> after `/plugin marketplace update`. Caught 2026-07-06: a `hooks/hooks.json` schema fix merged to `main` but +> didn't reach an already-installed consumer until the version string was bumped too. + ## Merge discipline - **`pr-per-agent`** (default): each worker → branch → PR. You (or a merge step) integrate; conflicts surface at PR time. Cleanest/auditable.