GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | |||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | |||||||||||||||||
GeezerVison is showing github.com — CM-72593: Surface malicious package detections in SCA scan output by AradTraub · Pull Request #545 · cycodehq/cycode-cli Conversation
|
| File | Change |
|---|---|
consts.py |
MALICIOUS_PACKAGE_POLICY_ID |
cli_types.py |
ScaScanTypeOption.MALICIOUS_PACKAGES |
scan_command.py |
malicious-packages added to the --sca-scan default set |
scan_parameters.py |
malicious_packages wire parameter |
sca_policy_details.py |
Advisory + Remediation rows (remediation from the policy's remediation_guidelines), registered in _DETAILS_BY_POLICY |
sca_table_printer.py |
Advisory column, Malicious Packages title |
README.md |
option docs |
text_printer and rich_printer both consume _DETAILS_BY_POLICY, so they need no changes.
ScaScanDetectorBase.ShouldRunDetector runs a detector only when no [ScaScanDetector] option is mentioned, or when that detector's own option is explicitly true. The CLI always sends package_vulnerabilities / license_compliance / maintainability, so the "no opinion" path is already closed — without malicious_packages the detector never runs. The , False) default when the option is deselected is deliberate for the same reason.
The ticket asks for a "GHSA- ID (if present)". That data does not exist: threat-service's packages/batch projects only the cluster's primary id (MAL- → CVE- → GHSA-), so there is exactly one threat_id to render. A GHSA row would always be empty.
Verified end to end against a live backend — cycode scan -t sca --sca-scan malicious-packages on a fixture containing [email protected]:
Package flatmap-stream was identified as malicious. Violation 1 of 1
Severity ❗ CRITICAL
Advisory MAL-2025-20690
Remediation This package has been identified as malicious. Remove it from your dependencies.
102 unit tests pass (tests/cli/printers, tests/cli/commands/scan).
🤖 Generated with Claude Code
Sorry, something went wrong.
There was an error while loading. Please reload this page.
aede77e to
c34997c
Compare
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Reviewed for DRY / KISS / YAGNI. Scope and approach look good; comments below are about duplication and test overlap, none blocking except the remediation one, which also resolves the "Known nit" in the description.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
|
@AradTraub thanks, the follow-up commit covers the review. I resolved the threads. Can you rebase on |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
Co-Authored-By: Claude Opus 5 <[email protected]>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
…ests Co-Authored-By: Claude Opus 5.5 <[email protected]>
0c76a81 to
82f6eaa
Compare
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.