diff --git a/internal/commands/secrets-realtime.go b/internal/commands/secrets-realtime.go index f780acb86..d309197f5 100644 --- a/internal/commands/secrets-realtime.go +++ b/internal/commands/secrets-realtime.go @@ -30,7 +30,7 @@ func RunScanSecretsRealtimeCommand( err = printer.Print(cmd.OutOrStdout(), results, printer.FormatJSON) if err != nil { - return errorconstants.NewRealtimeEngineError("failed to return secrets").Error() + return errorconstants.NewRealtimeEngineError(err.Error()).Error() } return nil diff --git a/internal/constants/errors/errors.go b/internal/constants/errors/errors.go index 62c207a7a..e9cc42627 100644 --- a/internal/constants/errors/errors.go +++ b/internal/constants/errors/errors.go @@ -27,8 +27,8 @@ const ( NoPermissionToUpdateApplication = "you do not have permission to update the application" FailedToUpdateApplication = "failed to update application" ApplicationNotFound = "Application not found" + ErrMissingAIFeatureLicense = "User does not have the required license for AI-assisted functionality." - // asca Engine FileExtensionIsRequired = "file must have an extension" // Realtime diff --git a/internal/services/realtimeengine/common.go b/internal/services/realtimeengine/common.go index ed25aa752..2b786746a 100644 --- a/internal/services/realtimeengine/common.go +++ b/internal/services/realtimeengine/common.go @@ -37,7 +37,7 @@ func EnsureLicense(jwtWrapper wrappers.JWTWrapper) error { if aiAllowed || assistAllowed { return nil } - return errors.Wrap(err, errorconstants.NoASCALicense) + return errors.New(errorconstants.ErrMissingAIFeatureLicense) } // ValidateFilePath validates that the file path exists and is accessible. diff --git a/internal/services/realtimeengine/containersrealtime/containers-realtime.go b/internal/services/realtimeengine/containersrealtime/containers-realtime.go index 6705788aa..a035e80a1 100644 --- a/internal/services/realtimeengine/containersrealtime/containers-realtime.go +++ b/internal/services/realtimeengine/containersrealtime/containers-realtime.go @@ -81,7 +81,7 @@ func (c *ContainersRealtimeService) RunContainersRealtimeScan(filePath, ignoredF return nil, errorconstants.NewRealtimeEngineError(errorconstants.RealtimeEngineNotAvailable).Error() } if err := realtimeengine.EnsureLicense(c.JwtWrapper); err != nil { - return nil, errorconstants.NewRealtimeEngineError("failed to ensure license").Error() + return nil, errorconstants.NewRealtimeEngineError(err.Error()).Error() } if err := realtimeengine.ValidateFilePath(filePath); err != nil { return nil, errorconstants.NewRealtimeEngineError("invalid file path").Error() diff --git a/internal/services/realtimeengine/containersrealtime/containers-realtime_test.go b/internal/services/realtimeengine/containersrealtime/containers-realtime_test.go index 327153f26..de193081d 100644 --- a/internal/services/realtimeengine/containersrealtime/containers-realtime_test.go +++ b/internal/services/realtimeengine/containersrealtime/containers-realtime_test.go @@ -63,7 +63,7 @@ func TestRunContainersRealtimeScan_InvalidLicense_Fails(t *testing.T) { result, err := service.RunContainersRealtimeScan("../../../commands/data/containers/testdata/Dockerfile", "") assert.Error(t, err) assert.Nil(t, result) - assert.Contains(t, err.Error(), "realtime engine error: failed to ensure license") + assert.Contains(t, err.Error(), "JWT wrapper is not initialized, cannot ensure license") } func TestRunContainersRealtimeScan_FeatureFlagDisabled_Fails(t *testing.T) { diff --git a/internal/services/realtimeengine/ossrealtime/oss-realtime.go b/internal/services/realtimeengine/ossrealtime/oss-realtime.go index 966933590..b2c5e0cfb 100644 --- a/internal/services/realtimeengine/ossrealtime/oss-realtime.go +++ b/internal/services/realtimeengine/ossrealtime/oss-realtime.go @@ -61,7 +61,7 @@ func (o *OssRealtimeService) RunOssRealtimeScan(filePath, ignoredFilePath string } if err := realtimeengine.EnsureLicense(o.JwtWrapper); err != nil { - return nil, errorconstants.NewRealtimeEngineError("failed to ensure license").Error() + return nil, errorconstants.NewRealtimeEngineError(err.Error()).Error() } if err := realtimeengine.ValidateFilePath(filePath); err != nil { diff --git a/internal/services/realtimeengine/secretsrealtime/secrets-realtime.go b/internal/services/realtimeengine/secretsrealtime/secrets-realtime.go index 6fd2e50d9..05527804a 100644 --- a/internal/services/realtimeengine/secretsrealtime/secrets-realtime.go +++ b/internal/services/realtimeengine/secretsrealtime/secrets-realtime.go @@ -86,7 +86,7 @@ func (s *SecretsRealtimeService) RunSecretsRealtimeScan(filePath, ignoredFilePat } if err := realtimeengine.EnsureLicense(s.JwtWrapper); err != nil { - return nil, errorconstants.NewRealtimeEngineError("failed to ensure license").Error() + return nil, errorconstants.NewRealtimeEngineError(err.Error()).Error() } if err := realtimeengine.ValidateFilePath(filePath); err != nil {