summaryrefslogtreecommitdiff
path: root/continuedev/src
diff options
context:
space:
mode:
authorNate Sesti <sestinj@gmail.com>2023-07-02 13:02:59 -0700
committerNate Sesti <sestinj@gmail.com>2023-07-02 13:02:59 -0700
commit321ba3f949f1e9e39f5a73bba9bbca8739e62ecf (patch)
treed36b0e6c94d88b05949f84ce151e9cc64c2dee68 /continuedev/src
parenta86933aec5243584def582150bbba1a926be9fda (diff)
downloadsncontinue-321ba3f949f1e9e39f5a73bba9bbca8739e62ecf.tar.gz
sncontinue-321ba3f949f1e9e39f5a73bba9bbca8739e62ecf.tar.bz2
sncontinue-321ba3f949f1e9e39f5a73bba9bbca8739e62ecf.zip
track when suggestion is accepted or rejected
Diffstat (limited to 'continuedev/src')
-rw-r--r--continuedev/src/continuedev/server/ide.py9
-rw-r--r--continuedev/src/continuedev/server/ide_protocol.py2
2 files changed, 8 insertions, 3 deletions
diff --git a/continuedev/src/continuedev/server/ide.py b/continuedev/src/continuedev/server/ide.py
index e1f19447..1f790991 100644
--- a/continuedev/src/continuedev/server/ide.py
+++ b/continuedev/src/continuedev/server/ide.py
@@ -7,6 +7,7 @@ import uuid
from fastapi import WebSocket, Body, APIRouter
from uvicorn.main import Server
+from ..libs.util.telemetry import capture_event
from ..libs.util.queue import AsyncSubscriptionQueue
from ..models.filesystem import FileSystem, RangeInFile, EditDiff, RealFileSystem
from ..models.filesystem_edit import AddDirectory, AddFile, DeleteDirectory, DeleteFile, FileSystemEdit, FileEdit, FileEditWithFullContents, RenameDirectory, RenameFile, SequentialFileSystemEdit
@@ -142,6 +143,8 @@ class IdeProtocolServer(AbstractIdeProtocolServer):
elif message_type == "commandOutput":
output = data["output"]
self.onCommandOutput(output)
+ elif message_type == "acceptRejectSuggestion":
+ self.onAcceptRejectSuggestion(data["accepted"])
elif message_type in ["highlightedCode", "openFiles", "readFile", "editFile", "workspaceDirectory", "getUserSecret", "runCommand", "uniqueId"]:
self.sub_queue.post(message_type, data)
else:
@@ -202,8 +205,10 @@ class IdeProtocolServer(AbstractIdeProtocolServer):
# This is where you might have triggers: plugins can subscribe to certian events
# like file changes, tracebacks, etc...
- def onAcceptRejectSuggestion(self, suggestionId: str, accepted: bool):
- pass
+ def onAcceptRejectSuggestion(self, accepted: bool):
+ capture_event(self.unique_id, "accept_reject_suggestion", {
+ "accepted": accepted
+ })
def onFileSystemUpdate(self, update: FileSystemEdit):
# Access to Autopilot (so SessionManager)
diff --git a/continuedev/src/continuedev/server/ide_protocol.py b/continuedev/src/continuedev/server/ide_protocol.py
index d2dafa9a..7faf5563 100644
--- a/continuedev/src/continuedev/server/ide_protocol.py
+++ b/continuedev/src/continuedev/server/ide_protocol.py
@@ -36,7 +36,7 @@ class AbstractIdeProtocolServer(ABC):
"""Show suggestions to the user and wait for a response"""
@abstractmethod
- def onAcceptRejectSuggestion(self, suggestionId: str, accepted: bool):
+ def onAcceptRejectSuggestion(self, accepted: bool):
"""Called when the user accepts or rejects a suggestion"""
@abstractmethod