forcedotcom / forcedotcom/code-analyzer

[BUG][code-analyzer] `sf code-analyzer run ...` causes Windows Defender to spike the CPU

Offen
#1,796 4 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
TypeScript
Sterne
240
Forks
52
Ø Merge
1 T. 23 Std.
Gemergte PRs (30 T.)
5

Beschreibung

### Have you tried to resolve this issue yourself first?

Yes

### Bug Description

Any time that I run `sf code-analyzer run ...`, I almost immediately see a CPU spike, and `MsMpEng` is right alongside the host `node` process in CPU consumption:

![Image](https://github.com/user-attachments/assets/ee30d7b6-7d7f-4ca9-93d7-5f08baa7ea53)

The directory containing Salesforce projects is already in the exclusion list, and I don't see any issues running other `sf` commands from these projects. I'm guessing that something else being executed by Code Analyzer needs to be excluded, no? Any idea what that would be? I'm not comfortable excluding `node` altogether for what I hope are obvious reasons.

### Output / Logs

I also timed command execution with and without Defender active, and the impact is pretty significant:

**Defender enabled:** 2m6.395s
**Defender disabled:** 0m49.501s

### Steps To Reproduce

Run Code Analyzer on Windows with Defender enabled.

### Expected Behavior

There's some safe way to configure Windows Defender exclusions so that Code Analyzer can run without spiking the CPU.

### Operating System

Windows 11

### Salesforce CLI Version

@salesforce/cli/2.87.7 win32-arm64 node-v22.13.0

### Code Analyzer Plugin (@salesforce/sfdx-scanner) Version

code-analyzer 5.0.0 (5.0.0)

### Additional Context (Screenshots, Files, etc)

_No response_

### Workaround

_No response_

### Urgency

Low

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, `sf code-analyzer run ...` unter Windows 11 mit aktiviertem Defender und unter Verwendung von code-analyzer 5.0.0 sowie der gemeldeten CLI-Version zu reproduzieren. Vergleiche anschließend CPU-Auslastung und Laufzeit bei deaktiviertem Defender. Untersuche, welche Code Analyzer-Prozesse oder -Verzeichnisse einen Defender-Scan auslösen. Als erledigt gilt, wenn eine sichere Ausschlusskonfiguration dokumentiert oder implementiert ist, die den Ausschlag vermeidet, ohne Node global auszuschließen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
nodejs, typescript
Bereich
devtools, operating-systems, performance
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.