From a74eda56cfcafb5c463a74df564ced6f882f8d3e Mon Sep 17 00:00:00 2001 From: Nate Sesti Date: Wed, 23 Aug 2023 17:15:09 -0700 Subject: fix: :lipstick: don't display entirety of large tracebacks --- continuedev/src/continuedev/plugins/context_providers/file.py | 2 ++ continuedev/src/continuedev/plugins/steps/core/core.py | 2 ++ continuedev/src/continuedev/plugins/steps/on_traceback.py | 9 ++++++++- 3 files changed, 12 insertions(+), 1 deletion(-) (limited to 'continuedev/src') diff --git a/continuedev/src/continuedev/plugins/context_providers/file.py b/continuedev/src/continuedev/plugins/context_providers/file.py index f4e6e374..a748379e 100644 --- a/continuedev/src/continuedev/plugins/context_providers/file.py +++ b/continuedev/src/continuedev/plugins/context_providers/file.py @@ -59,6 +59,8 @@ class FileContextProvider(ContextProvider): async def on_file_saved(filepath: str, contents: str): item = await self.get_context_item_for_filepath(filepath) + if item is None: + return await self.update_documents([item], self.sdk.ide.workspace_directory) async def on_files_created(filepaths: List[str]): diff --git a/continuedev/src/continuedev/plugins/steps/core/core.py b/continuedev/src/continuedev/plugins/steps/core/core.py index 3de76eaf..3ff1730e 100644 --- a/continuedev/src/continuedev/plugins/steps/core/core.py +++ b/continuedev/src/continuedev/plugins/steps/core/core.py @@ -898,6 +898,8 @@ class UserInputStep(Step): manage_own_chat_context: bool = True async def describe(self, models: Models) -> Coroutine[str, None, None]: + if self.description is not None: + return self.description return self.user_input async def run( diff --git a/continuedev/src/continuedev/plugins/steps/on_traceback.py b/continuedev/src/continuedev/plugins/steps/on_traceback.py index 86a0f499..9c663a66 100644 --- a/continuedev/src/continuedev/plugins/steps/on_traceback.py +++ b/continuedev/src/continuedev/plugins/steps/on_traceback.py @@ -44,9 +44,16 @@ class DefaultOnTracebackStep(Step): tb = parsed_tb break + tb_first_last_lines = ( + ("\n".join(tb.split("\n")[:3]) + "\n...\n" + "\n".join(tb.split("\n")[-3:])) + if len(tb.split("\n")) > 6 + else tb + ) + await sdk.run_step( UserInputStep( - user_input=f"""I got the following error, can you please help explain how to fix it?\n\n{tb}""" + description=f"""I got the following error, can you please help explain how to fix it?\n\n{tb_first_last_lines}""", + user_input=f"""I got the following error, can you please help explain how to fix it?\n\n{tb}""", ) ) await sdk.run_step(SimpleChatStep(name="Help With Traceback")) -- cgit v1.2.3-70-g09d2