Bug Summary
The Jira and GitLab skill directories each contain a recursive symlink that points back to itself, creating an infinite directory loop. This causes plugin generation to miscount skills and can cause any recursive file operation to hang.
Symlink Details
| Symlink path |
Target |
Effect |
.github/skills/jira/jira/jira |
../../../../.github/skills/jira/jira |
.github/skills/jira/jira/jira/jira/... ∞ |
.github/skills/gitlab/gitlab/gitlab |
../../../../.github/skills/gitlab/gitlab |
.github/skills/gitlab/gitlab/gitlab/gitlab/... ∞ |
Impact
- Plugin generation (
npm run plugin:generate) miscounts skills (21 instead of 23) and may produce Removed: warnings for these skills during hve-core-all auto-update
- Any recursive file operation (linting, search, validation) can hit infinite recursion on these paths
Folder Structure is Correct
The double-nested paths .github/skills/jira/jira/ and .github/skills/gitlab/gitlab/ follow the {collection-id}/{skill-name}/ convention and are not redundant. No flattening is needed. All collection YAML references are already correct.
Required Fix
Delete the two recursive symlinks:
rm .github/skills/jira/jira/jira
rm .github/skills/gitlab/gitlab/gitlab
Then regenerate plugins:
Verification
After removing the symlinks, npm run plugin:generate runs cleanly:
- 222 discovered artifacts (no removals)
- Skills count: 23 (jira and gitlab correctly included)
- No warnings or errors
Bug Summary
The Jira and GitLab skill directories each contain a recursive symlink that points back to itself, creating an infinite directory loop. This causes plugin generation to miscount skills and can cause any recursive file operation to hang.
Symlink Details
.github/skills/jira/jira/jira../../../../.github/skills/jira/jira.github/skills/jira/jira/jira/jira/...∞.github/skills/gitlab/gitlab/gitlab../../../../.github/skills/gitlab/gitlab.github/skills/gitlab/gitlab/gitlab/gitlab/...∞Impact
npm run plugin:generate) miscounts skills (21 instead of 23) and may produceRemoved:warnings for these skills during hve-core-all auto-updateFolder Structure is Correct
The double-nested paths
.github/skills/jira/jira/and.github/skills/gitlab/gitlab/follow the{collection-id}/{skill-name}/convention and are not redundant. No flattening is needed. All collection YAML references are already correct.Required Fix
Delete the two recursive symlinks:
Then regenerate plugins:
Verification
After removing the symlinks,
npm run plugin:generateruns cleanly: