Problem
skills/web-artifacts-builder/scripts/shadcn-components.tar.gz was committed as a raw binary blob, but .gitattributes tracks *.tar.gz with the LFS filter. This causes a persistent dirty working tree — every checkout produces a file that doesn't match the index.
$ git reset --hard HEAD
Encountered 1 file that should have been a pointer, but wasn't:
skills/web-artifacts-builder/scripts/shadcn-components.tar.gz
$ git diff --stat
.../scripts/shadcn-components.tar.gz | Bin 19967 -> 130 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
Impact
When this repo is used as a git submodule, git pull --rebase in the parent repo fails:
fatal: cannot rebase with locally recorded submodule modifications
There is no way to make the submodule clean without working around the LFS configuration.
Workaround
Override .gitattributes locally inside the submodule:
echo '*.tar.gz filter= diff= merge=' > .git/info/attributes
git reset --hard HEAD
Suggested fix
Either:
- Re-commit the file through the LFS filter so the blob is a proper LFS pointer, or
- Remove
*.tar.gz from the LFS tracking in .gitattributes if LFS isn't intended for this file
The file was introduced in b0cbd3d (2026-03-06).
Problem
skills/web-artifacts-builder/scripts/shadcn-components.tar.gzwas committed as a raw binary blob, but.gitattributestracks*.tar.gzwith the LFS filter. This causes a persistent dirty working tree — every checkout produces a file that doesn't match the index.Impact
When this repo is used as a git submodule,
git pull --rebasein the parent repo fails:There is no way to make the submodule clean without working around the LFS configuration.
Workaround
Override
.gitattributeslocally inside the submodule:Suggested fix
Either:
*.tar.gzfrom the LFS tracking in.gitattributesif LFS isn't intended for this fileThe file was introduced in b0cbd3d (2026-03-06).