summaryrefslogtreecommitdiff
path: root/continuedev
diff options
context:
space:
mode:
Diffstat (limited to 'continuedev')
-rw-r--r--continuedev/src/continuedev/plugins/steps/main.py4
-rw-r--r--continuedev/src/continuedev/server/gui.py11
-rw-r--r--continuedev/src/continuedev/server/ide.py6
3 files changed, 18 insertions, 3 deletions
diff --git a/continuedev/src/continuedev/plugins/steps/main.py b/continuedev/src/continuedev/plugins/steps/main.py
index 0698f1ae..ab4fe948 100644
--- a/continuedev/src/continuedev/plugins/steps/main.py
+++ b/continuedev/src/continuedev/plugins/steps/main.py
@@ -239,14 +239,14 @@ def decode_escaped_path(path: str) -> str:
"""We use a custom escaping scheme to record the full path of a file as a
corresponding basename, but withut URL encoding, because then the URI just gets
interpreted as a full path again."""
- return path.replace("$forwardslash$", "/").replace("$backslash$", "\\")
+ return path.replace("$f$", "/").replace("$b$", "\\")
def encode_escaped_path(path: str) -> str:
"""We use a custom escaping scheme to record the full path of a file as a
corresponding basename, but withut URL encoding, because then the URI just gets
interpreted as a full path again."""
- return path.replace("/", "$forwardslash$").replace("\\", "$backslash$")
+ return path.replace("/", "$f$").replace("\\", "$b$")
class EditAlreadyEditedRangeStep(Step):
diff --git a/continuedev/src/continuedev/server/gui.py b/continuedev/src/continuedev/server/gui.py
index cc6bc911..26fcbd42 100644
--- a/continuedev/src/continuedev/server/gui.py
+++ b/continuedev/src/continuedev/server/gui.py
@@ -306,6 +306,17 @@ class GUIProtocolServer:
def add_model_for_role(self, role: str, model_class: str, model: Any):
models = self.session.autopilot.continue_sdk.config.models
+
+ model_copy = model.copy()
+ if "api_key" in model_copy:
+ del model_copy["api_key"]
+ if "hf_token" in model_copy:
+ del model_copy["hf_token"]
+ posthog_logger.capture_event(
+ "select_model_for_role",
+ {"role": role, "model_class": model_class, "model": model_copy},
+ )
+
if role == "*":
async def async_stuff():
diff --git a/continuedev/src/continuedev/server/ide.py b/continuedev/src/continuedev/server/ide.py
index 579c8f1d..1709503b 100644
--- a/continuedev/src/continuedev/server/ide.py
+++ b/continuedev/src/continuedev/server/ide.py
@@ -602,7 +602,11 @@ async def websocket_endpoint(websocket: WebSocket, session_id: str = None):
# Message handler
def handle_msg(msg):
- message = json.loads(msg)
+ try:
+ message = json.loads(msg)
+ except json.JSONDecodeError:
+ logger.critical(f"Error decoding json: {msg}")
+ return
if "messageType" not in message or "data" not in message:
return