Repository navigation
fix(plugin): point skills at the files the plugin installed - #439
Merged
Merged
Conversation
The plugin ships rules/, snippets/ and templates/, but every skill linked
them on GitHub main. Reading a snippet needed the network, and a pinned
install read main's copy, which may no longer match its skill text.
build_plugin_dist.py now rewrites, in the dist only:
- SKILL.md links to snippets/, templates/, rules/, claude/ and skills/
become ${CLAUDE_PLUGIN_ROOT}/..., which Claude Code substitutes in
plugin skill content.
- Every other blob/main or tree/main link pins the release tag.
verify() fails the build when a ${CLAUDE_PLUGIN_ROOT} target is missing
from the dist or any main link survives. The fingerprint ignores the tag,
so a release with unchanged content still does not republish (#350).
Closes #394
Signed-off-by: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Owner
Author
|
CI evidence before merge: all checks pass ( 13 pass ). Blender Smoke on PR head: Blender 5.2.2 LTS / Blender 4.5.14 LTS. Summaries (happy path; falsifiers) per leg: 141 passed, 3 skipped, 0 failed;136 passed, 7 skipped, 0 failed;143 passed, 1 skipped, 0 failed;143 passed, 0 skipped, 0 failed; |
Owner
Author
|
Post-merge check: |
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.
Closes #394.
What changed
scripts/build_plugin_dist.py(dist only; repo files and the GitHub view keep their links):snippets/,templates/,rules/,claude/orskills/become${CLAUDE_PLUGIN_ROOT}/.... The Claude Code skills docs list${CLAUDE_PLUGIN_ROOT}as "The plugin's installation directory. Substituted only in plugin skills."blob/main/tree/mainlink pins the release tag. The release builds the dist after VERSION is bumped and the tag is cut, sov{VERSION}exists when the link is published.verify()errors on a${CLAUDE_PLUGIN_ROOT}target missing from the dist, and on any surviving main link.fingerprint()blanks/blob|tree/vX.Y.Z/, so the per-release tag does not defeat release: content fixes under docs: never reach plugin users, while site-only commits bump the plugin version #350's no-op detection.Evidence
Local build (live run):
verifyok.${CLAUDE_PLUGIN_ROOT}/snippets/gltf_draco_export.py.v0.143.14: 20 examples links, 9 inclaude/blender-rules.md(a reference doc, not loaded skill content) and 1 docs link./main/link left.Tests:
tests/test_build_plugin_dist.pyhas 5 new cases (11 total, all pass):verifyflags an injected missing target and an injected main link;Inspection only: Claude Code's expansion of the variable inside an installed plugin was not exercised; that relies on the docs.
🤖 Generated with Claude Code