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
@@ -67,9 +67,9 @@ class Session(val tabID: String, val project: Project) {
67
67
/**
68
68
* 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
@@ -161,7 +161,7 @@ class FeatureDevControllerTest : FeatureDevTestBase() {
161
161
every { AmazonqTelemetry.endChat(amazonqConversationId = any(), amazonqEndOfTheConversationLatency = any()) } just runs
162
162
163
163
runTest {
164
-
spySession.preloader(userMessage, messenger)
164
+
spySession.preloader(messenger)
165
165
controller.processFollowupClickedMessage(message)
166
166
}
167
167
@@ -190,7 +190,7 @@ class FeatureDevControllerTest : FeatureDevTestBase() {
190
190
mockkObject(AmazonqTelemetry)
191
191
every { AmazonqTelemetry.isProvideFeedbackForCodeGen(amazonqConversationId = any(), enabled = any()) } just runs
192
192
193
-
spySession.preloader(userMessage, messenger)
193
+
spySession.preloader(messenger)
194
194
controller.processFollowupClickedMessage(message)
195
195
196
196
coVerifyOrder {
@@ -243,7 +243,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
@@ -88,14 +88,14 @@ class PrepareCodeGenerationStateTest : FeatureDevTestBase() {
88
88
val repoZipResult =ZipCreationResult(mockFile, testChecksumSha, testContentLength)
89
89
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