Skip to content

fix: repair drops an empty projectPath from user-scope installs - #15

Merged
grams merged 1 commit into
mainfrom
fix/user-scope-projectpath
Oct 21, 2026
Merged

grams merged 1 commit into
mainfrom
fix/user-scope-projectpath

Conversation

@grams

@grams grams commented Oct 21, 2026

Copy link
Copy Markdown
Contributor

claude plugin uninstall (Claude Code 2.1.306) fails with « Plugin "p@m" is not installed in user scope » on a user install that carries "projectPath": "", even with --scope user; the same entry without the key uninstalls fine. cplugins repair now removes the empty key from user installs (official marketplace skipped, project installs untouched).

Notes
  • dev, undev and repair don't write the key: the registry writer preserves keys as-is (checked on a fresh dev → undev → repair cycle). Where existing entries got it from is not established; the fix cleans them up.
  • E2E fixtures no longer model user installs with "projectPath": ""; same for unit fixtures and testdata.
  • New tests: dev → undev → claude plugin uninstall, repair → uninstall (precondition asserts the uninstall error first), project install kept intact; unit test for DropEmptyUserProjectPaths incl. no rewrite when unchanged.
  • make test green (E2E included), golangci-lint clean.

🤖 Generated with Claude Code

https://claude.ai/code/session_016sNiMarQfbcHRWLuevWarY

`claude plugin uninstall` (Claude Code 2.1.306) can't find a user install
that carries `"projectPath": ""`. cplugins never writes the key itself, but
registries already holding it stay stuck: `repair` now removes it. E2E
fixtures stop modelling user installs with the key, and new tests cover
dev → undev → uninstall and repair → uninstall.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016sNiMarQfbcHRWLuevWarY
@grams grams self-assigned this Oct 21, 2026
@grams
grams merged commit 5ef21c0 into main Oct 21, 2026
1 check passed
@grams
grams deleted the fix/user-scope-projectpath branch October 21, 2026 09:33
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.

1 participant