Skip to content

hash: resolve a symlinked root before walking - #23

Merged
alexverify merged 2 commits into
mainfrom
hash/follow-symlinked-root
Sep 6, 2026
Merged

alexverify merged 2 commits into
mainfrom
hash/follow-symlinked-root

Conversation

@alexverify

Copy link
Copy Markdown
Owner

A skill directory that is itself a symlink (OpenClaude follows them when loading skills) was discovered and listed, but filepath.WalkDir does not follow a symlinked root: it reports the link as a non-regular entry and yields no files. The artifact landed in the lockfile with the empty digest and no file list, and an edit behind the link passed verify. The hasher now resolves the root with EvalSymlinks once before walking; symlinks inside the tree stay skipped as before. Reproduced with 0.4.5 on a project skill symlink (empty digest, verify exit 0 after an edit); with this change the file list is populated and the edit exits 1. Found by a reviewer on the OpenClaude docs PR.

@alexverify
alexverify merged commit 6500cf7 into main Sep 6, 2026
4 checks passed
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