Repository navigation
feat(scan): add --dynamic-sbom-inference-ecosystems to choose which ecosystems use Socket facts - #1697
Open
Jeppe Fredsgaard Blaabjerg (jfblaa) wants to merge 1 commit into
Conversation
…cosystems use Socket facts scan create, scan reach and fix take purl types (maven covers Gradle, sbt and Maven; nuget covers .NET). Build tools of unselected types are not discovered, so their manifest files are used as they are and Coana does not treat them as facts-only; with --auto-manifest, auto-generation still runs for them at cwd. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
LLM Description written by Claude Code:claude-opus-5-5
Adds
--dynamic-sbom-inference-ecosystemstosocket scan create,socket scan reachandsocket fix, so a repo can use Socket facts for some ecosystems and keep the manifest files of others as they are.maven(Gradle, sbt and Maven) andnuget(.NET). Without the flag, both are used, as before.--auto-manifest, auto-generation still runs for them at the scan root.--dynamic-sbom-inference, accepts any case, and rejects other ecosystems. Errors for "no build root found" and "no facts produced" suggest choosing other ecosystems when the selection was narrowed.Stacked on #1696.
Tested: unit tests for discovery filtering, the selection passed through scan create, scan reach and fix, the auto-manifest interplay, and flag validation; manual runs of the built CLI on a Maven + .NET directory (
mavenselected generates Maven facts and leaves .NET alone;nugetselected on a Maven-only dir fails with the narrowed message).🤖 Generated with Claude Code
Note
Low Risk
New opt-in CLI flag with backward-compatible defaults; changes scan/fix/reach manifest discovery behavior only when users narrow ecosystems alongside --dynamic-sbom-inference.
Overview
Adds
--dynamic-sbom-inference-ecosystemstosocket scan create,socket scan reach, andsocket fixso--dynamic-sbom-inferencecan generate Socket facts for onlymaven(Gradle, sbt, Maven) and/ornuget(.NET). Unselected ecosystems are not treated as facts-only and keep their existing manifest files; with--auto-manifest, auto-generation still runs for those build tools at the scan root.The selection is parsed and validated (requires
--dynamic-sbom-inference, case-insensitivemaven/nuget, rejects other ecosystems), defaults to both when omitted, and flows through build-root discovery, recursive manifest generation, fix-time facts generation, and Coana “facts-only” flags. Error text when no matching build roots or no facts are produced now mentions trying other ecosystems when the list was narrowed.Reviewed by Cursor Bugbot for commit 767c973. Configure here.