zero-check-pipeline/validate
Travis Herbranson 172f426ccd validate: fix path filter — explicit prune instead of "*/.*" trap
The `-not -path "*/.*"` filter on the `find` probes in lint.sh and sast.sh
was intended to exclude .venv / .git / __pycache__ but also excludes any
target path that lives UNDER a hidden ancestor directory.

Concrete trigger: running the gauntlet on a Claude Code worktree at
.../.claude/worktrees/<name>/. Every file in the tree matches `*/.*` via
the .claude/ component, so the probes return empty, the scripts skip
with "No Python or Go files found", and run-all.sh records the check as
passed by virtue of the 0 exit. The check never actually ran.

Switch to explicit prunes for the well-known noise dirs. As a free
bonus, replace `| head -1` with `-print -quit` so the probe also stops
being susceptible to SIGPIPE under `set -o pipefail` (relevant on dense
trees with many matches).

Verified: probe now returns first .py file in both .claude/-rooted and
normal project paths.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 07:50:32 -04:00
..
deps.sh v1 gauntlet: validation scripts with language detection and artifact generation 2026-04-18 11:30:24 -04:00
lint.sh validate: fix path filter — explicit prune instead of "*/.*" trap 2026-05-12 07:50:32 -04:00
results.json v1 gauntlet: validation scripts with language detection and artifact generation 2026-04-18 11:30:24 -04:00
run-all.sh v1 gauntlet: validation scripts with language detection and artifact generation 2026-04-18 11:30:24 -04:00
sast.sh validate: fix path filter — explicit prune instead of "*/.*" trap 2026-05-12 07:50:32 -04:00
secrets.sh v1 gauntlet: validation scripts with language detection and artifact generation 2026-04-18 11:30:24 -04:00
SUMMARY.md v1 gauntlet: validation scripts with language detection and artifact generation 2026-04-18 11:30:24 -04:00
tests.sh v1 gauntlet: validation scripts with language detection and artifact generation 2026-04-18 11:30:24 -04:00