ddcdf93a6b
GIT_TRACE, GIT_TRACE2_EVENT and GIT_TRACE_PERFORMANCE are process-wide, so --local-env-vars lists none of them. Pointed at /dev/stdout, git wrote trace lines into the ls-files -z output, and the walk read them as paths. git() now builds on untraced_git(), which removes every variable starting with GIT_TRACE: a prefix, because the family is open-ended. The rev-parse --local-env-vars call goes through it too, since its stdout is parsed as well. the_walk_ignores_a_git_trace_sent_to_stdout reruns the gzip shape test and every_shipped_document_loads in children with all three set to /dev/stdout. It failed at #269's head. Rivals, each of which fails it: - no strip; - the exact name only; - keep GIT_TRACE_PERFORMANCE; - keep GIT_TRACE2_EVENT. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze