mirror of
https://github.com/affaan-m/ECC.git
synced 2026-09-22 09:35:10 +02:00
The find -> sort -> read chain in both scripts used newline-delimited records (plain read -r), so a skill directory name containing a literal newline would be split across two records. Verified with a directory literally named "evil\nskill": the old reader produced a truncated "evil" fragment plus an orphan "skill/SKILL.md" fragment, inflating the skill count and throwing awk/date errors on the garbage paths. Switch to -print0 / sort -z / read -r -d '' in both scripts so a path is always read as a single record, regardless of its contents. Paths under scan are untrusted input. Addresses further CodeRabbit review feedback on PR #2640. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FhDjpSfrbPpnpqT3CZBEX1