(message: ClineMessage)
| 1041 | } |
| 1042 | |
| 1043 | private async addToClineMessages(message: ClineMessage) { |
| 1044 | this.clineMessages.push(message) |
| 1045 | const provider = this.providerRef.deref() |
| 1046 | // Avoid resending large, mostly-static fields (notably taskHistory) on every chat message update. |
| 1047 | // taskHistory is maintained in-memory in the webview and updated via taskHistoryItemUpdated. |
| 1048 | await provider?.postStateToWebviewWithoutTaskHistory() |
| 1049 | this.emit(RooCodeEventName.Message, { action: "created", message }) |
| 1050 | await this.saveClineMessages() |
| 1051 | |
| 1052 | const shouldCaptureMessage = message.partial !== true && CloudService.isEnabled() |
| 1053 | |
| 1054 | if (shouldCaptureMessage) { |
| 1055 | CloudService.instance.captureEvent({ |
| 1056 | event: TelemetryEventName.TASK_MESSAGE, |
| 1057 | properties: { taskId: this.taskId, message }, |
| 1058 | }) |
| 1059 | // Track that this message has been synced to cloud |
| 1060 | this.cloudSyncedMessageTimestamps.add(message.ts) |
| 1061 | } |
| 1062 | } |
| 1063 | |
| 1064 | public async overwriteClineMessages(newMessages: ClineMessage[]) { |
| 1065 | this.clineMessages = newMessages |
no test coverage detected