diff --git a/.changes/next-release/bugfix-7920ece4-99d6-4828-931e-29b66994dc10.json b/.changes/next-release/bugfix-7920ece4-99d6-4828-931e-29b66994dc10.json new file mode 100644 index 00000000000..b42daecd908 --- /dev/null +++ b/.changes/next-release/bugfix-7920ece4-99d6-4828-931e-29b66994dc10.json @@ -0,0 +1,4 @@ +{ + "type" : "bugfix", + "description" : "/dev: Fix missing Amazon Q feature dev auto build setting." +} \ No newline at end of file diff --git a/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/controller/FeatureDevController.kt b/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/controller/FeatureDevController.kt index 732c4fc441c..8e1627b67d5 100644 --- a/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/controller/FeatureDevController.kt +++ b/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/controller/FeatureDevController.kt @@ -540,7 +540,8 @@ class FeatureDevController( } private suspend fun handleDevCommandUserSetting(tabId: String, value: Boolean) { - CodeWhispererSettings.getInstance().toggleAutoBuildFeature(context.project.basePath, value) + val session = getSessionInfo(tabId) + CodeWhispererSettings.getInstance().toggleAutoBuildFeature(session.context.workspaceRoot.path, value) messenger.sendAnswer( tabId = tabId, message = message("amazonqFeatureDev.chat_message.setting_updated"), diff --git a/plugins/amazonq/codewhisperer/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/codewhisperer/CodeWhispererModelConfiguratorTest.kt b/plugins/amazonq/codewhisperer/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/codewhisperer/CodeWhispererModelConfiguratorTest.kt index de3c11d6616..efcc4011625 100644 --- a/plugins/amazonq/codewhisperer/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/codewhisperer/CodeWhispererModelConfiguratorTest.kt +++ b/plugins/amazonq/codewhisperer/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/codewhisperer/CodeWhispererModelConfiguratorTest.kt @@ -617,7 +617,7 @@ class CodeWhispererModelConfiguratorTest { @Ignore @Test - fun `profile switch should keep using existing customization if new list still contains that arn`() { + fun `should switch to default customization on profile changed`() { val ssoConn = spy(LegacyManagedBearerSsoConnection(region = "us-east-1", startUrl = "url 1", scopes = Q_SCOPES)) ToolkitConnectionManager.getInstance(projectRule.project).switchConnection(ssoConn) val oldCustomization = CodeWhispererCustomization("oldArn", "oldName", "oldDescription") @@ -634,7 +634,7 @@ class CodeWhispererModelConfiguratorTest { .syncPublisher(QRegionProfileSelectedListener.TOPIC) .onProfileSelected(projectRule.project, null) - assertThat(sut.activeCustomization(projectRule.project)).isEqualTo(oldCustomization) + assertThat(sut.activeCustomization(projectRule.project)).isEqualTo(null) } @Ignore diff --git a/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codewhisperer/customization/CodeWhispererModelConfigurator.kt b/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codewhisperer/customization/CodeWhispererModelConfigurator.kt index e968aaab481..bfc6108c7aa 100644 --- a/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codewhisperer/customization/CodeWhispererModelConfigurator.kt +++ b/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codewhisperer/customization/CodeWhispererModelConfigurator.kt @@ -90,9 +90,7 @@ class DefaultCodeWhispererModelConfigurator : CodeWhispererModelConfigurator, Pe QRegionProfileSelectedListener.TOPIC, object : QRegionProfileSelectedListener { override fun onProfileSelected(project: Project, profile: QRegionProfile?) { - pluginAwareExecuteOnPooledThread { - CodeWhispererModelConfigurator.getInstance().listCustomizations(project, passive = true) - } + switchCustomization(project, null) } } )