You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(feature dev): Add setting to allow Q to run code and test commands (#5077)
Q /dev team is launching a new feature: Allow Q to execute build/test based on customer's configuration 🎉🎉
We have made a couple tweaks to incorporate the user experience
- Added a new setting to allow Q to run code and test commands per project
- Added a pre-filled prompt option for customer to generate a configuration for this feature
- Added a couple follow up buttons throughout the /dev flow and added logic around them
- Updated copies
- Updated `codefileExtensions` set
Copy file name to clipboardExpand all lines: plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/FeatureDevConstants.kt
+3Lines changed: 3 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -7,6 +7,9 @@ const val FEATURE_EVALUATION_PRODUCT_NAME = "FeatureDev"
7
7
8
8
constvalFEATURE_NAME="Amazon Q Developer Agent for software development"
9
9
10
+
@Suppress("MaxLineLength")
11
+
constvalGENERATE_DEV_FILE_PROMPT="generate a devfile in my repository. Note that you should only use devfile version 2.0.0 and the only supported command is test, so you should bundle all install, build and test commands in “test”. also you can use “public.ecr.aws/aws-mde/universal-image:latest” as universal image if you aren’t sure which image to use. here is an example for a node repository (but don't assume it's always a node project. look at the existing repository structure before generating the devfile): schemaVersion: 2.0.0 components: - name: dev container: image: public.ecr.aws/aws-mde/universal-image:latest commands: - id: test exec: component: dev commandLine: \"npm install && npm run build && npm run test\""
12
+
10
13
// Max number of times a user can attempt to retry a code generation request if it fails
Copy file name to clipboardExpand all lines: plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/controller/FeatureDevController.kt
Copy file name to clipboardExpand all lines: plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/messages/FeatureDevMessage.kt
Copy file name to clipboardExpand all lines: plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/session/PrepareCodeGenerationState.kt
Copy file name to clipboardExpand all lines: plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/session/Session.kt
+7-7Lines changed: 7 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -55,9 +55,9 @@ class Session(val tabID: String, val project: Project) {
55
55
/**
56
56
* Preload any events that have to run before a chat message can be sent
Copy file name to clipboardExpand all lines: plugins/amazonq/chat/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/FeatureDevSessionContextTest.kt
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -46,7 +46,7 @@ class FeatureDevSessionContextTest : FeatureDevTestBase() {
Copy file name to clipboardExpand all lines: plugins/amazonq/chat/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/controller/FeatureDevControllerTest.kt
+7-6Lines changed: 7 additions & 6 deletions
Original file line number
Diff line number
Diff line change
@@ -160,7 +160,7 @@ class FeatureDevControllerTest : FeatureDevTestBase() {
160
160
every { AmazonqTelemetry.endChat(amazonqConversationId = any(), amazonqEndOfTheConversationLatency = any()) } just runs
161
161
162
162
runTest {
163
-
spySession.preloader(userMessage, messenger)
163
+
spySession.preloader(messenger)
164
164
controller.processFollowupClickedMessage(message)
165
165
}
166
166
@@ -189,7 +189,7 @@ class FeatureDevControllerTest : FeatureDevTestBase() {
189
189
mockkObject(AmazonqTelemetry)
190
190
every { AmazonqTelemetry.isProvideFeedbackForCodeGen(amazonqConversationId = any(), enabled = any()) } just runs
191
191
192
-
spySession.preloader(userMessage, messenger)
192
+
spySession.preloader(messenger)
193
193
controller.processFollowupClickedMessage(message)
194
194
195
195
coVerifyOrder {
@@ -241,7 +241,7 @@ class FeatureDevControllerTest : FeatureDevTestBase() {
Copy file name to clipboardExpand all lines: plugins/amazonq/chat/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/session/PrepareCodeGenerationStateTest.kt
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -87,14 +87,14 @@ class PrepareCodeGenerationStateTest : FeatureDevTestBase() {
87
87
val repoZipResult =ZipCreationResult(mockFile, testChecksumSha, testContentLength)
88
88
val action =SessionStateAction("test-task", userMessage)
Copy file name to clipboardExpand all lines: plugins/amazonq/chat/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/session/SessionTest.kt
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -58,7 +58,7 @@ class SessionTest : FeatureDevTestBase() {
0 commit comments