Skip to content
This repository was archived by the owner on Aug 10, 2026. It is now read-only.

fix: constrain skill links to packaged tree (#15) - #18

Merged
sleegme merged 1 commit into
devfrom
fix/issue-15-skill-link-boundary
Jul 23, 2026
Merged

fix: constrain skill links to packaged tree (#15)#18
sleegme merged 1 commit into
devfrom
fix/issue-15-skill-link-boundary

Conversation

@sleegme

@sleegme sleegme commented Jul 23, 2026

Copy link
Copy Markdown
Owner

Summary

  • resolve local Markdown links canonically
  • reject targets outside the packaged design-workflow tree
  • cover traversal, absolute paths, fragments, and valid internal links

Closes #15

validate_links() now resolves local Markdown targets canonically and
requires every resolved target to remain inside design-workflow/.  Links
that escape via .., absolute paths, symlink resolution, or equivalent
traversal are rejected before filesystem existence is checked.

External URLs, mailto links, and other non-file URI schemes continue to
be skipped.  Fragment-only links and links with fragments remain valid
when their file target is inside the skill tree.

Regression tests cover the reported escape cases, valid internal links,
and existing committed skill documents.
@sleegme
sleegme merged commit 6951d16 into dev Jul 23, 2026
8 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant