Skip to content

Commit f19f44a

Browse files
authored
Merge branch 'main' into workspace-test
2 parents e7544f0 + 809538a commit f19f44a

File tree

3 files changed

+47
-0
lines changed

3 files changed

+47
-0
lines changed

plugins/amazonq/codewhisperer/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codewhisperer/codescan/sessionconfig/CodeScanSessionConfig.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import software.aws.toolkits.jetbrains.services.codewhisperer.codescan.utils.Ama
3131
import software.aws.toolkits.jetbrains.services.codewhisperer.language.CodeWhispererProgrammingLanguage
3232
import software.aws.toolkits.jetbrains.services.codewhisperer.language.languages.CodeWhispererUnknownLanguage
3333
import software.aws.toolkits.jetbrains.services.codewhisperer.language.programmingLanguage
34+
import software.aws.toolkits.jetbrains.services.codewhisperer.telemetry.CodeWhispererTelemetryService
3435
import software.aws.toolkits.jetbrains.services.codewhisperer.util.CodeWhispererConstants.CODE_SCAN_CREATE_PAYLOAD_TIMEOUT_IN_SECONDS
3536
import software.aws.toolkits.jetbrains.services.codewhisperer.util.CodeWhispererConstants.CodeAnalysisScope
3637
import software.aws.toolkits.jetbrains.services.codewhisperer.util.CodeWhispererConstants.DEFAULT_CODE_SCAN_TIMEOUT_IN_SECONDS
@@ -195,6 +196,9 @@ class CodeScanSessionConfig(
195196
files.forEach { file ->
196197
try {
197198
val relativePath = "${project.name}/${file.relativeTo(projectRoot.toNioPath())}"
199+
if (relativePath.contains("../") || relativePath.contains("..\\")) {
200+
CodeWhispererTelemetryService.getInstance().sendInvalidZipEvent(file, projectRoot.toNioPath(), relativePath)
201+
}
198202
LOG.debug { "Selected file for truncation: $file" }
199203
it.putNextEntry(relativePath.toString(), file)
200204
} catch (e: Exception) {

plugins/amazonq/codewhisperer/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codewhisperer/telemetry/CodeWhispererTelemetryService.kt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,11 @@ import software.aws.toolkits.telemetry.Component
5151
import software.aws.toolkits.telemetry.CredentialSourceId
5252
import software.aws.toolkits.telemetry.MetricResult
5353
import software.aws.toolkits.telemetry.Result
54+
import java.nio.file.Path
5455
import java.time.Duration
5556
import java.time.Instant
5657
import java.util.Queue
58+
import kotlin.io.path.pathString
5759

5860
@Service
5961
class CodeWhispererTelemetryService {
@@ -609,6 +611,14 @@ class CodeWhispererTelemetryService {
609611
assert(ApplicationManager.getApplication().isUnitTestMode)
610612
return this.previousUserTriggerDecisions
611613
}
614+
615+
fun sendInvalidZipEvent(filePath: Path, projectRoot: Path, relativePath: String) {
616+
CodewhispererTelemetry.invalidZip(
617+
filePath = filePath.pathString,
618+
workspaceRoot = projectRoot.pathString,
619+
relativePath = relativePath
620+
)
621+
}
612622
}
613623

614624
fun isTelemetryEnabled(): Boolean = AwsSettings.getInstance().isTelemetryEnabled

plugins/core/jetbrains-community/resources/telemetryOverride.json

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,21 @@
177177
"reloaded"
178178
],
179179
"description": "Toolkit run state."
180+
},
181+
{
182+
"name": "filePath",
183+
"type": "string",
184+
"description": "The path of the file"
185+
},
186+
{
187+
"name": "workspaceRoot",
188+
"type": "string",
189+
"description": "The path of the project root"
190+
},
191+
{
192+
"name": "relativePath",
193+
"type": "string",
194+
"description": "The relative path of the file"
180195
}
181196
],
182197
"metrics": [
@@ -530,6 +545,24 @@
530545
}
531546
],
532547
"passive": true
548+
},
549+
{
550+
"name": "codewhisperer_invalidZip",
551+
"description": "Invalid zip file",
552+
"metadata": [
553+
{
554+
"type": "filePath",
555+
"required": true
556+
},
557+
{
558+
"type": "workspaceRoot",
559+
"required": true
560+
},
561+
{
562+
"type": "relativePath",
563+
"required": true
564+
}
565+
]
533566
}
534567
]
535568
}

0 commit comments

Comments
 (0)