Skip to content

fix(work): collect a passing change when .gitignore ignores the linked node_modules - #581

Merged
ralyodio merged 1 commit into
mainfrom
fix/work-collect-ignored-links
Oct 17, 2026
Merged

ralyodio merged 1 commit into
mainfrom
fix/work-collect-ignored-links

Conversation

@ralyodio

Copy link
Copy Markdown
Contributor

Seen on the fleet sweep (fleet-real, 9 tasks): two tasks whose verify passed went to the inbox as git add failed: The following paths are ignored by one of your .gitignore files: node_modules, after being retried twice as "failed verify (exit 0)".

In a repo whose .gitignore says node_modules without a trailing slash, the linked node_modules symlink is ignored, and naming an ignored path in git add (the :(exclude) pathspec) makes git refuse the whole add.

  • Collect with a plain git add -A, then git rm -r --cached --ignore-unmatch the linked paths.
  • A pass whose change cannot be collected goes to the inbox at once, with the real reason and its tree kept. It is not retried: another attempt would pass and fail the same way.

Tests: two regressions in test/work.test.mjs (ignored-link repo collects in one attempt; a collect failure goes straight to the inbox); work 19/19.

🤖 Generated with Claude Code

…d node_modules

Seen on the fleet sweep: in repos whose .gitignore says node_modules (no
trailing slash) the symlink is ignored, and naming it in an exclude
pathspec made git refuse the whole add. The verify had passed, the run
called it a failed verify and retried twice, then filed it in the inbox.

Collect with a plain git add -A, then git rm --cached the links. And a
pass whose change cannot be collected goes to the inbox at once with the
real reason and its tree kept, instead of being retried.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

ThreatCrush Security Scan

0 finding(s) in the 2 file(s) this pull request changes.

Nothing in the files this pull request changes.

106 pre-existing finding(s) elsewhere in the repository — **HIGH/CRITICAL**: 8 | **MEDIUM**: 87 | **LOW**: 11

Not introduced by this pull request. The full set is in the Security tab.

Severity Rule Location
HIGH js-ssrf-outbound-request apps/pwa/public/sw.js:76
HIGH tls-verification-disabled apps/pwa/src/lib/moshpit-gateway.mjs:299
HIGH sh-remote-script-execution install.sh:86
HIGH sh-remote-script-execution install.sh:90
HIGH sh-remote-script-execution install.sh:258
HIGH sh-remote-script-execution install.sh:269
HIGH sh-remote-script-execution install.sh:275
HIGH tls-verification-disabled src/dns.mjs:766
MEDIUM js-unescaped-html-sink apps/pwa/public/herd/herd.js:117
MEDIUM sql-template-interpolation apps/pwa/src/lib/moshpit-certs.mjs:44
MEDIUM sql-template-interpolation apps/pwa/src/lib/moshpit-certs.mjs:82
MEDIUM sql-template-interpolation apps/pwa/src/moshpit.mjs:139
MEDIUM sql-template-interpolation apps/pwa/src/moshpit.mjs:153
MEDIUM sql-template-interpolation apps/pwa/src/moshpit.mjs:179
MEDIUM sql-template-interpolation apps/pwa/src/moshpit.mjs:373
MEDIUM sql-template-interpolation apps/pwa/src/moshpit.mjs:377
MEDIUM sql-template-interpolation apps/pwa/src/moshpit.mjs:422
MEDIUM sql-template-interpolation apps/pwa/src/moshpit.mjs:674
MEDIUM sql-template-interpolation apps/pwa/src/moshpit.mjs:870
MEDIUM sql-template-interpolation apps/pwa/src/moshpit.mjs:872

…and 86 more. Full results in the Security tab.

Snippets are redacted; ThreatCrush never prints matched credential material.

@ralyodio
ralyodio merged commit 3727181 into main Oct 17, 2026
6 checks passed
@ralyodio
ralyodio deleted the fix/work-collect-ignored-links branch October 17, 2026 11:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant