Skip to content

Commit 4f9038e

Browse files
committed
Revert "Merge remote-tracking branch 'origin/main' into feature/q-lsp-chat"
This reverts commit afc5bf5, reversing changes made to 599df15.
1 parent afc5bf5 commit 4f9038e

File tree

8 files changed

+1
-247
lines changed

8 files changed

+1
-247
lines changed

plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/cwc/controller/ChatController.kt

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import com.intellij.openapi.editor.Editor
2020
import com.intellij.openapi.fileEditor.FileEditorManager
2121
import com.intellij.openapi.options.ShowSettingsUtil
2222
import kotlinx.coroutines.cancelChildren
23-
import kotlinx.coroutines.delay
2423
import kotlinx.coroutines.flow.catch
2524
import kotlinx.coroutines.flow.filter
2625
import kotlinx.coroutines.flow.first
@@ -36,7 +35,6 @@ import software.aws.toolkits.core.utils.getLogger
3635
import software.aws.toolkits.core.utils.info
3736
import software.aws.toolkits.core.utils.warn
3837
import software.aws.toolkits.jetbrains.core.coroutines.EDT
39-
import software.aws.toolkits.jetbrains.core.credentials.sono.isInternalUser
4038
import software.aws.toolkits.jetbrains.services.amazonq.apps.AmazonQAppInitContext
4139
import software.aws.toolkits.jetbrains.services.amazonq.auth.AuthController
4240
import software.aws.toolkits.jetbrains.services.amazonq.auth.AuthNeededState
@@ -47,8 +45,6 @@ import software.aws.toolkits.jetbrains.services.amazonq.onboarding.OnboardingPag
4745
import software.aws.toolkits.jetbrains.services.amazonq.project.ProjectContextController
4846
import software.aws.toolkits.jetbrains.services.amazonq.project.RelevantDocument
4947
import software.aws.toolkits.jetbrains.services.codewhisperer.settings.CodeWhispererConfigurable
50-
import software.aws.toolkits.jetbrains.services.codewhisperer.util.getDiagnosticDifferences
51-
import software.aws.toolkits.jetbrains.services.codewhisperer.util.getDocumentDiagnostics
5248
import software.aws.toolkits.jetbrains.services.cwc.InboundAppMessagesHandler
5349
import software.aws.toolkits.jetbrains.services.cwc.clients.chat.exceptions.ChatApiException
5450
import software.aws.toolkits.jetbrains.services.cwc.clients.chat.model.ChatRequestData
@@ -211,7 +207,6 @@ class ChatController private constructor(
211207
val caret: Caret = editor.caretModel.primaryCaret
212208
val offset: Int = caret.offset
213209

214-
val oldDiagnostics = getDocumentDiagnostics(editor.document, context.project)
215210
ApplicationManager.getApplication().runWriteAction {
216211
WriteCommandAction.runWriteCommandAction(context.project) {
217212
if (caret.hasSelection()) {
@@ -223,12 +218,6 @@ class ChatController private constructor(
223218
ReferenceLogController.addReferenceLog(message.code, message.codeReference, editor, context.project, null)
224219
}
225220
}
226-
if (isInternalUser(getStartUrl(context.project))) {
227-
// wait for the IDE itself to update its diagnostics for current file
228-
delay(500)
229-
val newDiagnostics = getDocumentDiagnostics(editor.document, context.project)
230-
message.diagnosticsDifferences = getDiagnosticDifferences(oldDiagnostics, newDiagnostics)
231-
}
232221
}
233222
telemetryHelper.recordInteractWithMessage(message)
234223
}

plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/cwc/controller/chat/telemetry/TelemetryHelper.kt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -270,8 +270,6 @@ class TelemetryHelper(private val project: Project, private val sessionStorage:
270270
acceptedCharacterCount(message.code.length)
271271
acceptedLineCount(message.code.lines().size)
272272
hasProjectLevelContext(getMessageHasProjectContext(message.messageId))
273-
addedIdeDiagnostics(message.diagnosticsDifferences?.added)
274-
removedIdeDiagnostics(message.diagnosticsDifferences?.removed)
275273
}.build()
276274
}
277275

plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/cwc/messages/CwcMessage.kt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ import software.aws.toolkits.jetbrains.services.amazonq.auth.AuthFollowUpType
1818
import software.aws.toolkits.jetbrains.services.amazonq.messages.AmazonQMessage
1919
import software.aws.toolkits.jetbrains.services.amazonq.onboarding.OnboardingPageInteractionType
2020
import software.aws.toolkits.jetbrains.services.amazonq.util.HighlightCommand
21-
import software.aws.toolkits.jetbrains.services.codewhisperer.util.DiagnosticDifferences
2221
import software.aws.toolkits.jetbrains.services.cwc.clients.chat.model.FollowUpType
2322
import java.time.Instant
2423

@@ -96,7 +95,6 @@ sealed interface IncomingCwcMessage : CwcMessage {
9695
val codeBlockIndex: Int?,
9796
val totalCodeBlocks: Int?,
9897
val codeBlockLanguage: String?,
99-
var diagnosticsDifferences: DiagnosticDifferences?,
10098
) : IncomingCwcMessage, TabId, MessageId
10199

102100
data class TriggerTabIdReceived(

plugins/amazonq/chat/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/amazonq/TelemetryHelperTest.kt

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@ import software.aws.toolkits.jetbrains.services.amazonq.apps.AmazonQAppInitConte
4444
import software.aws.toolkits.jetbrains.services.codewhisperer.credentials.CodeWhispererClientAdaptor
4545
import software.aws.toolkits.jetbrains.services.codewhisperer.customization.CodeWhispererCustomization
4646
import software.aws.toolkits.jetbrains.services.codewhisperer.customization.CodeWhispererModelConfigurator
47-
import software.aws.toolkits.jetbrains.services.codewhisperer.util.DiagnosticDifferences
4847
import software.aws.toolkits.jetbrains.services.cwc.clients.chat.ChatSession
4948
import software.aws.toolkits.jetbrains.services.cwc.clients.chat.model.ChatRequestData
5049
import software.aws.toolkits.jetbrains.services.cwc.clients.chat.model.CodeNamesImpl
@@ -476,7 +475,6 @@ class TelemetryHelperTest {
476475
val inserTionTargetType = "insertionTargetType"
477476
val eventId = "eventId"
478477
val code = "println()"
479-
val diagnosticDifferences = DiagnosticDifferences(emptyList(), emptyList())
480478

481479
sut.recordInteractWithMessage(
482480
IncomingCwcMessage.InsertCodeAtCursorPosition(
@@ -489,8 +487,7 @@ class TelemetryHelperTest {
489487
eventId,
490488
codeBlockIndex,
491489
totalCodeBlocks,
492-
lang,
493-
diagnosticDifferences
490+
lang
494491
)
495492
)
496493

@@ -506,8 +503,6 @@ class TelemetryHelperTest {
506503
acceptedLineCount(code.lines().size)
507504
customizationArn(customizationArn)
508505
hasProjectLevelContext(false)
509-
addedIdeDiagnostics(emptyList())
510-
removedIdeDiagnostics(emptyList())
511506
}.build()
512507
)
513508
)

plugins/amazonq/codewhisperer/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codewhisperer/service/CodeWhispererService.kt

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ import org.eclipse.lsp4j.TextDocumentIdentifier
3030
import org.eclipse.lsp4j.jsonrpc.JsonRpcException
3131
import org.eclipse.lsp4j.jsonrpc.messages.Either
3232
import software.amazon.awssdk.core.exception.SdkServiceException
33-
import software.amazon.awssdk.services.codewhispererruntime.model.IdeDiagnostic
3433
import software.amazon.awssdk.services.codewhispererruntime.model.ThrottlingException
3534
import software.aws.toolkits.core.utils.debug
3635
import software.aws.toolkits.core.utils.getLogger
@@ -72,7 +71,6 @@ import software.aws.toolkits.jetbrains.services.codewhisperer.util.CodeWhisperer
7271
import software.aws.toolkits.jetbrains.services.codewhisperer.util.CodeWhispererUtil.notifyErrorCodeWhispererUsageLimit
7372
import software.aws.toolkits.jetbrains.services.codewhisperer.util.CodeWhispererUtil.promptReAuth
7473
import software.aws.toolkits.jetbrains.services.codewhisperer.util.FileContextProvider
75-
import software.aws.toolkits.jetbrains.services.codewhisperer.util.getDocumentDiagnostics
7674
import software.aws.toolkits.jetbrains.utils.isInjectedText
7775
import software.aws.toolkits.jetbrains.utils.isQExpired
7876
import software.aws.toolkits.resources.message
@@ -471,7 +469,6 @@ class CodeWhispererService(private val cs: CoroutineScope) : Disposable {
471469
} catch (e: Exception) {
472470
LOG.warn { "Cannot get workspaceId from LSP'$e'" }
473471
}
474-
val diagnostics = getDocumentDiagnostics(editor.document, project)
475472
return RequestContext(
476473
project,
477474
editor,
@@ -482,7 +479,6 @@ class CodeWhispererService(private val cs: CoroutineScope) : Disposable {
482479
latencyContext,
483480
customizationArn,
484481
workspaceId,
485-
diagnostics
486482
)
487483
}
488484

@@ -635,7 +631,6 @@ data class RequestContext(
635631
val latencyContext: LatencyContext,
636632
val customizationArn: String?,
637633
val workspaceId: String?,
638-
val diagnostics: List<IdeDiagnostic>?,
639634
)
640635

641636
data class ResponseContext(

plugins/amazonq/codewhisperer/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codewhisperer/util/CodeWhispererUtil.kt

Lines changed: 0 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,12 @@
33

44
package software.aws.toolkits.jetbrains.services.codewhisperer.util
55

6-
import com.intellij.codeInsight.daemon.impl.HighlightInfo
76
import com.intellij.codeInsight.lookup.LookupManager
87
import com.intellij.ide.BrowserUtil
9-
import com.intellij.lang.annotation.HighlightSeverity
108
import com.intellij.notification.NotificationAction
119
import com.intellij.openapi.application.ApplicationManager
1210
import com.intellij.openapi.application.runInEdt
13-
import com.intellij.openapi.editor.Document
1411
import com.intellij.openapi.editor.Editor
15-
import com.intellij.openapi.editor.impl.DocumentMarkupModel
1612
import com.intellij.openapi.editor.impl.EditorImpl
1713
import com.intellij.openapi.project.Project
1814
import com.intellij.openapi.vfs.VfsUtil
@@ -25,10 +21,7 @@ import kotlinx.coroutines.Job
2521
import kotlinx.coroutines.delay
2622
import kotlinx.coroutines.launch
2723
import kotlinx.coroutines.yield
28-
import software.amazon.awssdk.services.codewhispererruntime.model.IdeDiagnostic
2924
import software.amazon.awssdk.services.codewhispererruntime.model.OptOutPreference
30-
import software.amazon.awssdk.services.codewhispererruntime.model.Position
31-
import software.amazon.awssdk.services.codewhispererruntime.model.Range
3225
import software.aws.toolkits.core.utils.getLogger
3326
import software.aws.toolkits.core.utils.warn
3427
import software.aws.toolkits.jetbrains.core.credentials.AwsBearerTokenConnection
@@ -354,88 +347,3 @@ object CodeWhispererUtil {
354347
enum class CaretMovement {
355348
NO_CHANGE, MOVE_FORWARD, MOVE_BACKWARD
356349
}
357-
358-
fun getDiagnosticsType(message: String): String {
359-
val lowercaseMessage = message.lowercase()
360-
361-
val diagnosticPatterns = mapOf(
362-
"TYPE_ERROR" to listOf("type", "cast"),
363-
"SYNTAX_ERROR" to listOf("expected", "indent", "syntax"),
364-
"REFERENCE_ERROR" to listOf("undefined", "not defined", "undeclared", "reference", "symbol"),
365-
"BEST_PRACTICE" to listOf("deprecated", "unused", "uninitialized", "not initialized"),
366-
"SECURITY" to listOf("security", "vulnerability")
367-
)
368-
369-
return diagnosticPatterns
370-
.entries
371-
.firstOrNull { (_, keywords) ->
372-
keywords.any { lowercaseMessage.contains(it) }
373-
}
374-
?.key ?: "OTHER"
375-
}
376-
377-
fun convertSeverity(severity: HighlightSeverity): String = when {
378-
severity == HighlightSeverity.ERROR -> "ERROR"
379-
severity == HighlightSeverity.WARNING ||
380-
severity == HighlightSeverity.WEAK_WARNING -> "WARNING"
381-
severity == HighlightSeverity.INFORMATION -> "INFORMATION"
382-
severity.toString().contains("TEXT", ignoreCase = true) -> "HINT"
383-
severity == HighlightSeverity.INFO -> "INFORMATION"
384-
// For severities that might indicate performance issues
385-
severity.toString().contains("PERFORMANCE", ignoreCase = true) -> "WARNING"
386-
// For deprecation warnings
387-
severity.toString().contains("DEPRECATED", ignoreCase = true) -> "WARNING"
388-
// Default case
389-
else -> "INFORMATION"
390-
}
391-
392-
fun getDocumentDiagnostics(document: Document, project: Project): List<IdeDiagnostic> = runCatching {
393-
DocumentMarkupModel.forDocument(document, project, true)
394-
.allHighlighters
395-
.mapNotNull { it.errorStripeTooltip as? HighlightInfo }
396-
.filter { !it.description.isNullOrEmpty() }
397-
.map { info ->
398-
val startLine = document.getLineNumber(info.startOffset)
399-
val endLine = document.getLineNumber(info.endOffset)
400-
401-
IdeDiagnostic.builder()
402-
.ideDiagnosticType(getDiagnosticsType(info.description))
403-
.severity(convertSeverity(info.severity))
404-
.source(info.inspectionToolId)
405-
.range(
406-
Range.builder()
407-
.start(
408-
Position.builder()
409-
.line(startLine)
410-
.character(document.getLineStartOffset(startLine))
411-
.build()
412-
)
413-
.end(
414-
Position.builder()
415-
.line(endLine)
416-
.character(document.getLineStartOffset(endLine))
417-
.build()
418-
)
419-
.build()
420-
)
421-
.build()
422-
}
423-
}.getOrElse { e ->
424-
getLogger<CodeWhispererUtil>().warn { "Failed to get document diagnostics ${e.message}" }
425-
emptyList()
426-
}
427-
428-
data class DiagnosticDifferences(
429-
val added: List<IdeDiagnostic>,
430-
val removed: List<IdeDiagnostic>,
431-
)
432-
433-
fun serializeDiagnostics(diagnostic: IdeDiagnostic): String = "${diagnostic.source()}-${diagnostic.severity()}-${diagnostic.ideDiagnosticType()}"
434-
435-
fun getDiagnosticDifferences(oldDiagnostic: List<IdeDiagnostic>, newDiagnostic: List<IdeDiagnostic>): DiagnosticDifferences {
436-
val oldSet = oldDiagnostic.map { i -> serializeDiagnostics(i) }.toSet()
437-
val newSet = newDiagnostic.map { i -> serializeDiagnostics(i) }.toSet()
438-
val added = newDiagnostic.filter { i -> !oldSet.contains(serializeDiagnostics(i)) }.distinctBy { serializeDiagnostics(it) }
439-
val removed = oldDiagnostic.filter { i -> !newSet.contains(serializeDiagnostics(i)) }.distinctBy { serializeDiagnostics(it) }
440-
return DiagnosticDifferences(added, removed)
441-
}

plugins/amazonq/codewhisperer/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/codewhisperer/CodeWhispererTestUtil.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,6 @@ fun aRequestContext(
163163
),
164164
customizationArn = null,
165165
workspaceId = null,
166-
diagnostics = emptyList(),
167166
)
168167
}
169168

0 commit comments

Comments
 (0)