Skip to content

Commit b2d2a2c

Browse files
cteroomote
andauthored
Task and TaskProvider event emitter cleanup + a few new events (#6606)
Co-authored-by: Roo Code <[email protected]>
1 parent 8513263 commit b2d2a2c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+1114
-679
lines changed

apps/vscode-e2e/src/suite/markdown-lists.test.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import * as assert from "assert"
22

3-
import type { ClineMessage } from "@roo-code/types"
3+
import { RooCodeEventName, type ClineMessage } from "@roo-code/types"
44

55
import { waitUntilCompleted } from "./utils"
66
import { setDefaultSuiteTimeout } from "./test-utils"
@@ -13,7 +13,7 @@ suite("Markdown List Rendering", function () {
1313

1414
const messages: ClineMessage[] = []
1515

16-
api.on("message", ({ message }: { message: ClineMessage }) => {
16+
api.on(RooCodeEventName.Message, ({ message }: { message: ClineMessage }) => {
1717
if (message.type === "say" && message.partial === false) {
1818
messages.push(message)
1919
}
@@ -50,7 +50,7 @@ suite("Markdown List Rendering", function () {
5050

5151
const messages: ClineMessage[] = []
5252

53-
api.on("message", ({ message }: { message: ClineMessage }) => {
53+
api.on(RooCodeEventName.Message, ({ message }: { message: ClineMessage }) => {
5454
if (message.type === "say" && message.partial === false) {
5555
messages.push(message)
5656
}
@@ -87,7 +87,7 @@ suite("Markdown List Rendering", function () {
8787

8888
const messages: ClineMessage[] = []
8989

90-
api.on("message", ({ message }: { message: ClineMessage }) => {
90+
api.on(RooCodeEventName.Message, ({ message }: { message: ClineMessage }) => {
9191
if (message.type === "say" && message.partial === false) {
9292
messages.push(message)
9393
}
@@ -139,7 +139,7 @@ suite("Markdown List Rendering", function () {
139139

140140
const messages: ClineMessage[] = []
141141

142-
api.on("message", ({ message }: { message: ClineMessage }) => {
142+
api.on(RooCodeEventName.Message, ({ message }: { message: ClineMessage }) => {
143143
if (message.type === "say" && message.partial === false) {
144144
messages.push(message)
145145
}

apps/vscode-e2e/src/suite/modes.test.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
import * as assert from "assert"
22

3+
import { RooCodeEventName } from "@roo-code/types"
4+
35
import { waitUntilCompleted } from "./utils"
46
import { setDefaultSuiteTimeout } from "./test-utils"
57

@@ -9,7 +11,7 @@ suite("Roo Code Modes", function () {
911
test("Should handle switching modes correctly", async () => {
1012
const modes: string[] = []
1113

12-
globalThis.api.on("taskModeSwitched", (_taskId, mode) => modes.push(mode))
14+
globalThis.api.on(RooCodeEventName.TaskModeSwitched, (_taskId, mode) => modes.push(mode))
1315

1416
const switchModesTaskId = await globalThis.api.startNewTask({
1517
configuration: { mode: "code", alwaysAllowModeSwitch: true, autoApprovalEnabled: true },

apps/vscode-e2e/src/suite/subtasks.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import * as assert from "assert"
22

3-
import type { ClineMessage } from "@roo-code/types"
3+
import { RooCodeEventName, type ClineMessage } from "@roo-code/types"
44

55
import { sleep, waitFor, waitUntilCompleted } from "./utils"
66

@@ -10,7 +10,7 @@ suite.skip("Roo Code Subtasks", () => {
1010

1111
const messages: Record<string, ClineMessage[]> = {}
1212

13-
api.on("message", ({ taskId, message }) => {
13+
api.on(RooCodeEventName.Message, ({ taskId, message }) => {
1414
if (message.type === "say" && message.partial === false) {
1515
messages[taskId] = messages[taskId] || []
1616
messages[taskId].push(message)
@@ -37,7 +37,7 @@ suite.skip("Roo Code Subtasks", () => {
3737
let spawnedTaskId: string | undefined = undefined
3838

3939
// Wait for the subtask to be spawned and then cancel it.
40-
api.on("taskSpawned", (_, childTaskId) => (spawnedTaskId = childTaskId))
40+
api.on(RooCodeEventName.TaskSpawned, (_, childTaskId) => (spawnedTaskId = childTaskId))
4141
await waitFor(() => !!spawnedTaskId)
4242
await sleep(1_000) // Give the task a chance to start and populate the history.
4343
await api.cancelCurrentTask()

apps/vscode-e2e/src/suite/task.test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import * as assert from "assert"
22

3-
import type { ClineMessage } from "@roo-code/types"
3+
import { RooCodeEventName, type ClineMessage } from "@roo-code/types"
44

55
import { waitUntilCompleted } from "./utils"
66
import { setDefaultSuiteTimeout } from "./test-utils"
@@ -13,7 +13,7 @@ suite("Roo Code Task", function () {
1313

1414
const messages: ClineMessage[] = []
1515

16-
api.on("message", ({ message }) => {
16+
api.on(RooCodeEventName.Message, ({ message }) => {
1717
if (message.type === "say" && message.partial === false) {
1818
messages.push(message)
1919
}

apps/vscode-e2e/src/suite/tools/apply-diff.test.ts

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import * as fs from "fs/promises"
33
import * as path from "path"
44
import * as vscode from "vscode"
55

6-
import type { ClineMessage } from "@roo-code/types"
6+
import { RooCodeEventName, type ClineMessage } from "@roo-code/types"
77

88
import { waitFor, sleep } from "../utils"
99
import { setDefaultSuiteTimeout } from "../test-utils"
@@ -192,7 +192,7 @@ function validateInput(input) {
192192
}
193193
}
194194
}
195-
api.on("message", messageHandler)
195+
api.on(RooCodeEventName.Message, messageHandler)
196196

197197
// Listen for task events
198198
const taskStartedHandler = (id: string) => {
@@ -201,15 +201,15 @@ function validateInput(input) {
201201
console.log("Task started:", id)
202202
}
203203
}
204-
api.on("taskStarted", taskStartedHandler)
204+
api.on(RooCodeEventName.TaskStarted, taskStartedHandler)
205205

206206
const taskCompletedHandler = (id: string) => {
207207
if (id === taskId) {
208208
taskCompleted = true
209209
console.log("Task completed:", id)
210210
}
211211
}
212-
api.on("taskCompleted", taskCompletedHandler)
212+
api.on(RooCodeEventName.TaskCompleted, taskCompletedHandler)
213213

214214
let taskId: string
215215
try {
@@ -260,9 +260,9 @@ ${testFile.content}\nAssume the file exists and you can modify it directly.`,
260260
console.log("Test passed! apply_diff tool executed and file modified successfully")
261261
} finally {
262262
// Clean up
263-
api.off("message", messageHandler)
264-
api.off("taskStarted", taskStartedHandler)
265-
api.off("taskCompleted", taskCompletedHandler)
263+
api.off(RooCodeEventName.Message, messageHandler)
264+
api.off(RooCodeEventName.TaskStarted, taskStartedHandler)
265+
api.off(RooCodeEventName.TaskCompleted, taskCompletedHandler)
266266
}
267267
})
268268

@@ -305,7 +305,7 @@ ${testFile.content}\nAssume the file exists and you can modify it directly.`,
305305
}
306306
}
307307
}
308-
api.on("message", messageHandler)
308+
api.on(RooCodeEventName.Message, messageHandler)
309309

310310
// Listen for task events
311311
const taskStartedHandler = (id: string) => {
@@ -314,15 +314,15 @@ ${testFile.content}\nAssume the file exists and you can modify it directly.`,
314314
console.log("Task started:", id)
315315
}
316316
}
317-
api.on("taskStarted", taskStartedHandler)
317+
api.on(RooCodeEventName.TaskStarted, taskStartedHandler)
318318

319319
const taskCompletedHandler = (id: string) => {
320320
if (id === taskId) {
321321
taskCompleted = true
322322
console.log("Task completed:", id)
323323
}
324324
}
325-
api.on("taskCompleted", taskCompletedHandler)
325+
api.on(RooCodeEventName.TaskCompleted, taskCompletedHandler)
326326

327327
let taskId: string
328328
try {
@@ -375,9 +375,9 @@ ${testFile.content}\nAssume the file exists and you can modify it directly.`,
375375
console.log("Test passed! apply_diff tool executed and multiple replacements applied successfully")
376376
} finally {
377377
// Clean up
378-
api.off("message", messageHandler)
379-
api.off("taskStarted", taskStartedHandler)
380-
api.off("taskCompleted", taskCompletedHandler)
378+
api.off(RooCodeEventName.Message, messageHandler)
379+
api.off(RooCodeEventName.TaskStarted, taskStartedHandler)
380+
api.off(RooCodeEventName.TaskCompleted, taskCompletedHandler)
381381
}
382382
})
383383

@@ -424,22 +424,22 @@ function keepThis() {
424424
}
425425
}
426426
}
427-
api.on("message", messageHandler)
427+
api.on(RooCodeEventName.Message, messageHandler)
428428

429429
// Listen for task events
430430
const taskStartedHandler = (id: string) => {
431431
if (id === taskId) {
432432
taskStarted = true
433433
}
434434
}
435-
api.on("taskStarted", taskStartedHandler)
435+
api.on(RooCodeEventName.TaskStarted, taskStartedHandler)
436436

437437
const taskCompletedHandler = (id: string) => {
438438
if (id === taskId) {
439439
taskCompleted = true
440440
}
441441
}
442-
api.on("taskCompleted", taskCompletedHandler)
442+
api.on(RooCodeEventName.TaskCompleted, taskCompletedHandler)
443443

444444
let taskId: string
445445
try {
@@ -487,9 +487,9 @@ ${testFile.content}\nAssume the file exists and you can modify it directly.`,
487487
console.log("Test passed! apply_diff tool executed and targeted modification successful")
488488
} finally {
489489
// Clean up
490-
api.off("message", messageHandler)
491-
api.off("taskStarted", taskStartedHandler)
492-
api.off("taskCompleted", taskCompletedHandler)
490+
api.off(RooCodeEventName.Message, messageHandler)
491+
api.off(RooCodeEventName.TaskStarted, taskStartedHandler)
492+
api.off(RooCodeEventName.TaskCompleted, taskCompletedHandler)
493493
}
494494
})
495495

@@ -532,22 +532,22 @@ ${testFile.content}\nAssume the file exists and you can modify it directly.`,
532532
}
533533
}
534534
}
535-
api.on("message", messageHandler)
535+
api.on(RooCodeEventName.Message, messageHandler)
536536

537537
// Listen for task events
538538
const taskStartedHandler = (id: string) => {
539539
if (id === taskId) {
540540
taskStarted = true
541541
}
542542
}
543-
api.on("taskStarted", taskStartedHandler)
543+
api.on(RooCodeEventName.TaskStarted, taskStartedHandler)
544544

545545
const taskCompletedHandler = (id: string) => {
546546
if (id === taskId) {
547547
taskCompleted = true
548548
}
549549
}
550-
api.on("taskCompleted", taskCompletedHandler)
550+
api.on(RooCodeEventName.TaskCompleted, taskCompletedHandler)
551551

552552
let taskId: string
553553
try {
@@ -598,9 +598,9 @@ Assume the file exists and you can modify it directly.`,
598598
console.log("Test passed! apply_diff attempted and error handled gracefully")
599599
} finally {
600600
// Clean up
601-
api.off("message", messageHandler)
602-
api.off("taskStarted", taskStartedHandler)
603-
api.off("taskCompleted", taskCompletedHandler)
601+
api.off(RooCodeEventName.Message, messageHandler)
602+
api.off(RooCodeEventName.TaskStarted, taskStartedHandler)
603+
api.off(RooCodeEventName.TaskCompleted, taskCompletedHandler)
604604
}
605605
})
606606

@@ -663,7 +663,7 @@ function checkInput(input) {
663663
}
664664
}
665665
}
666-
api.on("message", messageHandler)
666+
api.on(RooCodeEventName.Message, messageHandler)
667667

668668
// Listen for task events
669669
const taskStartedHandler = (id: string) => {
@@ -672,15 +672,15 @@ function checkInput(input) {
672672
console.log("Task started:", id)
673673
}
674674
}
675-
api.on("taskStarted", taskStartedHandler)
675+
api.on(RooCodeEventName.TaskStarted, taskStartedHandler)
676676

677677
const taskCompletedHandler = (id: string) => {
678678
if (id === taskId) {
679679
taskCompleted = true
680680
console.log("Task completed:", id)
681681
}
682682
}
683-
api.on("taskCompleted", taskCompletedHandler)
683+
api.on(RooCodeEventName.TaskCompleted, taskCompletedHandler)
684684

685685
let taskId: string
686686
try {
@@ -742,9 +742,9 @@ Assume the file exists and you can modify it directly.`,
742742
console.log("Test passed! apply_diff tool executed and multiple search/replace blocks applied successfully")
743743
} finally {
744744
// Clean up
745-
api.off("message", messageHandler)
746-
api.off("taskStarted", taskStartedHandler)
747-
api.off("taskCompleted", taskCompletedHandler)
745+
api.off(RooCodeEventName.Message, messageHandler)
746+
api.off(RooCodeEventName.TaskStarted, taskStartedHandler)
747+
api.off(RooCodeEventName.TaskCompleted, taskCompletedHandler)
748748
}
749749
})
750750
})

0 commit comments

Comments
 (0)