chore(marketplace): move hypermnesia-mcp-viz pin to v3.1.1 - #429
Conversation
The manifest pinned v3.1.0 / 052e4a40 while cortex-viz had shipped v3.1.1 (2026-08-10, bugfix release). A release is not delivered until its pin moves: plugin installs subscribe through this manifest, not through the upstream tag. check_marketplace_pins.py flagged PIN_BEHIND_RELEASE on main. Pin verified against the upstream refs, not inferred: gh api repos/cdeust/cortex-viz/git/ref/tags/v3.1.1 -> 33fa1646… upstream .claude-plugin/plugin.json declares version 3.1.1 Gate: python3 scripts/check_marketplace_pins.py exits 0. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01263uv1QqR8TVzw2jXYUrXn
|
ZETETIC-REVIEW: APPROVE The judge on this diff is mechanical, not editorial — every claim it makes is decided by data anyone can re-fetch: The three edited fields ( Scope is the pin and nothing else: no description rewrite, no version bump of the umbrella manifest, no adjacent cleanup folded in. One reserve, stated rather than hidden: the check verifies that the pinned tag exists and is the newest release, not that v3.1.1 is functionally sound. That is cortex-viz's own CI's job, and its release gate ran there. |
test_claude_marketplace_publishes_pinned_canonical_viz_identity froze version/ref/sha as literals, so moving the pin to v3.1.1 turned the guard red by construction — the test had to be hand-edited on every legitimate release. That makes it a change detector, not a guard: the literal adds no detection the manifest diff does not already give, while adding a second place to get wrong. It now asserts the invariant the #179 defect actually broke — a release pin names its tag (`ref == v{version}`) and pins a full 40-hex sha — and keeps the incident's rationale in a comment so the why survives. Tag existence upstream stays a network question, answered by scripts/check_marketplace_pins.py on every manifest PR and weekly cron. Discrimination shown, not asserted: the #179 shape (sha, no `ref`) is rejected on the missing key; a version/ref disagreement is rejected; the current pin passes. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01263uv1QqR8TVzw2jXYUrXn
|
ZETETIC-REVIEW: APPROVE Fresh verdict on head Two commits, one subject. The pin move. Verified against the upstream refs rather than inferred:
The test change, which is the substance. Discrimination shown rather than claimed: the historical #179 shape (a sha with no Scope check: Green: 24 pass, 0 fail, 2 skipping. Gate: Reserve, stated rather than buried: the offline invariant cannot know whether the tag exists upstream. That stays a network question, answered by |
hypermnesia-mcp-vizwas pinned to v3.1.0 /052e4a40while cortex-viz had already shipped v3.1.1 (bugfix release, 2026-08-10). Until the pin moves, that fix reaches zero installs — installs subscribe through this manifest, not through the upstream tag. This is the failure mode #179 was filed against.Changed:
ref,shaandversionof thehypermnesia-mcp-vizentry, nothing else.Pin verified at the source, not inferred:
gh api repos/cdeust/cortex-viz/git/ref/tags/v3.1.1→33fa1646ec3eb4f9045b4d4df91bc6872ac951a7.claude-plugin/plugin.jsondeclares"version": "3.1.1"Gate:
python3 scripts/check_marketplace_pins.py→ exit 0 ("All marketplace pins current"), againstPIN_BEHIND_RELEASEon main before the change.The script also emits a standing NOTICE: the MCP registry serves 4.17.1 while the repo is at 4.17.2. That is unrelated to this diff and resolves on the next
v*tag push viarelease.yml::publish-mcp-registry; no CI credential exists to publish it sooner.This unblocks the Cortex release tag.