Description
commit-echo batch uses git diff --quiet to decide whether a repo has unstaged changes. That command does not treat untracked files as a diff, so repos containing only new files are skipped as if they were clean.
Location
src/commands/batch.ts:61
src/commands/batch.ts:193
Problematic code
execSync('git diff --quiet', { cwd, stdio: 'pipe' });
if (!staged) {
if (!unstaged) {
console.log(` ${pc.yellow('↻ No changes found, skipping')}\n`);
Suggested fix
Update batch-mode change detection to account for untracked files, likely using git status --porcelain or similar logic.
Impact
Batch mode can silently skip repositories that contain real work, which makes automation less trustworthy.
Description
commit-echo batchusesgit diff --quietto decide whether a repo has unstaged changes. That command does not treat untracked files as a diff, so repos containing only new files are skipped as if they were clean.Location
src/commands/batch.ts:61src/commands/batch.ts:193Problematic code
Suggested fix
Update batch-mode change detection to account for untracked files, likely using
git status --porcelainor similar logic.Impact
Batch mode can silently skip repositories that contain real work, which makes automation less trustworthy.