Skip to content

Commit 6c9a8af

Browse files
authored
fix(amazonq): allow subsequent reviews in review tab aws#6699
## Problem Subsequent reviews (`/review`) were not possible after running a review. ## Solution - subsequent reviews are now allowed - Fix were made to not impact the previous bug fix where review causes two "run code review" chat messages - Fix were made not to impact previous bug fix to auto-trigger `/review` from Quick Actions Menu - Reverts aws#6550
1 parent 8680e75 commit 6c9a8af

File tree

6 files changed

+22
-2
lines changed

6 files changed

+22
-2
lines changed
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"type": "Bug Fix",
3+
"description": "/review: subsequent reviews weren't possible"
4+
}

packages/amazonq/src/app/amazonqScan/app.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ export function init(appContext: AmazonQAppInitContext) {
2525
authClicked: new vscode.EventEmitter<any>(),
2626
tabOpened: new vscode.EventEmitter<any>(),
2727
tabClosed: new vscode.EventEmitter<any>(),
28+
runScan: new vscode.EventEmitter<any>(),
2829
formActionClicked: new vscode.EventEmitter<any>(),
2930
errorThrown: new vscode.EventEmitter<any>(),
3031
showSecurityScan: new vscode.EventEmitter<any>(),

packages/amazonq/src/app/amazonqScan/chat/controller/controller.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ export class ScanController {
4949
this.authController = new AuthController()
5050

5151
this.chatControllerMessageListeners.tabOpened.event((data) => {
52-
return this.tabOpened(data).then(() => this.scanInitiated(data))
52+
return this.tabOpened(data)
5353
})
5454

5555
this.chatControllerMessageListeners.tabClosed.event((data) => {
@@ -60,6 +60,10 @@ export class ScanController {
6060
this.authClicked(data)
6161
})
6262

63+
this.chatControllerMessageListeners.runScan.event((data) => {
64+
return this.scanInitiated(data)
65+
})
66+
6367
this.chatControllerMessageListeners.formActionClicked.event((data) => {
6468
return this.formActionClicked(data)
6569
})

packages/amazonq/src/app/amazonqScan/chat/views/actions/uiMessageListener.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,9 @@ export class UIMessageListener {
4040
case 'auth-follow-up-was-clicked':
4141
this.authClicked(msg)
4242
break
43+
case 'review':
44+
this.scan(msg)
45+
break
4346
case 'form-action-click':
4447
this.formActionClicked(msg)
4548
break
@@ -58,6 +61,12 @@ export class UIMessageListener {
5861
}
5962
}
6063

64+
private scan(msg: UIMessage) {
65+
this.scanControllerEventsEmitters?.runScan.fire({
66+
tabID: msg.tabID,
67+
})
68+
}
69+
6170
private formActionClicked(msg: UIMessage) {
6271
this.scanControllerEventsEmitters?.formActionClicked.fire({
6372
...msg,

packages/core/src/amazonq/webview/ui/apps/amazonqCommonsConnector.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,8 @@ export class Connector {
7171
this.onNewTab('agentWalkthrough')
7272
return
7373
} else if (messageData.command === 'review') {
74-
this.onNewTab('review')
74+
// tabID does not exist when calling from QuickAction Menu bar
75+
this.handleCommand({ command: '/review' }, '')
7576
return
7677
}
7778
}

packages/core/src/amazonqScan/controller.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ export interface ScanChatControllerEventEmitters {
2020
readonly tabOpened: vscode.EventEmitter<any>
2121
readonly tabClosed: vscode.EventEmitter<any>
2222
readonly authClicked: vscode.EventEmitter<any>
23+
readonly runScan: vscode.EventEmitter<any>
2324
readonly formActionClicked: vscode.EventEmitter<any>
2425
readonly errorThrown: vscode.EventEmitter<any>
2526
readonly showSecurityScan: vscode.EventEmitter<any>

0 commit comments

Comments
 (0)