From 97643d2a78d3d5c4ce32e7967f90d8babd802322 Mon Sep 17 00:00:00 2001 From: anjali-deore <200181980+cx-anjali-deore@users.noreply.github.com> Date: Wed, 18 Mar 2026 09:55:50 +0530 Subject: [PATCH 1/3] - Initial Scan config triggered --- internal/commands/scan.go | 24 ++++++++++++++++++++++++ internal/params/flags.go | 1 + internal/wrappers/feature-flags.go | 2 ++ internal/wrappers/jwt-helper.go | 3 ++- internal/wrappers/scans.go | 3 +++ 5 files changed, 32 insertions(+), 1 deletion(-) diff --git a/internal/commands/scan.go b/internal/commands/scan.go index 47de5b3fa..5053f8792 100644 --- a/internal/commands/scan.go +++ b/internal/commands/scan.go @@ -1031,6 +1031,11 @@ func setupScanTypeProjectAndConfig( configArr = append(configArr, SCSConfig) } + var aiscConfig = addAiscScan(featureFlagsWrapper, resubmitConfig) + if aiscConfig != nil { + configArr = append(configArr, aiscConfig) + } + info["config"] = configArr var err2 error *input, err2 = json.Marshal(info) @@ -1158,6 +1163,22 @@ func overrideSastConfigValue(sastFastScanChanged, sastIncrementalChanged, sastLi } } +func addAiscScan(featureFlagWrapper wrappers.FeatureFlagsWrapper, resubmitConfig []wrappers.Config) map[string]interface{} { + // TODO: Add the aisc resubmit config, currently no value is passed in config + aiSupplyChainEnabled, _ := wrappers.GetSpecificFeatureFlag(featureFlagWrapper, wrappers.AISupplyChainEnabled) + //aiSupplyChainGAEnabled, _ := wrappers.GetSpecificFeatureFlag(featureFlagWrapper, wrappers.AISupplyChainGAEnabled) + // TODO GA enabled to be added + if scanTypeEnabled(commonParams.AiscType) && aiSupplyChainEnabled.Status { + aiscMapConfig := make(map[string]interface{}) + aiscConfig := wrappers.AISCConfig{} + aiscMapConfig[resultsMapType] = commonParams.AiscType + aiscMapConfig[resultsMapValue] = &aiscConfig + return aiscMapConfig + } + + return nil +} + func addKicsScan(cmd *cobra.Command, resubmitConfig []wrappers.Config) map[string]interface{} { if scanTypeEnabled(commonParams.KicsType) { kicsMapConfig := make(map[string]interface{}) @@ -1498,6 +1519,7 @@ func validateScanTypes(cmd *cobra.Command, jwtWrapper wrappers.JWTWrapper, featu scsLicensingV2Flag, _ := wrappers.GetSpecificFeatureFlag(featureFlagsWrapper, wrappers.ScsLicensingV2Enabled) allowedEngines, err := jwtWrapper.GetAllowedEngines(featureFlagsWrapper) + logger.PrintIfVerbose(fmt.Sprintf("Allowed scan types: %v", allowedEngines)) isSbomScan, _ := cmd.PersistentFlags().GetBool(commonParams.SbomFlag) @@ -2441,6 +2463,7 @@ func runCreateScanCommand( featureFlagsWrapper, jwtWrapper, ) + logger.PrintIfVerbose(fmt.Sprintf("Scan model: %v", scanModel)) defer cleanUpTempZip(zipFilePath) if err != nil { return errors.Errorf("%s", err) @@ -2553,6 +2576,7 @@ func createScanModel( scanModel := wrappers.Scan{} // Try to parse to a scan model in order to manipulate the request payload err = json.Unmarshal(input, &scanModel) + if err != nil { return nil, "", errors.Wrapf(err, "%s: Input in bad format", failedCreating) } diff --git a/internal/params/flags.go b/internal/params/flags.go index 622c8a010..091f64601 100644 --- a/internal/params/flags.go +++ b/internal/params/flags.go @@ -309,6 +309,7 @@ const ( const ( SastType = "sast" KicsType = "kics" + AiscType = "aisc" APISecurityType = "api-security" AIProtectionType = "AI Protection" CheckmarxOneAssistType = "Checkmarx One Assist" diff --git a/internal/wrappers/feature-flags.go b/internal/wrappers/feature-flags.go index 8b2579b27..0985c15a4 100644 --- a/internal/wrappers/feature-flags.go +++ b/internal/wrappers/feature-flags.go @@ -20,6 +20,8 @@ const DirectAssociationEnabled = "DIRECT_APP_ASSOCIATION_ENABLED" const maxRetries = 3 const IncreaseFileUploadLimit = "INCREASE_FILE_UPLOAD_LIMIT" const ScaDeltaScanEnabled = "SCA_DELTASCAN_ENABLED" +const AISupplyChainEnabled = "AI_SUPPLY_CHAIN_ENGINE_ENABLED" +const AISupplyChainGAEnabled = "AI_SUPPLY_CHAIN_ENGINE_GA_ENABLED" var DefaultFFLoad bool = false diff --git a/internal/wrappers/jwt-helper.go b/internal/wrappers/jwt-helper.go index 63b1defb5..e684c6891 100644 --- a/internal/wrappers/jwt-helper.go +++ b/internal/wrappers/jwt-helper.go @@ -41,7 +41,7 @@ func NewJwtWrapper() JWTWrapper { } func getEnabledEngines(scsLicensingV2 bool) (enabledEngines []string) { - enabledEngines = []string{"sast", "sca", "api-security", "iac-security", "containers"} + enabledEngines = []string{"sast", "sca", "api-security", "iac-security", "containers", "aisc"} if scsLicensingV2 { enabledEngines = append(enabledEngines, commonParams.RepositoryHealthType, commonParams.SecretDetectionType) } else { @@ -57,6 +57,7 @@ func getDefaultEngines(scsLicensingV2 bool) (defaultEngines map[string]bool) { "api-security": true, "iac-security": true, "containers": true, + "aisc": true, } if scsLicensingV2 { defaultEngines[commonParams.RepositoryHealthType] = true diff --git a/internal/wrappers/scans.go b/internal/wrappers/scans.go index 71c878a0b..07f8bf0a9 100644 --- a/internal/wrappers/scans.go +++ b/internal/wrappers/scans.go @@ -163,3 +163,6 @@ type SCSConfig struct { RepoToken string `json:"repoToken,omitempty"` GitCommitHistory string `json:"gitCommitHistory,omitempty"` } + +type AISCConfig struct { +} From af074f68c7034eb9ea833dfa2649c445e4bab25b Mon Sep 17 00:00:00 2001 From: anjali-deore <200181980+cx-anjali-deore@users.noreply.github.com> Date: Wed, 18 Mar 2026 10:54:32 +0530 Subject: [PATCH 2/3] - Added resubmit config --- internal/commands/scan.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/internal/commands/scan.go b/internal/commands/scan.go index 5053f8792..fd7ec37bb 100644 --- a/internal/commands/scan.go +++ b/internal/commands/scan.go @@ -1173,7 +1173,16 @@ func addAiscScan(featureFlagWrapper wrappers.FeatureFlagsWrapper, resubmitConfig aiscConfig := wrappers.AISCConfig{} aiscMapConfig[resultsMapType] = commonParams.AiscType aiscMapConfig[resultsMapValue] = &aiscConfig + + for _, config := range resubmitConfig { + // TODO : to do this in future when config value comes + if config.Type == commonParams.AiscType && config.Value == nil { + continue + } + } + return aiscMapConfig + } return nil From c2a86196046305311d87fdf9f286ab097a653ecf Mon Sep 17 00:00:00 2001 From: anjali-deore <200181980+cx-anjali-deore@users.noreply.github.com> Date: Wed, 18 Mar 2026 11:22:18 +0530 Subject: [PATCH 3/3] - Removed logger --- internal/commands/scan.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/commands/scan.go b/internal/commands/scan.go index d7182b032..0c7271b48 100644 --- a/internal/commands/scan.go +++ b/internal/commands/scan.go @@ -2480,7 +2480,7 @@ func runCreateScanCommand( jwtWrapper, tenantWrapper, ) - logger.PrintIfVerbose(fmt.Sprintf("Scan model: %v", scanModel)) + defer cleanUpTempZip(zipFilePath) if err != nil { return errors.Errorf("%s", err)