diff --git a/studio/backend/routes/chat_history.py b/studio/backend/routes/chat_history.py index b227431a27..3bb6bd0b93 100644 --- a/studio/backend/routes/chat_history.py +++ b/studio/backend/routes/chat_history.py @@ -672,9 +672,7 @@ async def record_import_ledger( @router.delete("") -async def clear_history( - request: Request, current_subject: str = Depends(get_current_subject) -): +async def clear_history(request: Request, current_subject: str = Depends(get_current_subject)): _cancel_active_research(request, [thread["id"] for thread in list_chat_threads()]) clear_chat_history() return {"status": "deleted"} diff --git a/studio/backend/routes/research_runs.py b/studio/backend/routes/research_runs.py index c3dfd48f17..087f889055 100644 --- a/studio/backend/routes/research_runs.py +++ b/studio/backend/routes/research_runs.py @@ -233,9 +233,7 @@ def _sanitize_config(payload: CreateResearchRun, thread: dict) -> dict: # container both evades the sensitive-key scan when its inner keys are unlisted (e.g. # {"kb_id": {"auth": "sk-..."}}) and would reach retrieval code that expects a scalar scope # id, so reject any non-scalar value outright. - non_scalar = any( - isinstance(value, (dict, list, tuple)) for value in rag_scope.values() - ) + non_scalar = any(isinstance(value, (dict, list, tuple)) for value in rag_scope.values()) if unknown_rag or non_scalar or _contains_sensitive_key(rag_scope): raise HTTPException(status_code = 400, detail = "Unsupported or sensitive ragScope field") budgets = { diff --git a/studio/backend/tests/test_research_runs_storage.py b/studio/backend/tests/test_research_runs_storage.py index 24f790122e..0364bfd2de 100644 --- a/studio/backend/tests/test_research_runs_storage.py +++ b/studio/backend/tests/test_research_runs_storage.py @@ -686,9 +686,7 @@ def test_delete_thread_cancels_active_research_run(research_home): cancelled: list[str] = [] request = SimpleNamespace( app = SimpleNamespace( - state = SimpleNamespace( - research_supervisor = SimpleNamespace(cancel = cancelled.append) - ) + state = SimpleNamespace(research_supervisor = SimpleNamespace(cancel = cancelled.append)) ) ) chat_history._cancel_active_research(request, ["thread-1"]) @@ -1265,13 +1263,16 @@ def test_planner_prompt_shields_untrusted_conversation(research_home, monkeypatc ) _create(user_message_id = "user-inj", assistant_message_id = None) - supervisor = worker.ResearchSupervisor( - SimpleNamespace(state = SimpleNamespace(server_port = 1)) - ) + supervisor = worker.ResearchSupervisor(SimpleNamespace(state = SimpleNamespace(server_port = 1))) captured: dict = {} async def fake_stream_completion( - run, messages, *, json_mode = False, report_progress = True, **kwargs + run, + messages, + *, + json_mode = False, + report_progress = True, + **kwargs, ): captured["planner"] = messages[1]["content"] return json.dumps(_plan()), "Planned.", "stop"